From d2b46d2ad83f0d2c44ab2424c9c8d8563d900b2a Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 28 May 2024 14:21:43 +0200 Subject: [PATCH 01/93] Add first tests on thermal heuristics --- tests/functional/test_heuristic.py | 540 +++++++++++++++++++++++++++++ 1 file changed, 540 insertions(+) create mode 100644 tests/functional/test_heuristic.py diff --git a/tests/functional/test_heuristic.py b/tests/functional/test_heuristic.py new file mode 100644 index 00000000..762900b0 --- /dev/null +++ b/tests/functional/test_heuristic.py @@ -0,0 +1,540 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest + +from andromede.expression import literal, param, var +from andromede.expression.expression import ExpressionRange, port_field +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.model import Model, ModelPort, float_parameter, float_variable, model +from andromede.model.model import PortFieldDefinition, PortFieldId +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable +from andromede.model.constraint import Constraint +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioIndex, + TimeScenarioSeriesData, + create_component, +) + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) + +THERMAL_CLUSTER_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_max", CONSTANT), + int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("nb_units_max") * param("p_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=literal(0), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + +THERMAL_CLUSTER_MODEL_LP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_max", CONSTANT), + int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("nb_units_max") * param("p_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_on", + lower_bound=literal(0), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + + +def test_milp_version() -> None: + """ + Model on 168 time steps with one thermal generation and one demand on a single node. + - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW + - Thermal generation is characterized with: + - P_min = 700 MW + - P_max = 1000 MW + - Min up time = 3 + - Min down time = 10 + - Generation cost = 50€ / MWh + - Startup cost = 50 + - Fixed cost = 1 /h + - Number of unit = 3 + - Unsupplied energy = 1000 €/MWh + - Spillage = 0 €/MWh + + The optimal solution consists in turning on two thermal plants at the begining, turning on a third thermal plant at the 13th hour and turning off the first thermal plant at the 14th hour, the other two thermal plants stay on for the rest of the week producing 1000MW each. At the 13th hour, the production is [700,700,700] to satisfy Pmin constraints. + + The optimal cost is then : + 50 x 2 x 1000 x 167 (prod step 1-12 and 14-168) + + 50 x 3 x 700 (prod step 13) + + 50 (start up step 13) + + 2 x 1 x 167 (fixed cost step 1-12 and 14-168) + + 3 x 1 (fixed cost step 13) + = 16 805 387 + """ + number_hours = 168 + + database = DataBase() + + database.add_data("G", "p_max", ConstantData(1000)) + database.add_data("G", "p_min", ConstantData(700)) + database.add_data("G", "cost", ConstantData(50)) + database.add_data("G", "startup_cost", ConstantData(50)) + database.add_data("G", "fixed_cost", ConstantData(1)) + database.add_data("G", "d_min_up", ConstantData(3)) + database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_max", ConstantData(3)) + database.add_data("G", "nb_failures", ConstantData(0)) + + database.add_data("U", "cost", ConstantData(1000)) + database.add_data("S", "cost", ConstantData(0)) + + demand_data = pd.DataFrame( + [[2000.0]] * number_hours, + index=[i for i in range(number_hours)], + columns=[0], + ) + demand_data.iloc[12, 0] = 2050.0 + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + status = problem.solver.Solve() + + assert status == problem.solver.OPTIMAL + assert problem.solver.Objective().Value() == 16805387 + + output = OutputValues(problem) + assert output.component("G").var("generation").value == [ + [ + pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_on").value == [ + [ + pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_start").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_stop").value == [ + [ + pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) + for time_step in range(number_hours) + ] + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + +def test_lp_version() -> None: + """ + Model on 168 time steps with one thermal generation and one demand on a single node. + - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW + - Thermal generation is characterized with: + - P_min = 700 MW + - P_max = 1000 MW + - Min up time = 3 + - Min down time = 10 + - Generation cost = 50€ / MWh + - Startup cost = 50 + - Fixed cost = 1 /h + - Number of unit = 3 + - Unsupplied energy = 1000 €/MWh + - Spillage = 0 €/MWh + + The optimal solution consists in producing exactly the demand at each hour. The number of on units is equal to the production divided by P_max. + + The optimal cost is then : + 50 x 2000 x 167 (prod step 1-12 and 14-168) + + 50 x 2050 (prod step 13) + + 2 x 1 x 168 (fixed cost step 1-12 and 14-168) + + 2050/1000 x 1 (fixed cost step 13) + = 16 802 838,05 + """ + number_hours = 168 + + database = DataBase() + + database.add_data("G", "p_max", ConstantData(1000)) + database.add_data("G", "p_min", ConstantData(700)) + database.add_data("G", "cost", ConstantData(50)) + database.add_data("G", "startup_cost", ConstantData(50)) + database.add_data("G", "fixed_cost", ConstantData(1)) + database.add_data("G", "d_min_up", ConstantData(3)) + database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_max", ConstantData(3)) + database.add_data("G", "nb_failures", ConstantData(0)) + + database.add_data("U", "cost", ConstantData(1000)) + database.add_data("S", "cost", ConstantData(0)) + + demand_data = pd.DataFrame( + [[2000.0]] * number_hours, + index=[i for i in range(number_hours)], + columns=[0], + ) + demand_data.iloc[12, 0] = 2050.0 + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + status = problem.solver.Solve() + + assert status == problem.solver.OPTIMAL + assert problem.solver.Objective().Value() == pytest.approx(16802838.05) + + output = OutputValues(problem) + assert output.component("G").var("generation").value == [ + [ + pytest.approx(2000.0) if time_step != 12 else 2050.0 + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_on").value == [ + [ + pytest.approx(2) if time_step != 12 else pytest.approx(2050 / 1000) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_start").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(0.05) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_stop").value == [ + [ + pytest.approx(0.0) if time_step != 13 else pytest.approx(0.05) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [pytest.approx(0.0)] * number_hours + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + +def test_accurate_heuristic() -> None: + """ + TODO + """ + problem_optimization_1 = create_problem_with_lower_bound_on_units_on() + status = problem_optimization_1.solver.Solve() + + assert status == problem_optimization_1.solver.OPTIMAL + + +def create_problem_with_lower_bound_on_units_on() -> OptimizationProblem: + number_hours = 168 + + database = DataBase() + + database.add_data("G", "p_max", ConstantData(1000)) + database.add_data("G", "p_min", ConstantData(700)) + database.add_data("G", "cost", ConstantData(50)) + database.add_data("G", "startup_cost", ConstantData(50)) + database.add_data("G", "fixed_cost", ConstantData(1)) + database.add_data("G", "d_min_up", ConstantData(3)) + database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_max", ConstantData(3)) + database.add_data("G", "nb_failures", ConstantData(0)) + + database.add_data("U", "cost", ConstantData(1000)) + database.add_data("S", "cost", ConstantData(0)) + + demand_data = pd.DataFrame( + [[2000.0]] * number_hours, + index=[i for i in range(number_hours)], + columns=[0], + ) + demand_data.iloc[12, 0] = 2050.0 + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem From 24700f445af9a17d6f17317f88af92ee1a9dfb1c Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 28 May 2024 15:32:20 +0200 Subject: [PATCH 02/93] Implement accurate heuristic on simple problem --- tests/functional/test_heuristic.py | 313 +++++++++++++++++------------ 1 file changed, 189 insertions(+), 124 deletions(-) diff --git a/tests/functional/test_heuristic.py b/tests/functional/test_heuristic.py index 762900b0..453d3199 100644 --- a/tests/functional/test_heuristic.py +++ b/tests/functional/test_heuristic.py @@ -12,6 +12,7 @@ import pandas as pd import pytest +import numpy as np from andromede.expression import literal, param, var from andromede.expression.expression import ExpressionRange, port_field @@ -45,6 +46,7 @@ TimeScenarioSeriesData, create_component, ) +from andromede.study.data import AbstractDataStructure CONSTANT = IndexingStructure(False, False) TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) @@ -61,6 +63,7 @@ float_parameter("cost", CONSTANT), float_parameter("startup_cost", CONSTANT), float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), int_parameter("nb_units_max", CONSTANT), int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), ], @@ -73,7 +76,7 @@ ), int_variable( "nb_on", - lower_bound=literal(0), + lower_bound=param("nb_units_min"), upper_bound=param("nb_units_max"), structure=ANTICIPATIVE_TIME_VARYING, ), @@ -143,6 +146,7 @@ float_parameter("cost", CONSTANT), float_parameter("startup_cost", CONSTANT), float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), int_parameter("nb_units_max", CONSTANT), int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), ], @@ -155,7 +159,7 @@ ), float_variable( "nb_on", - lower_bound=literal(0), + lower_bound=param("nb_units_min"), upper_bound=param("nb_units_max"), structure=ANTICIPATIVE_TIME_VARYING, ), @@ -216,6 +220,58 @@ ) +THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id="GEN", + parameters=[ + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + ], + variables=[ + float_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + constraints=[ + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), +) + + def test_milp_version() -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. @@ -244,63 +300,7 @@ def test_milp_version() -> None: """ number_hours = 168 - database = DataBase() - - database.add_data("G", "p_max", ConstantData(1000)) - database.add_data("G", "p_min", ConstantData(700)) - database.add_data("G", "cost", ConstantData(50)) - database.add_data("G", "startup_cost", ConstantData(50)) - database.add_data("G", "fixed_cost", ConstantData(1)) - database.add_data("G", "d_min_up", ConstantData(3)) - database.add_data("G", "d_min_down", ConstantData(10)) - database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "nb_failures", ConstantData(0)) - - database.add_data("U", "cost", ConstantData(1000)) - database.add_data("S", "cost", ConstantData(0)) - - demand_data = pd.DataFrame( - [[2000.0]] * number_hours, - index=[i for i in range(number_hours)], - columns=[0], - ) - demand_data.iloc[12, 0] = 2050.0 - - demand_time_scenario_series = TimeScenarioSeriesData(demand_data) - database.add_data("D", "demand", demand_time_scenario_series) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") - - network = Network("test") - network.add_node(node) - network.add_component(demand) - network.add_component(gen) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) + problem = create_simple_problem(ConstantData(0), number_hours, lp_relaxation=False) status = problem.solver.Solve() assert status == problem.solver.OPTIMAL @@ -366,71 +366,15 @@ def test_lp_version() -> None: + 50 x 2050 (prod step 13) + 2 x 1 x 168 (fixed cost step 1-12 and 14-168) + 2050/1000 x 1 (fixed cost step 13) - = 16 802 838,05 + + 0,05 x 50 (start up cost step 13) + = 16 802 840,55 """ number_hours = 168 - - database = DataBase() - - database.add_data("G", "p_max", ConstantData(1000)) - database.add_data("G", "p_min", ConstantData(700)) - database.add_data("G", "cost", ConstantData(50)) - database.add_data("G", "startup_cost", ConstantData(50)) - database.add_data("G", "fixed_cost", ConstantData(1)) - database.add_data("G", "d_min_up", ConstantData(3)) - database.add_data("G", "d_min_down", ConstantData(10)) - database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "nb_failures", ConstantData(0)) - - database.add_data("U", "cost", ConstantData(1000)) - database.add_data("S", "cost", ConstantData(0)) - - demand_data = pd.DataFrame( - [[2000.0]] * number_hours, - index=[i for i in range(number_hours)], - columns=[0], - ) - demand_data.iloc[12, 0] = 2050.0 - - demand_time_scenario_series = TimeScenarioSeriesData(demand_data) - database.add_data("D", "demand", demand_time_scenario_series) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") - - network = Network("test") - network.add_node(node) - network.add_component(demand) - network.add_component(gen) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) + problem = create_simple_problem(ConstantData(0), number_hours, lp_relaxation=True) status = problem.solver.Solve() assert status == problem.solver.OPTIMAL - assert problem.solver.Objective().Value() == pytest.approx(16802838.05) + assert problem.solver.Objective().Value() == pytest.approx(16802840.55) output = OutputValues(problem) assert output.component("G").var("generation").value == [ @@ -468,16 +412,96 @@ def test_lp_version() -> None: def test_accurate_heuristic() -> None: """ - TODO + Solve the same problem as before with the heuristic accurate of Antares """ - problem_optimization_1 = create_problem_with_lower_bound_on_units_on() + + number_hours = 168 + + problem_optimization_1 = create_simple_problem( + ConstantData(0), number_hours, lp_relaxation=False + ) status = problem_optimization_1.solver.Solve() assert status == problem_optimization_1.solver.OPTIMAL + output_1 = OutputValues(problem_optimization_1) + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil(np.round(np.array(output_1.component("G").var("nb_on").value), 12)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + for time_step in range(number_hours): + assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 + + problem_accurate_heuristic = create_problem_accurate_heuristic(n_guide) + status = problem_accurate_heuristic.solver.Solve() -def create_problem_with_lower_bound_on_units_on() -> OptimizationProblem: - number_hours = 168 + assert status == problem_accurate_heuristic.solver.OPTIMAL + + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil(np.array(output_heuristic.component("G").var("nb_on").value)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min = TimeScenarioSeriesData(nb_on_heuristic) + + for time_step in range(number_hours): + assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 + + problem_optimization_2 = create_simple_problem( + nb_on_min, number_hours, lp_relaxation=False + ) + status = problem_optimization_2.solver.Solve() + + assert status == problem_optimization_2.solver.OPTIMAL + assert problem_optimization_2.solver.Objective().Value() == 16805387 + + output = OutputValues(problem_optimization_2) + assert output.component("G").var("generation").value == [ + [ + pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_on").value == [ + [ + pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_start").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_stop").value == [ + [ + pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) + for time_step in range(number_hours) + ] + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + +def create_simple_problem( + lower_bound: AbstractDataStructure, number_hours: int, lp_relaxation: bool +) -> OptimizationProblem: database = DataBase() @@ -488,6 +512,7 @@ def create_problem_with_lower_bound_on_units_on() -> OptimizationProblem: database.add_data("G", "fixed_cost", ConstantData(1)) database.add_data("G", "d_min_up", ConstantData(3)) database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) database.add_data("G", "nb_failures", ConstantData(0)) @@ -510,7 +535,10 @@ def create_problem_with_lower_bound_on_units_on() -> OptimizationProblem: node = Node(model=NODE_BALANCE_MODEL, id="1") demand = create_component(model=DEMAND_MODEL, id="D") - gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + if lp_relaxation: + gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + else: + gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") spillage = create_component(model=SPILLAGE_MODEL, id="S") @@ -538,3 +566,40 @@ def create_problem_with_lower_bound_on_units_on() -> OptimizationProblem: ) return problem + + +def create_problem_accurate_heuristic( + lower_bound: AbstractDataStructure, +) -> OptimizationProblem: + number_hours = 168 + + database = DataBase() + + database.add_data("G", "p_max", ConstantData(1000)) + database.add_data("G", "p_min", ConstantData(700)) + database.add_data("G", "cost", ConstantData(50)) + database.add_data("G", "startup_cost", ConstantData(50)) + database.add_data("G", "fixed_cost", ConstantData(1)) + database.add_data("G", "d_min_up", ConstantData(3)) + database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_min", lower_bound) + database.add_data("G", "nb_units_max", ConstantData(3)) + database.add_data("G", "nb_failures", ConstantData(0)) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + + network = Network("test") + network.add_component(gen) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem From fd3a88480fdef4c2466b021918fc0d3074a4fb3d Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 28 May 2024 15:35:21 +0200 Subject: [PATCH 03/93] Add comments --- tests/functional/test_heuristic.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/functional/test_heuristic.py b/tests/functional/test_heuristic.py index 453d3199..840fba60 100644 --- a/tests/functional/test_heuristic.py +++ b/tests/functional/test_heuristic.py @@ -417,6 +417,7 @@ def test_accurate_heuristic() -> None: number_hours = 168 + # First optimization problem_optimization_1 = create_simple_problem( ConstantData(0), number_hours, lp_relaxation=False ) @@ -424,6 +425,7 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_1.solver.OPTIMAL + # Get number of on units and round it to integer output_1 = OutputValues(problem_optimization_1) nb_on_1 = pd.DataFrame( np.transpose( @@ -436,6 +438,7 @@ def test_accurate_heuristic() -> None: for time_step in range(number_hours): assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 + # Solve heuristic problem problem_accurate_heuristic = create_problem_accurate_heuristic(n_guide) status = problem_accurate_heuristic.solver.Solve() @@ -454,6 +457,7 @@ def test_accurate_heuristic() -> None: for time_step in range(number_hours): assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 + # Second optimization with lower bound modified problem_optimization_2 = create_simple_problem( nb_on_min, number_hours, lp_relaxation=False ) From 0a6d4df1cc6261fc440c688717419b4602f38343 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 31 May 2024 10:14:41 +0200 Subject: [PATCH 04/93] Add fast heuristic and improve accurate --- tests/functional/test_heuristic.py | 260 +++++++++++++++++++++++++++-- 1 file changed, 243 insertions(+), 17 deletions(-) diff --git a/tests/functional/test_heuristic.py b/tests/functional/test_heuristic.py index 840fba60..c8c89f81 100644 --- a/tests/functional/test_heuristic.py +++ b/tests/functional/test_heuristic.py @@ -13,6 +13,8 @@ import pandas as pd import pytest import numpy as np +from typing import List +from math import ceil, floor from andromede.expression import literal, param, var from andromede.expression.expression import ExpressionRange, port_field @@ -52,6 +54,7 @@ TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) THERMAL_CLUSTER_MODEL_MILP = model( id="GEN", @@ -219,13 +222,41 @@ .expec(), ) +THERMAL_CLUSTER_MODEL_FAST = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("cost", CONSTANT), + int_parameter("nb_units_max", CONSTANT), + float_parameter("mingen", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=param("mingen"), + upper_bound=param("nb_units_max") * param("p_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[], + objective_operational_contribution=(param("cost") * var("generation")) + .sum() + .expec(), +) + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( id="GEN", parameters=[ float_parameter("d_min_up", CONSTANT), float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), int_parameter("nb_units_max", CONSTANT), ], @@ -271,6 +302,26 @@ objective_operational_contribution=(var("nb_on")).sum().expec(), ) +BLOCK_MODEL_FAST_HEURISTIC = model( + id="GEN", + parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], + variables=[ + int_variable( + "t_ajust", + lower_bound=literal(0), + upper_bound=literal(1), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + "Choose one t ajust", + var("t_ajust").sum() == literal(1), + ) + ], + objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), +) + def test_milp_version() -> None: """ @@ -300,7 +351,9 @@ def test_milp_version() -> None: """ number_hours = 168 - problem = create_simple_problem(ConstantData(0), number_hours, lp_relaxation=False) + problem = create_simple_problem( + ConstantData(0), number_hours, lp_relaxation=False, fast=False + ) status = problem.solver.Solve() assert status == problem.solver.OPTIMAL @@ -370,7 +423,9 @@ def test_lp_version() -> None: = 16 802 840,55 """ number_hours = 168 - problem = create_simple_problem(ConstantData(0), number_hours, lp_relaxation=True) + problem = create_simple_problem( + ConstantData(0), number_hours, lp_relaxation=True, fast=False + ) status = problem.solver.Solve() assert status == problem.solver.OPTIMAL @@ -419,7 +474,7 @@ def test_accurate_heuristic() -> None: # First optimization problem_optimization_1 = create_simple_problem( - ConstantData(0), number_hours, lp_relaxation=False + ConstantData(0), number_hours, lp_relaxation=True, fast=False ) status = problem_optimization_1.solver.Solve() @@ -439,7 +494,9 @@ def test_accurate_heuristic() -> None: assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic(n_guide) + problem_accurate_heuristic = create_problem_accurate_heuristic( + n_guide, number_hours + ) status = problem_accurate_heuristic.solver.Solve() assert status == problem_accurate_heuristic.solver.OPTIMAL @@ -459,7 +516,7 @@ def test_accurate_heuristic() -> None: # Second optimization with lower bound modified problem_optimization_2 = create_simple_problem( - nb_on_min, number_hours, lp_relaxation=False + nb_on_min, number_hours, lp_relaxation=True, fast=False ) status = problem_optimization_2.solver.Solve() @@ -503,8 +560,100 @@ def test_accurate_heuristic() -> None: ] +def test_fast_heuristic() -> None: + """ + Solve the same problem as before with the heuristic fast of Antares + Model on 168 time steps with one thermal generation and one demand on a single node. + - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW + - Thermal generation is characterized with: + - P_min = 700 MW + - P_max = 1000 MW + - Min up time = 3 + - Min down time = 10 + - Generation cost = 50€ / MWh + - Startup cost = 50 + - Fixed cost = 1 /h + - Number of unit = 3 + - Unsupplied energy = 1000 €/MWh + - Spillage = 0 €/MWh + + The optimal solution consists in having 3 units turned on between time steps 10 and 19 with production equal to 2100 to respect pmin and 2 the rest of the time. + + The optimal cost is then : + 50 x 2000 x 158 (prod step 1-9 and 20-168) + + 50 x 2100 x 10 (prod step 10-19) + = 16 850 000 + """ + + number_hours = 168 + + # First optimization + problem_optimization_1 = create_simple_problem( + ConstantData(0), number_hours, lp_relaxation=True, fast=True + ) + status = problem_optimization_1.solver.Solve() + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units + output_1 = OutputValues(problem_optimization_1) + + # Solve heuristic problem + mingen_heuristic = create_problem_fast_heuristic( + output_1.component("G").var("generation").value, + number_hours, + ) + + mingen = TimeScenarioSeriesData(mingen_heuristic) + + for time_step in range(number_hours): + assert ( + mingen_heuristic.iloc[time_step, 0] == 3 * 700 + if time_step in [t for t in range(10, 20)] + else 2 * 700 + ) + + # Second optimization with lower bound modified + problem_optimization_2 = create_simple_problem( + mingen, number_hours, lp_relaxation=True, fast=True + ) + status = problem_optimization_2.solver.Solve() + + assert status == problem_optimization_2.solver.OPTIMAL + assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) + + output = OutputValues(problem_optimization_2) + assert output.component("G").var("generation").value == [ + [ + ( + pytest.approx(2100.0) + if time_step in [t for t in range(10, 20)] + else pytest.approx(2000.0) + ) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + ( + pytest.approx(100.0) + if time_step in [t for t in range(10, 20) if t != 12] + else (pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0)) + ) + for time_step in range(number_hours) + ] + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + def create_simple_problem( - lower_bound: AbstractDataStructure, number_hours: int, lp_relaxation: bool + lower_bound: AbstractDataStructure, + number_hours: int, + lp_relaxation: bool, + fast: bool, ) -> OptimizationProblem: database = DataBase() @@ -519,6 +668,7 @@ def create_simple_problem( database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) database.add_data("G", "nb_failures", ConstantData(0)) + database.add_data("G", "mingen", lower_bound) database.add_data("U", "cost", ConstantData(1000)) database.add_data("S", "cost", ConstantData(0)) @@ -539,7 +689,9 @@ def create_simple_problem( node = Node(model=NODE_BALANCE_MODEL, id="1") demand = create_component(model=DEMAND_MODEL, id="D") - if lp_relaxation: + if fast: + gen = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G") + elif lp_relaxation: gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") else: gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") @@ -573,27 +725,20 @@ def create_simple_problem( def create_problem_accurate_heuristic( - lower_bound: AbstractDataStructure, + lower_bound: AbstractDataStructure, number_hours: int ) -> OptimizationProblem: - number_hours = 168 database = DataBase() - database.add_data("G", "p_max", ConstantData(1000)) - database.add_data("G", "p_min", ConstantData(700)) - database.add_data("G", "cost", ConstantData(50)) - database.add_data("G", "startup_cost", ConstantData(50)) - database.add_data("G", "fixed_cost", ConstantData(1)) database.add_data("G", "d_min_up", ConstantData(3)) database.add_data("G", "d_min_down", ConstantData(10)) database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "nb_failures", ConstantData(0)) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 - gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + gen = create_component(model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id="G") network = Network("test") network.add_component(gen) @@ -607,3 +752,84 @@ def create_problem_accurate_heuristic( ) return problem + + +def create_problem_fast_heuristic( + lower_bound: List[List[float]], number_hours: int +) -> pd.DataFrame: + + delta = 10 + cost = pd.DataFrame( + np.zeros((delta + 1, 1)), + index=[i for i in range(delta + 1)], + columns=[0], + ) + n = np.zeros((number_hours, delta + 1, 1)) + for h in range(delta + 1): + cost_h = 0 + t = 0 + while t < number_hours: + if t < h: + n_k = max( + [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] + + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(number_hours - delta + h, number_hours) + ] + ) + cost_h += (h - 1) * n_k + n[0:h, h, 0] = n_k + t = h + else: + k = floor((t - h) / delta) * delta + h + n_k = max( + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(k, min(number_hours, k + delta)) + ] + ) + cost_h += delta * n_k + n[k : min(number_hours, k + delta), h, 0] = n_k + if t + delta < number_hours: + t += delta + else: + t = number_hours + cost.iloc[h, 0] = cost_h + + database = DataBase() + + database.add_data("G", "cost", TimeScenarioSeriesData(cost)) + + time_block = TimeBlock(1, [i for i in range(10)]) + scenarios = 1 + + gen = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="G") + + network = Network("test") + network.add_component(gen) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + status = problem.solver.Solve() + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + h = np.argmax(output_heuristic.component("G").var("t_ajust").value[0]) + mingen_heuristic = pd.DataFrame( + n[:, h, :] * 700, + index=[i for i in range(number_hours)], + columns=[0], + ) + + return mingen_heuristic + + +def convert_to_integer(x: float) -> int: + return ceil(round(x, 12)) From c703040b13cc880a89d29690c54a4ce889cb9944 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 31 May 2024 12:16:34 +0200 Subject: [PATCH 05/93] rename test heuristic --- .../{test_heuristic.py => test_heuristic_simple_case.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename tests/functional/{test_heuristic.py => test_heuristic_simple_case.py} (100%) diff --git a/tests/functional/test_heuristic.py b/tests/functional/test_heuristic_simple_case.py similarity index 100% rename from tests/functional/test_heuristic.py rename to tests/functional/test_heuristic_simple_case.py From 9db4b54e2c50b392d3ad02987190ba979f2aa38f Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 31 May 2024 16:03:30 +0200 Subject: [PATCH 06/93] Implement complex model --- .../functional/test_heuristic_complex_case.py | 952 ++++++++++++++++++ 1 file changed, 952 insertions(+) create mode 100644 tests/functional/test_heuristic_complex_case.py diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py new file mode 100644 index 00000000..9f825bb0 --- /dev/null +++ b/tests/functional/test_heuristic_complex_case.py @@ -0,0 +1,952 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest +import numpy as np +from typing import List, Union +from math import ceil, floor +import ortools.linear_solver.pywraplp as pywraplp + +from andromede.expression import literal, param, var +from andromede.expression.expression import ExpressionRange, port_field +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.model import Model, ModelPort, float_parameter, float_variable, model +from andromede.model.model import PortFieldDefinition, PortFieldId +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable +from andromede.model.constraint import Constraint +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioIndex, + TimeScenarioSeriesData, + create_component, +) +from andromede.study.data import AbstractDataStructure + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) + +THERMAL_CLUSTER_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + float_parameter("failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("failures"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + +THERMAL_CLUSTER_MODEL_LP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + float_parameter("failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("failures"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + +THERMAL_CLUSTER_MODEL_FAST = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("cost", CONSTANT), + int_parameter("nb_units_max", CONSTANT), + float_parameter("mingen", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=param("mingen"), + upper_bound=param("nb_units_max") * param("p_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[], + objective_operational_contribution=(param("cost") * var("generation")) + .sum() + .expec(), +) + + +THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id="GEN", + parameters=[ + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + ], + variables=[ + float_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + constraints=[ + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), +) + +BLOCK_MODEL_FAST_HEURISTIC = model( + id="GEN", + parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], + variables=[ + int_variable( + "t_ajust", + lower_bound=literal(0), + upper_bound=literal(1), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + "Choose one t ajust", + var("t_ajust").sum() == literal(1), + ) + ], + objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), +) + + +def test_milp_version() -> None: + """ """ + number_hours = 168 + + problem = create_complex_problem( + ConstantData(0), number_hours, lp_relaxation=False, fast=False + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output = OutputValues(problem) + assert sum(output.component("G1").var("generation").value[0]) == pytest.approx( + 60670 + ) + assert sum(output.component("G1").var("nb_on").value[0]) == pytest.approx(168) + + assert sum(output.component("G2").var("generation").value[0]) == pytest.approx(6650) + assert sum(output.component("G2").var("nb_on").value[0]) == pytest.approx(83) + + assert sum(output.component("G3").var("generation").value[0]) == pytest.approx( + 60154 + ) + assert sum(output.component("G3").var("nb_on").value[0]) == pytest.approx(315) + + assert sum(output.component("S").var("spillage").value[0]) == pytest.approx(1427) + assert sum( + output.component("U").var("unsupplied_energy").value[0] + ) == pytest.approx(6529) + + assert problem.solver.Objective().Value() == pytest.approx( + 79107845 - 24501 * 3 - 1 - 100500 + ) + + +def test_accurate_heuristic() -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares + """ + + number_hours = 168 + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + + # First optimization + problem_optimization_1 = create_complex_problem( + ConstantData(0), number_hours, lp_relaxation=True, fast=False + ) + status = problem_optimization_1.solver.Solve(parameters) + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units and round it to integer + output_1 = OutputValues(problem_optimization_1) + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil(np.round(np.array(output_1.component("G").var("nb_on").value), 12)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + for time_step in range(number_hours): + assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 + + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + n_guide, number_hours + ) + status = problem_accurate_heuristic.solver.Solve(parameters) + + assert status == problem_accurate_heuristic.solver.OPTIMAL + + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil(np.array(output_heuristic.component("G").var("nb_on").value)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min = TimeScenarioSeriesData(nb_on_heuristic) + + for time_step in range(number_hours): + assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + nb_on_min, number_hours, lp_relaxation=True, fast=False + ) + status = problem_optimization_2.solver.Solve(parameters) + + assert status == problem_optimization_2.solver.OPTIMAL + assert problem_optimization_2.solver.Objective().Value() == 16805387 + + output = OutputValues(problem_optimization_2) + assert output.component("G").var("generation").value == [ + [ + pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_on").value == [ + [ + pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_start").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + assert output.component("G").var("nb_stop").value == [ + [ + pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) + for time_step in range(number_hours) + ] + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + +def test_fast_heuristic() -> None: + """ + Solve the same problem as before with the heuristic fast of Antares + Model on 168 time steps with one thermal generation and one demand on a single node. + - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW + - Thermal generation is characterized with: + - P_min = 700 MW + - P_max = 1000 MW + - Min up time = 3 + - Min down time = 10 + - Generation cost = 50€ / MWh + - Startup cost = 50 + - Fixed cost = 1 /h + - Number of unit = 3 + - Unsupplied energy = 1000 €/MWh + - Spillage = 0 €/MWh + + The optimal solution consists in having 3 units turned on between time steps 10 and 19 with production equal to 2100 to respect pmin and 2 the rest of the time. + + The optimal cost is then : + 50 x 2000 x 158 (prod step 1-9 and 20-168) + + 50 x 2100 x 10 (prod step 10-19) + = 16 850 000 + """ + + number_hours = 168 + + # First optimization + problem_optimization_1 = create_complex_problem( + ConstantData(0), number_hours, lp_relaxation=True, fast=True + ) + status = problem_optimization_1.solver.Solve() + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units + output_1 = OutputValues(problem_optimization_1) + + # Solve heuristic problem + mingen_heuristic = create_problem_fast_heuristic( + output_1.component("G").var("generation").value, + number_hours, + ) + + mingen = TimeScenarioSeriesData(mingen_heuristic) + + for time_step in range(number_hours): + assert ( + mingen_heuristic.iloc[time_step, 0] == 3 * 700 + if time_step in [t for t in range(10, 20)] + else 2 * 700 + ) + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + mingen, number_hours, lp_relaxation=True, fast=True + ) + status = problem_optimization_2.solver.Solve() + + assert status == problem_optimization_2.solver.OPTIMAL + assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) + + output = OutputValues(problem_optimization_2) + assert output.component("G").var("generation").value == [ + [ + ( + pytest.approx(2100.0) + if time_step in [t for t in range(10, 20)] + else pytest.approx(2000.0) + ) + for time_step in range(number_hours) + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + ( + pytest.approx(100.0) + if time_step in [t for t in range(10, 20) if t != 12] + else (pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0)) + ) + for time_step in range(number_hours) + ] + ] + assert output.component("U").var("unsupplied_energy").value == [ + [pytest.approx(0.0)] * number_hours + ] + + +def create_complex_problem( + lower_bound: AbstractDataStructure, + number_hours: int, + lp_relaxation: bool, + fast: bool, +) -> OptimizationProblem: + + database = DataBase() + + database.add_data("G1", "p_max", ConstantData(410)) + database.add_data("G1", "p_min", ConstantData(180)) + database.add_data("G1", "cost", ConstantData(96)) + database.add_data("G1", "startup_cost", ConstantData(100500)) + database.add_data("G1", "fixed_cost", ConstantData(1)) + database.add_data("G1", "d_min_up", ConstantData(8)) + database.add_data("G1", "d_min_down", ConstantData(8)) + database.add_data("G1", "nb_units_min", lower_bound) + database.add_data("G1", "nb_units_max", ConstantData(1)) + database.add_data("G1", "failures", ConstantData(410)) + database.add_data("G1", "mingen", lower_bound) + + database.add_data("G2", "p_max", ConstantData(90)) + database.add_data("G2", "p_min", ConstantData(60)) + database.add_data("G2", "cost", ConstantData(137)) + database.add_data("G2", "startup_cost", ConstantData(24500)) + database.add_data("G2", "fixed_cost", ConstantData(1)) + database.add_data("G2", "d_min_up", ConstantData(11)) + database.add_data("G2", "d_min_down", ConstantData(11)) + database.add_data("G2", "nb_units_min", lower_bound) + database.add_data("G2", "nb_units_max", ConstantData(3)) + database.add_data("G2", "failures", ConstantData(270)) + database.add_data("G2", "mingen", lower_bound) + + failures_3 = pd.DataFrame( + np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), + index=[i for i in range(number_hours)], + columns=[0], + ) + + database.add_data("G3", "p_max", ConstantData(275)) + database.add_data("G3", "p_min", ConstantData(150)) + database.add_data("G3", "cost", ConstantData(107)) + database.add_data("G3", "startup_cost", ConstantData(69500)) + database.add_data("G3", "fixed_cost", ConstantData(1)) + database.add_data("G3", "d_min_up", ConstantData(9)) + database.add_data("G3", "d_min_down", ConstantData(9)) + database.add_data("G3", "nb_units_min", lower_bound) + database.add_data("G3", "nb_units_max", ConstantData(4)) + database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) + database.add_data("G3", "mingen", lower_bound) + + database.add_data("U", "cost", ConstantData(10000)) + database.add_data("S", "cost", ConstantData(1)) + + demand_data = pd.DataFrame( + [ + 672, + 599, + 568, + 548, + 553, + 592, + 672, + 798, + 912, + 985, + 1039, + 1049, + 1030, + 1018, + 1000, + 1001, + 1054, + 1111, + 1071, + 1019, + 987, + 966, + 922, + 831, + 802, + 790, + 810, + 804, + 800, + 826, + 895, + 998, + 1072, + 1103, + 1096, + 1083, + 1057, + 1050, + 1047, + 1036, + 1069, + 1115, + 1092, + 1070, + 1063, + 1051, + 983, + 892, + 749, + 703, + 700, + 700, + 745, + 860, + 1052, + 1229, + 1337, + 1353, + 1323, + 1312, + 1308, + 1361, + 1375, + 1403, + 1452, + 1541, + 1559, + 1528, + 1446, + 1335, + 1205, + 1050, + 920, + 824, + 767, + 744, + 759, + 857, + 1033, + 1169, + 1243, + 1244, + 1232, + 1215, + 1199, + 1253, + 1271, + 1301, + 1361, + 1469, + 1505, + 1471, + 1383, + 1271, + 1172, + 1028, + 922, + 843, + 813, + 809, + 837, + 936, + 1118, + 1278, + 1382, + 1410, + 1400, + 1385, + 1372, + 1425, + 1444, + 1454, + 1503, + 1593, + 1615, + 1584, + 1501, + 1378, + 1250, + 1061, + 852, + 745, + 682, + 631, + 617, + 676, + 830, + 1004, + 1128, + 1163, + 1145, + 1109, + 1083, + 1127, + 1136, + 1157, + 1215, + 1302, + 1285, + 1232, + 1169, + 1112, + 1030, + 950, + 1038, + 893, + 761, + 718, + 718, + 761, + 850, + 1035, + 1204, + 1275, + 1228, + 1186, + 1156, + 1206, + 1234, + 1259, + 1354, + 1469, + 1484, + 1460, + 1404, + 1339, + 1248, + 1085, + ], + index=[i for i in range(number_hours)], + columns=[0], + ) + demand_data[0] = demand_data[0] - 300 + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + if fast: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") + elif lp_relaxation: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") + else: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen1) + network.add_component(gen2) + network.add_component(gen3) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + return problem + + +def create_problem_accurate_heuristic( + lower_bound: AbstractDataStructure, number_hours: int +) -> OptimizationProblem: + + database = DataBase() + + database.add_data("G", "d_min_up", ConstantData(3)) + database.add_data("G", "d_min_down", ConstantData(10)) + database.add_data("G", "nb_units_min", lower_bound) + database.add_data("G", "nb_units_max", ConstantData(3)) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + gen = create_component(model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id="G") + + network = Network("test") + network.add_component(gen) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem + + +def create_problem_fast_heuristic( + lower_bound: List[List[float]], number_hours: int +) -> pd.DataFrame: + + delta = 10 + cost = pd.DataFrame( + np.zeros((delta + 1, 1)), + index=[i for i in range(delta + 1)], + columns=[0], + ) + n = np.zeros((number_hours, delta + 1, 1)) + for h in range(delta + 1): + cost_h = 0 + t = 0 + while t < number_hours: + if t < h: + n_k = max( + [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] + + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(number_hours - delta + h, number_hours) + ] + ) + cost_h += (h - 1) * n_k + n[0:h, h, 0] = n_k + t = h + else: + k = floor((t - h) / delta) * delta + h + n_k = max( + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(k, min(number_hours, k + delta)) + ] + ) + cost_h += delta * n_k + n[k : min(number_hours, k + delta), h, 0] = n_k + if t + delta < number_hours: + t += delta + else: + t = number_hours + cost.iloc[h, 0] = cost_h + + database = DataBase() + + database.add_data("G", "cost", TimeScenarioSeriesData(cost)) + + time_block = TimeBlock(1, [i for i in range(10)]) + scenarios = 1 + + gen = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="G") + + network = Network("test") + network.add_component(gen) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + status = problem.solver.Solve() + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + h = np.argmax(output_heuristic.component("G").var("t_ajust").value[0]) + mingen_heuristic = pd.DataFrame( + n[:, h, :] * 700, + index=[i for i in range(number_hours)], + columns=[0], + ) + + return mingen_heuristic + + +def convert_to_integer(x: float) -> int: + return ceil(round(x, 12)) From 83360de3f64dfc9a91feb1205fc1404e54ea8a59 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 31 May 2024 16:23:06 +0200 Subject: [PATCH 07/93] Accurate for complex model --- .../functional/test_heuristic_complex_case.py | 190 ++++++++++-------- 1 file changed, 109 insertions(+), 81 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 9f825bb0..6cca83fe 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -13,7 +13,7 @@ import pandas as pd import pytest import numpy as np -from typing import List, Union +from typing import List, Dict from math import ceil, floor import ortools.linear_solver.pywraplp as pywraplp @@ -329,7 +329,10 @@ def test_milp_version() -> None: number_hours = 168 problem = create_complex_problem( - ConstantData(0), number_hours, lp_relaxation=False, fast=False + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, ) parameters = pywraplp.MPSolverParameters() @@ -361,9 +364,7 @@ def test_milp_version() -> None: output.component("U").var("unsupplied_energy").value[0] ) == pytest.approx(6529) - assert problem.solver.Objective().Value() == pytest.approx( - 79107845 - 24501 * 3 - 1 - 100500 - ) + assert problem.solver.Objective().Value() == pytest.approx(78933841) def test_accurate_heuristic() -> None: @@ -381,7 +382,10 @@ def test_accurate_heuristic() -> None: # First optimization problem_optimization_1 = create_complex_problem( - ConstantData(0), number_hours, lp_relaxation=True, fast=False + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=False, ) status = problem_optimization_1.solver.Solve(parameters) @@ -389,37 +393,36 @@ def test_accurate_heuristic() -> None: # Get number of on units and round it to integer output_1 = OutputValues(problem_optimization_1) - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil(np.round(np.array(output_1.component("G").var("nb_on").value), 12)) - ), - index=[i for i in range(number_hours)], - columns=[0], - ) - n_guide = TimeScenarioSeriesData(nb_on_1) - for time_step in range(number_hours): - assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 - - # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - n_guide, number_hours - ) - status = problem_accurate_heuristic.solver.Solve(parameters) + nb_on_min = {} + for g in ["G1", "G2", "G3"]: + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round(np.array(output_1.component(g).var("nb_on").value), 12) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) - assert status == problem_accurate_heuristic.solver.OPTIMAL + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + {g: n_guide}, number_hours, thermal_cluster=g + ) + status = problem_accurate_heuristic.solver.Solve(parameters) - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil(np.array(output_heuristic.component("G").var("nb_on").value)) - ), - index=[i for i in range(number_hours)], - columns=[0], - ) - nb_on_min = TimeScenarioSeriesData(nb_on_heuristic) + assert status == problem_accurate_heuristic.solver.OPTIMAL - for time_step in range(number_hours): - assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil(np.array(output_heuristic.component(g).var("nb_on").value)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) # Second optimization with lower bound modified problem_optimization_2 = create_complex_problem( @@ -428,43 +431,26 @@ def test_accurate_heuristic() -> None: status = problem_optimization_2.solver.Solve(parameters) assert status == problem_optimization_2.solver.OPTIMAL - assert problem_optimization_2.solver.Objective().Value() == 16805387 + assert problem_optimization_2.solver.Objective().Value() == 78996726 output = OutputValues(problem_optimization_2) - assert output.component("G").var("generation").value == [ - [ - pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_on").value == [ - [ - pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_start").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_stop").value == [ - [ - pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] + assert sum(output.component("G1").var("generation").value[0]) == pytest.approx( + 60625 + ) + assert sum(output.component("G1").var("nb_on").value[0]) == pytest.approx(168) - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) - for time_step in range(number_hours) - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + assert sum(output.component("G2").var("generation").value[0]) == pytest.approx(5730) + assert sum(output.component("G2").var("nb_on").value[0]) == pytest.approx(68) + + assert sum(output.component("G3").var("generation").value[0]) == pytest.approx( + 61119 + ) + assert sum(output.component("G3").var("nb_on").value[0]) == pytest.approx(320) + + assert sum(output.component("S").var("spillage").value[0]) == pytest.approx(1427) + assert sum( + output.component("U").var("unsupplied_energy").value[0] + ) == pytest.approx(6529) def test_fast_heuristic() -> None: @@ -557,7 +543,7 @@ def test_fast_heuristic() -> None: def create_complex_problem( - lower_bound: AbstractDataStructure, + lower_bound: Dict[str, AbstractDataStructure], number_hours: int, lp_relaxation: bool, fast: bool, @@ -572,10 +558,10 @@ def create_complex_problem( database.add_data("G1", "fixed_cost", ConstantData(1)) database.add_data("G1", "d_min_up", ConstantData(8)) database.add_data("G1", "d_min_down", ConstantData(8)) - database.add_data("G1", "nb_units_min", lower_bound) + database.add_data("G1", "nb_units_min", lower_bound["G1"]) database.add_data("G1", "nb_units_max", ConstantData(1)) database.add_data("G1", "failures", ConstantData(410)) - database.add_data("G1", "mingen", lower_bound) + database.add_data("G1", "mingen", lower_bound["G1"]) database.add_data("G2", "p_max", ConstantData(90)) database.add_data("G2", "p_min", ConstantData(60)) @@ -584,10 +570,10 @@ def create_complex_problem( database.add_data("G2", "fixed_cost", ConstantData(1)) database.add_data("G2", "d_min_up", ConstantData(11)) database.add_data("G2", "d_min_down", ConstantData(11)) - database.add_data("G2", "nb_units_min", lower_bound) + database.add_data("G2", "nb_units_min", lower_bound["G2"]) database.add_data("G2", "nb_units_max", ConstantData(3)) database.add_data("G2", "failures", ConstantData(270)) - database.add_data("G2", "mingen", lower_bound) + database.add_data("G2", "mingen", lower_bound["G2"]) failures_3 = pd.DataFrame( np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), @@ -602,10 +588,10 @@ def create_complex_problem( database.add_data("G3", "fixed_cost", ConstantData(1)) database.add_data("G3", "d_min_up", ConstantData(9)) database.add_data("G3", "d_min_down", ConstantData(9)) - database.add_data("G3", "nb_units_min", lower_bound) + database.add_data("G3", "nb_units_min", lower_bound["G3"]) database.add_data("G3", "nb_units_max", ConstantData(4)) database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) - database.add_data("G3", "mingen", lower_bound) + database.add_data("G3", "mingen", lower_bound["G3"]) database.add_data("U", "cost", ConstantData(10000)) database.add_data("S", "cost", ConstantData(1)) @@ -842,20 +828,62 @@ def create_complex_problem( def create_problem_accurate_heuristic( - lower_bound: AbstractDataStructure, number_hours: int + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + thermal_cluster: str, ) -> OptimizationProblem: database = DataBase() - database.add_data("G", "d_min_up", ConstantData(3)) - database.add_data("G", "d_min_down", ConstantData(10)) - database.add_data("G", "nb_units_min", lower_bound) - database.add_data("G", "nb_units_max", ConstantData(3)) + if thermal_cluster == "G1": + database.add_data("G1", "p_max", ConstantData(410)) + database.add_data("G1", "p_min", ConstantData(180)) + database.add_data("G1", "cost", ConstantData(96)) + database.add_data("G1", "startup_cost", ConstantData(100500)) + database.add_data("G1", "fixed_cost", ConstantData(1)) + database.add_data("G1", "d_min_up", ConstantData(8)) + database.add_data("G1", "d_min_down", ConstantData(8)) + database.add_data("G1", "nb_units_min", lower_bound["G1"]) + database.add_data("G1", "nb_units_max", ConstantData(1)) + database.add_data("G1", "failures", ConstantData(410)) + database.add_data("G1", "mingen", lower_bound["G1"]) + elif thermal_cluster == "G2": + database.add_data("G2", "p_max", ConstantData(90)) + database.add_data("G2", "p_min", ConstantData(60)) + database.add_data("G2", "cost", ConstantData(137)) + database.add_data("G2", "startup_cost", ConstantData(24500)) + database.add_data("G2", "fixed_cost", ConstantData(1)) + database.add_data("G2", "d_min_up", ConstantData(11)) + database.add_data("G2", "d_min_down", ConstantData(11)) + database.add_data("G2", "nb_units_min", lower_bound["G2"]) + database.add_data("G2", "nb_units_max", ConstantData(3)) + database.add_data("G2", "failures", ConstantData(270)) + database.add_data("G2", "mingen", lower_bound["G2"]) + elif thermal_cluster == "G3": + failures_3 = pd.DataFrame( + np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), + index=[i for i in range(number_hours)], + columns=[0], + ) + + database.add_data("G3", "p_max", ConstantData(275)) + database.add_data("G3", "p_min", ConstantData(150)) + database.add_data("G3", "cost", ConstantData(107)) + database.add_data("G3", "startup_cost", ConstantData(69500)) + database.add_data("G3", "fixed_cost", ConstantData(1)) + database.add_data("G3", "d_min_up", ConstantData(9)) + database.add_data("G3", "d_min_down", ConstantData(9)) + database.add_data("G3", "nb_units_min", lower_bound["G3"]) + database.add_data("G3", "nb_units_max", ConstantData(4)) + database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) + database.add_data("G3", "mingen", lower_bound["G3"]) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 - gen = create_component(model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id="G") + gen = create_component( + model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id=thermal_cluster + ) network = Network("test") network.add_component(gen) From bde9904e7a9f03b39291b9501c0487c0bc1440a7 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 4 Jun 2024 13:42:40 +0200 Subject: [PATCH 08/93] Type errors and useless solver parameters --- .../functional/test_heuristic_complex_case.py | 93 +++++++++++-------- .../functional/test_heuristic_simple_case.py | 6 +- 2 files changed, 60 insertions(+), 39 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 6cca83fe..08773a65 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -47,6 +47,8 @@ PortRef, TimeScenarioIndex, TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, create_component, ) from andromede.study.data import AbstractDataStructure @@ -338,30 +340,38 @@ def test_milp_version() -> None: parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) status = problem.solver.Solve(parameters) assert status == problem.solver.OPTIMAL output = OutputValues(problem) - assert sum(output.component("G1").var("generation").value[0]) == pytest.approx( - 60670 - ) - assert sum(output.component("G1").var("nb_on").value[0]) == pytest.approx(168) - - assert sum(output.component("G2").var("generation").value[0]) == pytest.approx(6650) - assert sum(output.component("G2").var("nb_on").value[0]) == pytest.approx(83) - - assert sum(output.component("G3").var("generation").value[0]) == pytest.approx( - 60154 - ) - assert sum(output.component("G3").var("nb_on").value[0]) == pytest.approx(315) - - assert sum(output.component("S").var("spillage").value[0]) == pytest.approx(1427) - assert sum( - output.component("U").var("unsupplied_energy").value[0] + assert sum( # type:ignore + output.component("G1").var("generation").value[0] # type:ignore + ) == pytest.approx(60670) + assert sum( # type:ignore + output.component("G1").var("nb_on").value[0] # type:ignore + ) == pytest.approx(168) + + assert sum( # type:ignore + output.component("G2").var("generation").value[0] # type:ignore + ) == pytest.approx(6650) + assert sum( # type:ignore + output.component("G2").var("nb_on").value[0] # type:ignore + ) == pytest.approx(83) + + assert sum( # type:ignore + output.component("G3").var("generation").value[0] # type:ignore + ) == pytest.approx(60154) + assert sum( # type:ignore + output.component("G3").var("nb_on").value[0] # type:ignore + ) == pytest.approx(315) + + assert sum( # type:ignore + output.component("S").var("spillage").value[0] # type:ignore + ) == pytest.approx(1427) + assert sum( # type:ignore + output.component("U").var("unsupplied_energy").value[0] # type:ignore ) == pytest.approx(6529) assert problem.solver.Objective().Value() == pytest.approx(78933841) @@ -377,8 +387,6 @@ def test_accurate_heuristic() -> None: parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) # First optimization problem_optimization_1 = create_complex_problem( @@ -393,7 +401,7 @@ def test_accurate_heuristic() -> None: # Get number of on units and round it to integer output_1 = OutputValues(problem_optimization_1) - nb_on_min = {} + nb_on_min: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: nb_on_1 = pd.DataFrame( np.transpose( @@ -434,22 +442,32 @@ def test_accurate_heuristic() -> None: assert problem_optimization_2.solver.Objective().Value() == 78996726 output = OutputValues(problem_optimization_2) - assert sum(output.component("G1").var("generation").value[0]) == pytest.approx( - 60625 - ) - assert sum(output.component("G1").var("nb_on").value[0]) == pytest.approx(168) - - assert sum(output.component("G2").var("generation").value[0]) == pytest.approx(5730) - assert sum(output.component("G2").var("nb_on").value[0]) == pytest.approx(68) - - assert sum(output.component("G3").var("generation").value[0]) == pytest.approx( - 61119 - ) - assert sum(output.component("G3").var("nb_on").value[0]) == pytest.approx(320) - - assert sum(output.component("S").var("spillage").value[0]) == pytest.approx(1427) - assert sum( - output.component("U").var("unsupplied_energy").value[0] + assert sum( # type:ignore + output.component("G1").var("generation").value[0] # type:ignore + ) == pytest.approx(60625) + assert sum( # type:ignore + output.component("G1").var("nb_on").value[0] # type:ignore + ) == pytest.approx(168) + + assert sum( # type:ignore + output.component("G2").var("generation").value[0] # type:ignore + ) == pytest.approx(5730) + assert sum( # type:ignore + output.component("G2").var("nb_on").value[0] # type:ignore + ) == pytest.approx(68) + + assert sum( # type:ignore + output.component("G3").var("generation").value[0] # type:ignore + ) == pytest.approx(61119) + assert sum( # type:ignore + output.component("G3").var("nb_on").value[0] # type:ignore + ) == pytest.approx(320) + + assert sum( # type:ignore + output.component("S").var("spillage").value[0] # type:ignore + ) == pytest.approx(1427) + assert sum( # type:ignore + output.component("U").var("unsupplied_energy").value[0] # type:ignore ) == pytest.approx(6529) @@ -894,6 +912,7 @@ def create_problem_accurate_heuristic( time_block, scenarios, border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", ) return problem diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index c8c89f81..fc549e3c 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -600,7 +600,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen_heuristic = create_problem_fast_heuristic( - output_1.component("G").var("generation").value, + output_1.component("G").var("generation").value, # type:ignore number_hours, ) @@ -821,7 +821,9 @@ def create_problem_fast_heuristic( assert status == problem.solver.OPTIMAL output_heuristic = OutputValues(problem) - h = np.argmax(output_heuristic.component("G").var("t_ajust").value[0]) + h = np.argmax( + output_heuristic.component("G").var("t_ajust").value[0] # type:ignore + ) mingen_heuristic = pd.DataFrame( n[:, h, :] * 700, index=[i for i in range(number_hours)], From 4bfd6964e63c199d2922417a58aa6e7da89231d9 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 4 Jun 2024 16:07:04 +0200 Subject: [PATCH 09/93] check hourly outputs --- .../accurate/details-hourly.txt | 175 ++++++++++++++++++ .../accurate/values-hourly.txt | 175 ++++++++++++++++++ .../data_complex_case/fast/details-hourly.txt | 175 ++++++++++++++++++ .../data_complex_case/fast/values-hourly.txt | 175 ++++++++++++++++++ .../data_complex_case/milp/details-hourly.txt | 175 ++++++++++++++++++ .../data_complex_case/milp/values-hourly.txt | 175 ++++++++++++++++++ .../functional/test_heuristic_complex_case.py | 125 +++++++------ 7 files changed, 1119 insertions(+), 56 deletions(-) create mode 100644 tests/functional/data_complex_case/accurate/details-hourly.txt create mode 100644 tests/functional/data_complex_case/accurate/values-hourly.txt create mode 100644 tests/functional/data_complex_case/fast/details-hourly.txt create mode 100644 tests/functional/data_complex_case/fast/values-hourly.txt create mode 100644 tests/functional/data_complex_case/milp/details-hourly.txt create mode 100644 tests/functional/data_complex_case/milp/values-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/details-hourly.txt b/tests/functional/data_complex_case/accurate/details-hourly.txt new file mode 100644 index 00000000..f04634bd --- /dev/null +++ b/tests/functional/data_complex_case/accurate/details-hourly.txt @@ -0,0 +1,175 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 168 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 222 0 150 0 1 0 1 0 1 0 1 0 + 2 01 JAN 01:00 180 0 150 0 1 0 1 0 1 0 1 0 + 3 01 JAN 02:00 180 0 150 0 1 0 1 0 1 0 1 0 + 4 01 JAN 03:00 180 0 150 0 1 0 1 0 1 0 1 0 + 5 01 JAN 04:00 180 0 150 0 1 0 1 0 1 0 1 0 + 6 01 JAN 05:00 180 0 150 0 1 0 1 0 1 0 1 0 + 7 01 JAN 06:00 222 0 150 0 1 0 1 0 1 0 1 0 + 8 01 JAN 07:00 348 0 150 0 1 0 1 0 1 0 1 0 + 9 01 JAN 08:00 410 0 202 0 1 0 1 0 1 0 1 0 + 10 01 JAN 09:00 410 0 275 0 1 0 1 0 1 0 1 0 + 11 01 JAN 10:00 410 0 329 0 1 0 69502 0 1 0 2 0 + 12 01 JAN 11:00 410 0 339 0 1 0 2 0 1 0 2 0 + 13 01 JAN 12:00 410 0 320 0 1 0 2 0 1 0 2 0 + 14 01 JAN 13:00 410 0 308 0 1 0 2 0 1 0 2 0 + 15 01 JAN 14:00 400 0 300 0 1 0 2 0 1 0 2 0 + 16 01 JAN 15:00 401 0 300 0 1 0 2 0 1 0 2 0 + 17 01 JAN 16:00 410 0 344 0 1 0 2 0 1 0 2 0 + 18 01 JAN 17:00 410 0 401 0 1 0 2 0 1 0 2 0 + 19 01 JAN 18:00 410 0 361 0 1 0 2 0 1 0 2 0 + 20 01 JAN 19:00 410 0 309 0 1 0 2 0 1 0 2 0 + 21 01 JAN 20:00 387 0 300 0 1 0 2 0 1 0 2 0 + 22 01 JAN 21:00 366 0 300 0 1 0 2 0 1 0 2 0 + 23 01 JAN 22:00 322 0 300 0 1 0 2 0 1 0 2 0 + 24 01 JAN 23:00 231 0 300 0 1 0 2 0 1 0 2 0 + 25 02 JAN 00:00 202 0 300 0 1 0 2 0 1 0 2 0 + 26 02 JAN 01:00 190 0 300 0 1 0 2 0 1 0 2 0 + 27 02 JAN 02:00 210 0 300 0 1 0 2 0 1 0 2 0 + 28 02 JAN 03:00 204 0 300 0 1 0 2 0 1 0 2 0 + 29 02 JAN 04:00 200 0 300 0 1 0 2 0 1 0 2 0 + 30 02 JAN 05:00 226 0 300 0 1 0 2 0 1 0 2 0 + 31 02 JAN 06:00 295 0 300 0 1 0 2 0 1 0 2 0 + 32 02 JAN 07:00 398 0 300 0 1 0 2 0 1 0 2 0 + 33 02 JAN 08:00 410 0 362 0 1 0 2 0 1 0 2 0 + 34 02 JAN 09:00 410 0 393 0 1 0 2 0 1 0 2 0 + 35 02 JAN 10:00 410 0 386 0 1 0 2 0 1 0 2 0 + 36 02 JAN 11:00 410 0 373 0 1 0 2 0 1 0 2 0 + 37 02 JAN 12:00 410 0 347 0 1 0 2 0 1 0 2 0 + 38 02 JAN 13:00 410 0 340 0 1 0 2 0 1 0 2 0 + 39 02 JAN 14:00 410 0 337 0 1 0 2 0 1 0 2 0 + 40 02 JAN 15:00 410 0 326 0 1 0 2 0 1 0 2 0 + 41 02 JAN 16:00 410 0 359 0 1 0 2 0 1 0 2 0 + 42 02 JAN 17:00 410 60 345 0 1 24501 2 0 1 1 2 0 + 43 02 JAN 18:00 410 60 322 0 1 1 2 0 1 1 2 0 + 44 02 JAN 19:00 410 60 300 0 1 1 2 0 1 1 2 0 + 45 02 JAN 20:00 403 60 300 0 1 1 2 0 1 1 2 0 + 46 02 JAN 21:00 391 60 300 0 1 1 2 0 1 1 2 0 + 47 02 JAN 22:00 410 60 213 0 1 1 1 0 1 1 1 0 + 48 02 JAN 23:00 382 60 150 0 1 1 1 0 1 1 1 0 + 49 03 JAN 00:00 389 60 0 0 1 1 0 0 1 1 0 0 + 50 03 JAN 01:00 343 60 0 0 1 1 0 0 1 1 0 0 + 51 03 JAN 02:00 340 60 0 0 1 1 0 0 1 1 0 0 + 52 03 JAN 03:00 340 60 0 0 1 1 0 0 1 1 0 0 + 53 03 JAN 04:00 385 60 0 0 1 1 0 0 1 1 0 0 + 54 03 JAN 05:00 410 150 0 0 1 24502 0 0 1 2 0 0 + 55 03 JAN 06:00 410 270 0 0 1 24503 0 0 1 3 0 0 + 56 03 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 57 03 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 58 03 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 59 03 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 60 03 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 61 03 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 62 03 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 63 03 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 64 03 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 65 03 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 66 03 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 67 03 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 68 03 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 69 03 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 70 03 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 71 03 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 72 03 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 73 04 JAN 00:00 410 0 210 0 1 0 69501 0 1 0 1 0 + 74 04 JAN 01:00 374 0 150 0 1 0 1 0 1 0 1 0 + 75 04 JAN 02:00 317 0 150 0 1 0 1 0 1 0 1 0 + 76 04 JAN 03:00 294 0 150 0 1 0 1 0 1 0 1 0 + 77 04 JAN 04:00 309 0 150 0 1 0 1 0 1 0 1 0 + 78 04 JAN 05:00 407 0 150 0 1 0 1 0 1 0 1 0 + 79 04 JAN 06:00 410 0 323 0 1 0 69502 0 1 0 2 0 + 80 04 JAN 07:00 410 0 459 0 1 0 2 0 1 0 2 0 + 81 04 JAN 08:00 410 0 533 0 1 0 2 0 1 0 2 0 + 82 04 JAN 09:00 410 0 534 0 1 0 2 0 1 0 2 0 + 83 04 JAN 10:00 410 0 522 0 1 0 2 0 1 0 2 0 + 84 04 JAN 11:00 410 0 505 0 1 0 2 0 1 0 2 0 + 85 04 JAN 12:00 410 0 489 0 1 0 2 0 1 0 2 0 + 86 04 JAN 13:00 410 0 543 0 1 0 2 0 1 0 2 0 + 87 04 JAN 14:00 410 0 561 0 1 0 69503 0 1 0 3 0 + 88 04 JAN 15:00 410 0 591 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 651 0 1 0 3 0 1 0 3 0 + 90 04 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 91 04 JAN 18:00 410 0 795 0 1 0 3 0 1 0 3 0 + 92 04 JAN 19:00 410 0 761 0 1 0 3 0 1 0 3 0 + 93 04 JAN 20:00 410 0 673 0 1 0 3 0 1 0 3 0 + 94 04 JAN 21:00 410 0 561 0 1 0 3 0 1 0 3 0 + 95 04 JAN 22:00 410 0 462 0 1 0 3 0 1 0 3 0 + 96 04 JAN 23:00 278 0 450 0 1 0 3 0 1 0 3 0 + 97 05 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 98 05 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 99 05 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 100 05 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 101 05 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 102 05 JAN 05:00 186 0 450 0 1 0 3 0 1 0 3 0 + 103 05 JAN 06:00 368 0 450 0 1 0 3 0 1 0 3 0 + 104 05 JAN 07:00 410 0 568 0 1 0 3 0 1 0 3 0 + 105 05 JAN 08:00 410 0 672 0 1 0 3 0 1 0 3 0 + 106 05 JAN 09:00 410 0 700 0 1 0 3 0 1 0 3 0 + 107 05 JAN 10:00 410 0 690 0 1 0 3 0 1 0 3 0 + 108 05 JAN 11:00 410 0 675 0 1 0 3 0 1 0 3 0 + 109 05 JAN 12:00 410 0 662 0 1 0 3 0 1 0 3 0 + 110 05 JAN 13:00 410 0 715 0 1 0 3 0 1 0 3 0 + 111 05 JAN 14:00 410 0 734 0 1 0 3 0 1 0 3 0 + 112 05 JAN 15:00 410 0 744 0 1 0 3 0 1 0 3 0 + 113 05 JAN 16:00 410 0 793 0 1 0 3 0 1 0 3 0 + 114 05 JAN 17:00 410 0 883 0 1 0 69504 0 1 0 4 0 + 115 05 JAN 18:00 410 0 905 0 1 0 4 0 1 0 4 0 + 116 05 JAN 19:00 410 0 874 0 1 0 4 0 1 0 4 0 + 117 05 JAN 20:00 410 0 791 0 1 0 3 0 1 0 3 0 + 118 05 JAN 21:00 410 0 668 0 1 0 3 0 1 0 3 0 + 119 05 JAN 22:00 410 0 540 0 1 0 2 0 1 0 2 0 + 120 05 JAN 23:00 410 0 351 0 1 0 2 0 1 0 2 0 + 121 06 JAN 00:00 252 0 300 0 1 0 2 0 1 0 2 0 + 122 06 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 123 06 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 124 06 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 125 06 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 126 06 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 127 06 JAN 06:00 230 0 300 0 1 0 2 0 1 0 2 0 + 128 06 JAN 07:00 404 0 300 0 1 0 2 0 1 0 2 0 + 129 06 JAN 08:00 410 0 418 0 1 0 2 0 1 0 2 0 + 130 06 JAN 09:00 410 0 453 0 1 0 2 0 1 0 2 0 + 131 06 JAN 10:00 410 0 435 0 1 0 2 0 1 0 2 0 + 132 06 JAN 11:00 410 0 399 0 1 0 2 0 1 0 2 0 + 133 06 JAN 12:00 410 0 373 0 1 0 2 0 1 0 2 0 + 134 06 JAN 13:00 410 0 417 0 1 0 2 0 1 0 2 0 + 135 06 JAN 14:00 410 0 426 0 1 0 2 0 1 0 2 0 + 136 06 JAN 15:00 410 0 447 0 1 0 2 0 1 0 2 0 + 137 06 JAN 16:00 410 0 505 0 1 0 2 0 1 0 2 0 + 138 06 JAN 17:00 410 0 592 0 1 0 69503 0 1 0 3 0 + 139 06 JAN 18:00 410 0 575 0 1 0 3 0 1 0 3 0 + 140 06 JAN 19:00 410 0 522 0 1 0 2 0 1 0 2 0 + 141 06 JAN 20:00 410 0 459 0 1 0 2 0 1 0 2 0 + 142 06 JAN 21:00 410 0 402 0 1 0 2 0 1 0 2 0 + 143 06 JAN 22:00 410 0 320 0 1 0 2 0 1 0 2 0 + 144 06 JAN 23:00 350 0 300 0 1 0 2 0 1 0 2 0 + 145 07 JAN 00:00 410 0 328 0 1 0 2 0 1 0 2 0 + 146 07 JAN 01:00 293 0 300 0 1 0 2 0 1 0 2 0 + 147 07 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 148 07 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 149 07 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 150 07 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 151 07 JAN 06:00 250 0 300 0 1 0 2 0 1 0 2 0 + 152 07 JAN 07:00 410 0 325 0 1 0 2 0 1 0 2 0 + 153 07 JAN 08:00 410 0 494 0 1 0 2 0 1 0 2 0 + 154 07 JAN 09:00 410 0 565 0 1 0 69503 0 1 0 3 0 + 155 07 JAN 10:00 410 0 518 0 1 0 3 0 1 0 3 0 + 156 07 JAN 11:00 410 0 476 0 1 0 3 0 1 0 3 0 + 157 07 JAN 12:00 406 0 450 0 1 0 3 0 1 0 3 0 + 158 07 JAN 13:00 410 0 496 0 1 0 3 0 1 0 3 0 + 159 07 JAN 14:00 410 0 524 0 1 0 3 0 1 0 3 0 + 160 07 JAN 15:00 410 0 549 0 1 0 3 0 1 0 3 0 + 161 07 JAN 16:00 410 0 644 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 774 0 1 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 750 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 694 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 538 0 1 0 2 0 1 0 2 0 + 168 07 JAN 23:00 410 0 375 0 1 0 2 0 1 0 2 0 diff --git a/tests/functional/data_complex_case/accurate/values-hourly.txt b/tests/functional/data_complex_case/accurate/values-hourly.txt new file mode 100644 index 00000000..bab44e90 --- /dev/null +++ b/tests/functional/data_complex_case/accurate/values-hourly.txt @@ -0,0 +1,175 @@ +BA00 area va hourly + VARIABLES BEGIN END + 24 1 168 + +BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 37364 37364 96.00 323 0 0 0 672 0 300 0 50.03 760 0 0 0 0 0 0 0 1780 1408 1408 2 + 2 01 JAN 01:00 33363 33332 -1.00 288 0 0 0 599 0 300 0 50.05 760 0 0 0 0 31 0 0 1780 1450 1481 2 + 3 01 JAN 02:00 33394 33332 -1.00 288 0 0 0 568 0 300 0 50.08 760 0 0 0 0 62 0 0 1780 1450 1512 2 + 4 01 JAN 03:00 33414 33332 -1.00 288 0 0 0 548 0 300 0 50.11 760 0 0 0 0 82 0 0 1780 1450 1532 2 + 5 01 JAN 04:00 33409 33332 -1.00 288 0 0 0 553 0 300 0 50.13 760 0 0 0 0 77 0 0 1780 1450 1527 2 + 6 01 JAN 05:00 33370 33332 -1.00 288 0 0 0 592 0 300 0 50.16 760 0 0 0 0 38 0 0 1780 1450 1488 2 + 7 01 JAN 06:00 37364 37364 96.00 323 0 0 0 672 0 300 0 50.19 760 0 0 0 0 0 0 0 1780 1408 1408 2 + 8 01 JAN 07:00 49460 49460 96.00 427 0 0 0 798 0 300 0 50.21 760 0 0 0 0 0 0 0 1780 1282 1282 2 + 9 01 JAN 08:00 60976 60976 107.00 527 0 0 0 912 0 300 0 50.24 760 0 0 0 0 0 0 0 1780 1168 1168 2 + 10 01 JAN 09:00 68787 68787 107.00 595 0 0 0 985 0 300 0 50.27 760 0 0 0 0 0 0 0 1780 1095 1095 2 + 11 01 JAN 10:00 144066 144066 107.00 645 0 0 0 1039 0 300 0 50.30 760 0 0 0 0 0 0 0 1780 1041 1041 69503 + 12 01 JAN 11:00 75636 75636 107.00 655 0 0 0 1049 0 300 0 50.32 760 0 0 0 0 0 0 0 1780 1031 1031 3 + 13 01 JAN 12:00 73603 73603 107.00 637 0 0 0 1030 0 300 0 50.35 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 14 01 JAN 13:00 72319 72319 107.00 626 0 0 0 1018 0 300 0 50.38 760 0 0 0 0 0 0 0 1780 1062 1062 3 + 15 01 JAN 14:00 70503 70503 96.00 610 0 0 0 1000 0 300 0 50.40 760 0 0 0 0 0 0 0 1780 1080 1080 3 + 16 01 JAN 15:00 70599 70599 96.00 611 0 0 0 1001 0 300 0 50.43 760 0 0 0 0 0 0 0 1780 1079 1079 3 + 17 01 JAN 16:00 76171 76171 107.00 659 0 0 0 1054 0 300 0 50.46 760 0 0 0 0 0 0 0 1780 1026 1026 3 + 18 01 JAN 17:00 82270 82270 107.00 712 0 0 0 1111 0 300 0 50.48 760 0 0 0 0 0 0 0 1780 969 969 3 + 19 01 JAN 18:00 77990 77990 107.00 675 0 0 0 1071 0 300 0 50.51 760 0 0 0 0 0 0 0 1780 1009 1009 3 + 20 01 JAN 19:00 72426 72426 107.00 627 0 0 0 1019 0 300 0 50.54 760 0 0 0 0 0 0 0 1780 1061 1061 3 + 21 01 JAN 20:00 69255 69255 96.00 599 0 0 0 987 0 300 0 50.56 760 0 0 0 0 0 0 0 1780 1093 1093 3 + 22 01 JAN 21:00 67239 67239 96.00 582 0 0 0 966 0 300 0 50.59 760 0 0 0 0 0 0 0 1780 1114 1114 3 + 23 01 JAN 22:00 63015 63015 96.00 546 0 0 0 922 0 300 0 50.62 760 0 0 0 0 0 0 0 1780 1158 1158 3 + 24 01 JAN 23:00 54279 54279 96.00 470 0 0 0 831 0 300 0 50.64 760 0 0 0 0 0 0 0 1780 1249 1249 3 + 25 02 JAN 00:00 51495 51495 96.00 446 0 0 0 802 0 300 0 50.67 760 0 0 0 0 0 0 0 1780 1278 1278 3 + 26 02 JAN 01:00 50343 50343 96.00 437 0 0 0 790 0 300 0 50.70 760 0 0 0 0 0 0 0 1780 1290 1290 3 + 27 02 JAN 02:00 52263 52263 96.00 453 0 0 0 810 0 300 0 50.73 760 0 0 0 0 0 0 0 1780 1270 1270 3 + 28 02 JAN 03:00 51687 51687 96.00 448 0 0 0 804 0 300 0 50.75 760 0 0 0 0 0 0 0 1780 1276 1276 3 + 29 02 JAN 04:00 51303 51303 96.00 445 0 0 0 800 0 300 0 50.78 760 0 0 0 0 0 0 0 1780 1280 1280 3 + 30 02 JAN 05:00 53799 53799 96.00 466 0 0 0 826 0 300 0 50.81 760 0 0 0 0 0 0 0 1780 1254 1254 3 + 31 02 JAN 06:00 60423 60423 96.00 523 0 0 0 895 0 300 0 50.83 760 0 0 0 0 0 0 0 1780 1185 1185 3 + 32 02 JAN 07:00 70311 70311 96.00 608 0 0 0 998 0 300 0 50.86 760 0 0 0 0 0 0 0 1780 1082 1082 3 + 33 02 JAN 08:00 78097 78097 107.00 676 0 0 0 1072 0 300 0 50.89 760 0 0 0 0 0 0 0 1780 1008 1008 3 + 34 02 JAN 09:00 81414 81414 107.00 705 0 0 0 1103 0 300 0 50.91 760 0 0 0 0 0 0 0 1780 977 977 3 + 35 02 JAN 10:00 80665 80665 107.00 698 0 0 0 1096 0 300 0 50.94 760 0 0 0 0 0 0 0 1780 984 984 3 + 36 02 JAN 11:00 79274 79274 107.00 686 0 0 0 1083 0 300 0 50.97 760 0 0 0 0 0 0 0 1780 997 997 3 + 37 02 JAN 12:00 76492 76492 107.00 662 0 0 0 1057 0 300 0 50.99 760 0 0 0 0 0 0 0 1780 1023 1023 3 + 38 02 JAN 13:00 75743 75743 107.00 656 0 0 0 1050 0 300 0 51.02 760 0 0 0 0 0 0 0 1780 1030 1030 3 + 39 02 JAN 14:00 75422 75422 107.00 653 0 0 0 1047 0 300 0 51.05 760 0 0 0 0 0 0 0 1780 1033 1033 3 + 40 02 JAN 15:00 74245 74245 107.00 642 0 0 0 1036 0 300 0 51.07 760 0 0 0 0 0 0 0 1780 1044 1044 3 + 41 02 JAN 16:00 77776 77776 107.00 673 0 0 0 1069 0 300 0 51.10 760 0 0 0 0 0 0 0 1780 1011 1011 3 + 42 02 JAN 17:00 108999 108999 107.00 732 0 0 0 1115 0 300 0 51.13 760 0 0 0 0 0 0 0 1780 965 965 24504 + 43 02 JAN 18:00 82038 82038 107.00 711 0 0 0 1092 0 300 0 51.15 760 0 0 0 0 0 0 0 1780 988 988 4 + 44 02 JAN 19:00 79684 79684 107.00 690 0 0 0 1070 0 300 0 51.18 760 0 0 0 0 0 0 0 1780 1010 1010 4 + 45 02 JAN 20:00 79012 79012 96.00 684 0 0 0 1063 0 300 0 51.21 760 0 0 0 0 0 0 0 1780 1017 1017 4 + 46 02 JAN 21:00 77860 77860 96.00 674 0 0 0 1051 0 300 0 51.24 760 0 0 0 0 0 0 0 1780 1029 1029 4 + 47 02 JAN 22:00 70374 70374 107.00 609 0 0 0 983 0 300 0 51.26 760 0 0 0 0 0 0 0 1780 1097 1097 3 + 48 02 JAN 23:00 60945 60945 96.00 527 0 0 0 892 0 300 0 51.29 760 0 0 0 0 0 0 0 1780 1188 1188 3 + 49 03 JAN 00:00 45566 45566 96.00 393 0 0 0 749 0 300 0 51.32 760 0 0 0 0 0 0 0 680 231 231 2 + 50 03 JAN 01:00 41150 41150 96.00 355 0 0 0 703 0 300 0 51.34 760 0 0 0 0 0 0 0 680 277 277 2 + 51 03 JAN 02:00 40862 40862 96.00 353 0 0 0 700 0 300 0 51.37 760 0 0 0 0 0 0 0 680 280 280 2 + 52 03 JAN 03:00 40862 40862 96.00 353 0 0 0 700 0 300 0 51.40 760 0 0 0 0 0 0 0 680 280 280 2 + 53 03 JAN 04:00 45182 45182 96.00 390 0 0 0 745 0 300 0 51.42 760 0 0 0 0 0 0 0 680 235 235 2 + 54 03 JAN 05:00 84413 84413 137.00 518 0 0 0 860 0 300 0 51.45 760 0 0 0 0 0 0 0 680 120 120 24503 + 55 03 JAN 06:00 820854 100854 10000.00 662 0 0 0 1052 0 300 0 51.48 760 0 0 0 72 0 1.00 100.00 680 0 -72 24504 + 56 03 JAN 07:00 2566354 76354 10000.00 662 0 0 0 1229 0 300 0 51.50 760 0 0 0 249 0 1.00 100.00 680 0 -249 4 + 57 03 JAN 08:00 3646354 76354 10000.00 662 0 0 0 1337 0 300 0 51.53 760 0 0 0 357 0 1.00 100.00 680 0 -357 4 + 58 03 JAN 09:00 3806354 76354 10000.00 662 0 0 0 1353 0 300 0 51.56 760 0 0 0 373 0 1.00 100.00 680 0 -373 4 + 59 03 JAN 10:00 3506354 76354 10000.00 662 0 0 0 1323 0 300 0 51.58 760 0 0 0 343 0 1.00 100.00 680 0 -343 4 + 60 03 JAN 11:00 3396354 76354 10000.00 662 0 0 0 1312 0 300 0 51.61 760 0 0 0 332 0 1.00 100.00 680 0 -332 4 + 61 03 JAN 12:00 3356354 76354 10000.00 662 0 0 0 1308 0 300 0 51.64 760 0 0 0 328 0 1.00 100.00 680 0 -328 4 + 62 03 JAN 13:00 3886354 76354 10000.00 662 0 0 0 1361 0 300 0 51.67 760 0 0 0 381 0 1.00 100.00 680 0 -381 4 + 63 03 JAN 14:00 4026354 76354 10000.00 662 0 0 0 1375 0 300 0 51.69 760 0 0 0 395 0 1.00 100.00 680 0 -395 4 + 64 03 JAN 15:00 4306354 76354 10000.00 662 0 0 0 1403 0 300 0 51.72 760 0 0 0 423 0 1.00 100.00 680 0 -423 4 + 65 03 JAN 16:00 4796354 76354 10000.00 662 0 0 0 1452 0 300 0 51.75 760 0 0 0 472 0 1.00 100.00 680 0 -472 4 + 66 03 JAN 17:00 5686354 76354 10000.00 662 0 0 0 1541 0 300 0 51.77 760 0 0 0 561 0 1.00 100.00 680 0 -561 4 + 67 03 JAN 18:00 5866354 76354 10000.00 662 0 0 0 1559 0 300 0 51.80 760 0 0 0 579 0 1.00 100.00 680 0 -579 4 + 68 03 JAN 19:00 5556354 76354 10000.00 662 0 0 0 1528 0 300 0 51.83 760 0 0 0 548 0 1.00 100.00 680 0 -548 4 + 69 03 JAN 20:00 4736354 76354 10000.00 662 0 0 0 1446 0 300 0 51.85 760 0 0 0 466 0 1.00 100.00 680 0 -466 4 + 70 03 JAN 21:00 3626354 76354 10000.00 662 0 0 0 1335 0 300 0 51.88 760 0 0 0 355 0 1.00 100.00 680 0 -355 4 + 71 03 JAN 22:00 2326354 76354 10000.00 662 0 0 0 1205 0 300 0 51.91 760 0 0 0 225 0 1.00 100.00 680 0 -225 4 + 72 03 JAN 23:00 776354 76354 10000.00 662 0 0 0 1050 0 300 0 51.93 760 0 0 0 70 0 1.00 100.00 680 0 -70 4 + 73 04 JAN 00:00 131332 131332 107.00 534 0 0 0 920 0 300 0 51.96 760 0 0 0 0 0 0 0 1780 1160 1160 69502 + 74 04 JAN 01:00 51956 51956 96.00 449 0 0 0 824 0 300 0 51.99 760 0 0 0 0 0 0 0 1780 1256 1256 2 + 75 04 JAN 02:00 46484 46484 96.00 402 0 0 0 767 0 300 0 52.01 760 0 0 0 0 0 0 0 1780 1313 1313 2 + 76 04 JAN 03:00 44276 44276 96.00 383 0 0 0 744 0 300 0 52.04 760 0 0 0 0 0 0 0 1780 1336 1336 2 + 77 04 JAN 04:00 45716 45716 96.00 395 0 0 0 759 0 300 0 52.07 760 0 0 0 0 0 0 0 1780 1321 1321 2 + 78 04 JAN 05:00 55124 55124 96.00 476 0 0 0 857 0 300 0 52.09 760 0 0 0 0 0 0 0 1780 1223 1223 2 + 79 04 JAN 06:00 143424 143424 107.00 640 0 0 0 1033 0 300 0 52.12 760 0 0 0 0 0 0 0 1780 1047 1047 69503 + 80 04 JAN 07:00 88476 88476 107.00 766 0 0 0 1169 0 300 0 52.15 760 0 0 0 0 0 0 0 1780 911 911 3 + 81 04 JAN 08:00 96394 96394 107.00 835 0 0 0 1243 0 300 0 52.18 760 0 0 0 0 0 0 0 1780 837 837 3 + 82 04 JAN 09:00 96501 96501 107.00 836 0 0 0 1244 0 300 0 52.20 760 0 0 0 0 0 0 0 1780 836 836 3 + 83 04 JAN 10:00 95217 95217 107.00 825 0 0 0 1232 0 300 0 52.23 760 0 0 0 0 0 0 0 1780 848 848 3 + 84 04 JAN 11:00 93398 93398 107.00 809 0 0 0 1215 0 300 0 52.26 760 0 0 0 0 0 0 0 1780 865 865 3 + 85 04 JAN 12:00 91686 91686 107.00 794 0 0 0 1199 0 300 0 52.28 760 0 0 0 0 0 0 0 1780 881 881 3 + 86 04 JAN 13:00 97464 97464 107.00 845 0 0 0 1253 0 300 0 52.31 760 0 0 0 0 0 0 0 1780 827 827 3 + 87 04 JAN 14:00 168891 168891 107.00 862 0 0 0 1271 0 300 0 52.34 760 0 0 0 0 0 0 0 1780 809 809 69504 + 88 04 JAN 15:00 102601 102601 107.00 889 0 0 0 1301 0 300 0 52.36 760 0 0 0 0 0 0 0 1780 779 779 4 + 89 04 JAN 16:00 109021 109021 107.00 945 0 0 0 1361 0 300 0 52.39 760 0 0 0 0 0 0 0 1780 719 719 4 + 90 04 JAN 17:00 120577 120577 107.00 1046 0 0 0 1469 0 300 0 52.42 760 0 0 0 0 0 0 0 1780 611 611 4 + 91 04 JAN 18:00 124429 124429 107.00 1080 0 0 0 1505 0 300 0 52.44 760 0 0 0 0 0 0 0 1780 575 575 4 + 92 04 JAN 19:00 120791 120791 107.00 1048 0 0 0 1471 0 300 0 52.47 760 0 0 0 0 0 0 0 1780 609 609 4 + 93 04 JAN 20:00 111375 111375 107.00 966 0 0 0 1383 0 300 0 52.50 760 0 0 0 0 0 0 0 1780 697 697 4 + 94 04 JAN 21:00 99391 99391 107.00 862 0 0 0 1271 0 300 0 52.52 760 0 0 0 0 0 0 0 1780 809 809 4 + 95 04 JAN 22:00 88798 88798 107.00 769 0 0 0 1172 0 300 0 52.55 760 0 0 0 0 0 0 0 1780 908 908 4 + 96 04 JAN 23:00 74842 74842 96.00 649 0 0 0 1028 0 300 0 52.58 760 0 0 0 0 0 0 0 1780 1052 1052 4 + 97 05 JAN 00:00 65442 65434 -1.00 568 0 0 0 922 0 300 0 52.61 760 0 0 0 0 8 0 0 1780 1150 1158 4 + 98 05 JAN 01:00 65521 65434 -1.00 568 0 0 0 843 0 300 0 52.63 760 0 0 0 0 87 0 0 1780 1150 1237 4 + 99 05 JAN 02:00 65551 65434 -1.00 568 0 0 0 813 0 300 0 52.66 760 0 0 0 0 117 0 0 1780 1150 1267 4 + 100 05 JAN 03:00 65555 65434 -1.00 568 0 0 0 809 0 300 0 52.69 760 0 0 0 0 121 0 0 1780 1150 1271 4 + 101 05 JAN 04:00 65527 65434 -1.00 568 0 0 0 837 0 300 0 52.71 760 0 0 0 0 93 0 0 1780 1150 1243 4 + 102 05 JAN 05:00 66010 66010 96.00 573 0 0 0 936 0 300 0 52.74 760 0 0 0 0 0 0 0 1780 1144 1144 4 + 103 05 JAN 06:00 83482 83482 96.00 723 0 0 0 1118 0 300 0 52.77 760 0 0 0 0 0 0 0 1780 962 962 4 + 104 05 JAN 07:00 100140 100140 107.00 868 0 0 0 1278 0 300 0 52.79 760 0 0 0 0 0 0 0 1780 802 802 4 + 105 05 JAN 08:00 111268 111268 107.00 965 0 0 0 1382 0 300 0 52.82 760 0 0 0 0 0 0 0 1780 698 698 4 + 106 05 JAN 09:00 114264 114264 107.00 991 0 0 0 1410 0 300 0 52.85 760 0 0 0 0 0 0 0 1780 670 670 4 + 107 05 JAN 10:00 113194 113194 107.00 982 0 0 0 1400 0 300 0 52.87 760 0 0 0 0 0 0 0 1780 680 680 4 + 108 05 JAN 11:00 111589 111589 107.00 968 0 0 0 1385 0 300 0 52.90 760 0 0 0 0 0 0 0 1780 695 695 4 + 109 05 JAN 12:00 110198 110198 107.00 956 0 0 0 1372 0 300 0 52.93 760 0 0 0 0 0 0 0 1780 708 708 4 + 110 05 JAN 13:00 115869 115869 107.00 1005 0 0 0 1425 0 300 0 52.95 760 0 0 0 0 0 0 0 1780 655 655 4 + 111 05 JAN 14:00 117902 117902 107.00 1023 0 0 0 1444 0 300 0 52.98 760 0 0 0 0 0 0 0 1780 636 636 4 + 112 05 JAN 15:00 118972 118972 107.00 1032 0 0 0 1454 0 300 0 53.01 760 0 0 0 0 0 0 0 1780 626 626 4 + 113 05 JAN 16:00 124215 124215 107.00 1078 0 0 0 1503 0 300 0 53.03 760 0 0 0 0 0 0 0 1780 577 577 4 + 114 05 JAN 17:00 203346 203346 107.00 1162 0 0 0 1593 0 300 0 53.06 760 0 0 0 0 0 0 0 1780 487 487 69505 + 115 05 JAN 18:00 136200 136200 107.00 1182 0 0 0 1615 0 300 0 53.09 760 0 0 0 0 0 0 0 1780 465 465 5 + 116 05 JAN 19:00 132883 132883 107.00 1153 0 0 0 1584 0 300 0 53.12 760 0 0 0 0 0 0 0 1780 496 496 5 + 117 05 JAN 20:00 124001 124001 107.00 1076 0 0 0 1501 0 300 0 53.14 760 0 0 0 0 0 0 0 1780 579 579 4 + 118 05 JAN 21:00 110840 110840 107.00 961 0 0 0 1378 0 300 0 53.17 760 0 0 0 0 0 0 0 1780 702 702 4 + 119 05 JAN 22:00 97143 97143 107.00 842 0 0 0 1250 0 300 0 53.20 760 0 0 0 0 0 0 0 1780 830 830 3 + 120 05 JAN 23:00 76920 76920 107.00 666 0 0 0 1061 0 300 0 53.22 760 0 0 0 0 0 0 0 1780 1019 1019 3 + 121 06 JAN 00:00 56295 56295 96.00 488 0 0 0 852 0 300 0 53.25 760 0 0 0 0 0 0 0 1780 1228 1228 3 + 122 06 JAN 01:00 49418 49383 -1.00 428 0 0 0 745 0 300 0 53.28 760 0 0 0 0 35 0 0 1780 1300 1335 3 + 123 06 JAN 02:00 49481 49383 -1.00 428 0 0 0 682 0 300 0 53.30 760 0 0 0 0 98 0 0 1780 1300 1398 3 + 124 06 JAN 03:00 49532 49383 -1.00 428 0 0 0 631 0 300 0 53.33 760 0 0 0 0 149 0 0 1780 1300 1449 3 + 125 06 JAN 04:00 49546 49383 -1.00 428 0 0 0 617 0 300 0 53.36 760 0 0 0 0 163 0 0 1780 1300 1463 3 + 126 06 JAN 05:00 49487 49383 -1.00 428 0 0 0 676 0 300 0 53.38 760 0 0 0 0 104 0 0 1780 1300 1404 3 + 127 06 JAN 06:00 54183 54183 96.00 470 0 0 0 830 0 300 0 53.41 760 0 0 0 0 0 0 0 1780 1250 1250 3 + 128 06 JAN 07:00 70887 70887 96.00 613 0 0 0 1004 0 300 0 53.44 760 0 0 0 0 0 0 0 1780 1076 1076 3 + 129 06 JAN 08:00 84089 84089 107.00 728 0 0 0 1128 0 300 0 53.46 760 0 0 0 0 0 0 0 1780 952 952 3 + 130 06 JAN 09:00 87834 87834 107.00 761 0 0 0 1163 0 300 0 53.49 760 0 0 0 0 0 0 0 1780 917 917 3 + 131 06 JAN 10:00 85908 85908 107.00 744 0 0 0 1145 0 300 0 53.52 760 0 0 0 0 0 0 0 1780 935 935 3 + 132 06 JAN 11:00 82056 82056 107.00 711 0 0 0 1109 0 300 0 53.55 760 0 0 0 0 0 0 0 1780 971 971 3 + 133 06 JAN 12:00 79274 79274 107.00 686 0 0 0 1083 0 300 0 53.57 760 0 0 0 0 0 0 0 1780 997 997 3 + 134 06 JAN 13:00 83982 83982 107.00 727 0 0 0 1127 0 300 0 53.60 760 0 0 0 0 0 0 0 1780 953 953 3 + 135 06 JAN 14:00 84945 84945 107.00 736 0 0 0 1136 0 300 0 53.63 760 0 0 0 0 0 0 0 1780 944 944 3 + 136 06 JAN 15:00 87192 87192 107.00 755 0 0 0 1157 0 300 0 53.65 760 0 0 0 0 0 0 0 1780 923 923 3 + 137 06 JAN 16:00 93398 93398 107.00 809 0 0 0 1215 0 300 0 53.68 760 0 0 0 0 0 0 0 1780 865 865 3 + 138 06 JAN 17:00 172208 172208 107.00 890 0 0 0 1302 0 300 0 53.71 760 0 0 0 0 0 0 0 1780 778 778 69504 + 139 06 JAN 18:00 100889 100889 107.00 875 0 0 0 1285 0 300 0 53.73 760 0 0 0 0 0 0 0 1780 795 795 4 + 140 06 JAN 19:00 95217 95217 107.00 825 0 0 0 1232 0 300 0 53.76 760 0 0 0 0 0 0 0 1780 848 848 3 + 141 06 JAN 20:00 88476 88476 107.00 766 0 0 0 1169 0 300 0 53.79 760 0 0 0 0 0 0 0 1780 911 911 3 + 142 06 JAN 21:00 82377 82377 107.00 713 0 0 0 1112 0 300 0 53.81 760 0 0 0 0 0 0 0 1780 968 968 3 + 143 06 JAN 22:00 73603 73603 107.00 637 0 0 0 1030 0 300 0 53.84 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 144 06 JAN 23:00 65703 65703 96.00 569 0 0 0 950 0 300 0 53.87 760 0 0 0 0 0 0 0 1780 1130 1130 3 + 145 07 JAN 00:00 74459 74459 107.00 644 0 0 0 1038 0 300 0 53.89 760 0 0 0 0 0 0 0 1780 1042 1042 3 + 146 07 JAN 01:00 60231 60231 96.00 522 0 0 0 893 0 300 0 53.92 760 0 0 0 0 0 0 0 1780 1187 1187 3 + 147 07 JAN 02:00 49402 49383 -1.00 428 0 0 0 761 0 300 0 53.95 760 0 0 0 0 19 0 0 1780 1300 1319 3 + 148 07 JAN 03:00 49445 49383 -1.00 428 0 0 0 718 0 300 0 53.97 760 0 0 0 0 62 0 0 1780 1300 1362 3 + 149 07 JAN 04:00 49445 49383 -1.00 428 0 0 0 718 0 300 0 54.00 760 0 0 0 0 62 0 0 1780 1300 1362 3 + 150 07 JAN 05:00 49402 49383 -1.00 428 0 0 0 761 0 300 0 54.03 760 0 0 0 0 19 0 0 1780 1300 1319 3 + 151 07 JAN 06:00 56103 56103 96.00 486 0 0 0 850 0 300 0 54.06 760 0 0 0 0 0 0 0 1780 1230 1230 3 + 152 07 JAN 07:00 74138 74138 107.00 642 0 0 0 1035 0 300 0 54.08 760 0 0 0 0 0 0 0 1780 1045 1045 3 + 153 07 JAN 08:00 92221 92221 107.00 799 0 0 0 1204 0 300 0 54.11 760 0 0 0 0 0 0 0 1780 876 876 3 + 154 07 JAN 09:00 169319 169319 107.00 865 0 0 0 1275 0 300 0 54.14 760 0 0 0 0 0 0 0 1780 805 805 69504 + 155 07 JAN 10:00 94790 94790 107.00 821 0 0 0 1228 0 300 0 54.16 760 0 0 0 0 0 0 0 1780 852 852 4 + 156 07 JAN 11:00 90296 90296 107.00 782 0 0 0 1186 0 300 0 54.19 760 0 0 0 0 0 0 0 1780 894 894 4 + 157 07 JAN 12:00 87130 87130 96.00 755 0 0 0 1156 0 300 0 54.22 760 0 0 0 0 0 0 0 1780 924 924 4 + 158 07 JAN 13:00 92436 92436 107.00 801 0 0 0 1206 0 300 0 54.24 760 0 0 0 0 0 0 0 1780 874 874 4 + 159 07 JAN 14:00 95432 95432 107.00 827 0 0 0 1234 0 300 0 54.27 760 0 0 0 0 0 0 0 1780 846 846 4 + 160 07 JAN 15:00 98107 98107 107.00 850 0 0 0 1259 0 300 0 54.30 760 0 0 0 0 0 0 0 1780 821 821 4 + 161 07 JAN 16:00 108272 108272 107.00 939 0 0 0 1354 0 300 0 54.32 760 0 0 0 0 0 0 0 1780 726 726 4 + 162 07 JAN 17:00 120577 120577 107.00 1046 0 0 0 1469 0 300 0 54.35 760 0 0 0 0 0 0 0 1780 611 611 4 + 163 07 JAN 18:00 122182 122182 107.00 1060 0 0 0 1484 0 300 0 54.38 760 0 0 0 0 0 0 0 1780 596 596 4 + 164 07 JAN 19:00 119614 119614 107.00 1038 0 0 0 1460 0 300 0 54.40 760 0 0 0 0 0 0 0 1780 620 620 4 + 165 07 JAN 20:00 113622 113622 107.00 985 0 0 0 1404 0 300 0 54.43 760 0 0 0 0 0 0 0 1780 676 676 4 + 166 07 JAN 21:00 106667 106667 107.00 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 + 167 07 JAN 22:00 96929 96929 107.00 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 3 + 168 07 JAN 23:00 79488 79488 107.00 688 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 3 diff --git a/tests/functional/data_complex_case/fast/details-hourly.txt b/tests/functional/data_complex_case/fast/details-hourly.txt new file mode 100644 index 00000000..d91389c5 --- /dev/null +++ b/tests/functional/data_complex_case/fast/details-hourly.txt @@ -0,0 +1,175 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 168 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 2 01 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 3 01 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 4 01 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 5 01 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 6 01 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 7 01 JAN 06:00 180 0 300 0 1 0 2 0 1 0 2 0 + 8 01 JAN 07:00 198 0 300 0 1 0 2 0 1 0 2 0 + 9 01 JAN 08:00 312 0 300 0 1 0 2 0 1 0 2 0 + 10 01 JAN 09:00 385 0 300 0 1 0 2 0 1 0 2 0 + 11 01 JAN 10:00 410 0 329 0 1 0 2 0 1 0 2 0 + 12 01 JAN 11:00 410 0 339 0 1 0 2 0 1 0 2 0 + 13 01 JAN 12:00 410 0 320 0 1 0 2 0 1 0 2 0 + 14 01 JAN 13:00 410 0 308 0 1 0 2 0 1 0 2 0 + 15 01 JAN 14:00 400 0 300 0 1 0 2 0 1 0 2 0 + 16 01 JAN 15:00 401 0 300 0 1 0 2 0 1 0 2 0 + 17 01 JAN 16:00 410 0 344 0 1 0 2 0 1 0 2 0 + 18 01 JAN 17:00 410 0 401 0 1 0 2 0 1 0 2 0 + 19 01 JAN 18:00 410 0 361 0 1 0 2 0 1 0 2 0 + 20 01 JAN 19:00 410 0 309 0 1 0 2 0 1 0 2 0 + 21 01 JAN 20:00 387 0 300 0 1 0 2 0 1 0 2 0 + 22 01 JAN 21:00 366 0 300 0 1 0 2 0 1 0 2 0 + 23 01 JAN 22:00 410 0 212 0 1 0 1 0 1 0 1 0 + 24 01 JAN 23:00 381 0 150 0 1 0 1 0 1 0 1 0 + 25 02 JAN 00:00 352 0 150 0 1 0 1 0 1 0 1 0 + 26 02 JAN 01:00 340 0 150 0 1 0 1 0 1 0 1 0 + 27 02 JAN 02:00 360 0 150 0 1 0 1 0 1 0 1 0 + 28 02 JAN 03:00 354 0 150 0 1 0 1 0 1 0 1 0 + 29 02 JAN 04:00 350 0 150 0 1 0 1 0 1 0 1 0 + 30 02 JAN 05:00 376 0 150 0 1 0 1 0 1 0 1 0 + 31 02 JAN 06:00 410 0 185 0 1 0 1 0 1 0 1 0 + 32 02 JAN 07:00 398 0 300 0 1 0 69502 0 1 0 2 0 + 33 02 JAN 08:00 410 0 362 0 1 0 2 0 1 0 2 0 + 34 02 JAN 09:00 410 0 393 0 1 0 2 0 1 0 2 0 + 35 02 JAN 10:00 410 0 386 0 1 0 2 0 1 0 2 0 + 36 02 JAN 11:00 410 0 373 0 1 0 2 0 1 0 2 0 + 37 02 JAN 12:00 410 0 347 0 1 0 2 0 1 0 2 0 + 38 02 JAN 13:00 410 0 340 0 1 0 2 0 1 0 2 0 + 39 02 JAN 14:00 410 0 337 0 1 0 2 0 1 0 2 0 + 40 02 JAN 15:00 376 60 300 0 1 24501 2 0 1 1 2 0 + 41 02 JAN 16:00 409 60 300 0 1 1 2 0 1 1 2 0 + 42 02 JAN 17:00 410 60 345 0 1 1 2 0 1 1 2 0 + 43 02 JAN 18:00 410 60 322 0 1 1 2 0 1 1 2 0 + 44 02 JAN 19:00 410 60 300 0 1 1 2 0 1 1 2 0 + 45 02 JAN 20:00 403 60 300 0 1 1 2 0 1 1 2 0 + 46 02 JAN 21:00 391 60 300 0 1 1 2 0 1 1 2 0 + 47 02 JAN 22:00 323 60 300 0 1 1 2 0 1 1 2 0 + 48 02 JAN 23:00 232 60 300 0 1 1 2 0 1 1 2 0 + 49 03 JAN 00:00 389 60 0 0 1 1 0 0 1 1 0 0 + 50 03 JAN 01:00 343 60 0 0 1 1 0 0 1 1 0 0 + 51 03 JAN 02:00 220 180 0 0 1 49003 0 0 1 3 0 0 + 52 03 JAN 03:00 220 180 0 0 1 3 0 0 1 3 0 0 + 53 03 JAN 04:00 265 180 0 0 1 3 0 0 1 3 0 0 + 54 03 JAN 05:00 380 180 0 0 1 3 0 0 1 3 0 0 + 55 03 JAN 06:00 410 270 0 0 1 3 0 0 1 3 0 0 + 56 03 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 57 03 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 58 03 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 59 03 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 60 03 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 61 03 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 62 03 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 63 03 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 64 03 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 65 03 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 66 03 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 67 03 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 68 03 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 69 03 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 70 03 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 71 03 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 72 03 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 73 04 JAN 00:00 410 0 210 0 1 0 69501 0 1 0 1 0 + 74 04 JAN 01:00 374 0 150 0 1 0 1 0 1 0 1 0 + 75 04 JAN 02:00 317 0 150 0 1 0 1 0 1 0 1 0 + 76 04 JAN 03:00 294 0 150 0 1 0 1 0 1 0 1 0 + 77 04 JAN 04:00 180 0 300 0 1 0 69502 0 1 0 2 0 + 78 04 JAN 05:00 257 0 300 0 1 0 2 0 1 0 2 0 + 79 04 JAN 06:00 410 0 323 0 1 0 2 0 1 0 2 0 + 80 04 JAN 07:00 410 0 459 0 1 0 2 0 1 0 2 0 + 81 04 JAN 08:00 410 0 533 0 1 0 2 0 1 0 2 0 + 82 04 JAN 09:00 410 0 534 0 1 0 2 0 1 0 2 0 + 83 04 JAN 10:00 410 0 522 0 1 0 2 0 1 0 2 0 + 84 04 JAN 11:00 410 0 505 0 1 0 2 0 1 0 2 0 + 85 04 JAN 12:00 410 0 489 0 1 0 2 0 1 0 2 0 + 86 04 JAN 13:00 410 0 543 0 1 0 69503 0 1 0 3 0 + 87 04 JAN 14:00 410 0 561 0 1 0 3 0 1 0 3 0 + 88 04 JAN 15:00 410 0 591 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 651 0 1 0 3 0 1 0 3 0 + 90 04 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 91 04 JAN 18:00 410 0 795 0 1 0 3 0 1 0 3 0 + 92 04 JAN 19:00 410 0 761 0 1 0 3 0 1 0 3 0 + 93 04 JAN 20:00 410 0 673 0 1 0 3 0 1 0 3 0 + 94 04 JAN 21:00 410 0 561 0 1 0 3 0 1 0 3 0 + 95 04 JAN 22:00 410 0 462 0 1 0 2 0 1 0 2 0 + 96 04 JAN 23:00 410 0 318 0 1 0 2 0 1 0 2 0 + 97 05 JAN 00:00 322 0 300 0 1 0 2 0 1 0 2 0 + 98 05 JAN 01:00 243 0 300 0 1 0 2 0 1 0 2 0 + 99 05 JAN 02:00 213 0 300 0 1 0 2 0 1 0 2 0 + 100 05 JAN 03:00 209 0 300 0 1 0 2 0 1 0 2 0 + 101 05 JAN 04:00 237 0 300 0 1 0 2 0 1 0 2 0 + 102 05 JAN 05:00 336 0 300 0 1 0 2 0 1 0 2 0 + 103 05 JAN 06:00 410 0 408 0 1 0 2 0 1 0 2 0 + 104 05 JAN 07:00 410 0 568 0 1 0 69503 0 1 0 3 0 + 105 05 JAN 08:00 410 0 672 0 1 0 3 0 1 0 3 0 + 106 05 JAN 09:00 410 0 700 0 1 0 3 0 1 0 3 0 + 107 05 JAN 10:00 410 0 690 0 1 0 3 0 1 0 3 0 + 108 05 JAN 11:00 410 0 675 0 1 0 3 0 1 0 3 0 + 109 05 JAN 12:00 410 0 662 0 1 0 3 0 1 0 3 0 + 110 05 JAN 13:00 410 0 715 0 1 0 3 0 1 0 3 0 + 111 05 JAN 14:00 410 0 734 0 1 0 3 0 1 0 3 0 + 112 05 JAN 15:00 410 0 744 0 1 0 3 0 1 0 3 0 + 113 05 JAN 16:00 410 0 793 0 1 0 69504 0 1 0 4 0 + 114 05 JAN 17:00 410 0 883 0 1 0 4 0 1 0 4 0 + 115 05 JAN 18:00 410 0 905 0 1 0 4 0 1 0 4 0 + 116 05 JAN 19:00 410 0 874 0 1 0 4 0 1 0 4 0 + 117 05 JAN 20:00 410 0 791 0 1 0 4 0 1 0 4 0 + 118 05 JAN 21:00 410 0 668 0 1 0 4 0 1 0 4 0 + 119 05 JAN 22:00 350 0 600 0 1 0 4 0 1 0 4 0 + 120 05 JAN 23:00 180 0 600 0 1 0 4 0 1 0 4 0 + 121 06 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 122 06 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 123 06 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 124 06 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 125 06 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 126 06 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 127 06 JAN 06:00 230 0 300 0 1 0 2 0 1 0 2 0 + 128 06 JAN 07:00 404 0 300 0 1 0 2 0 1 0 2 0 + 129 06 JAN 08:00 410 0 418 0 1 0 2 0 1 0 2 0 + 130 06 JAN 09:00 410 0 453 0 1 0 2 0 1 0 2 0 + 131 06 JAN 10:00 395 0 450 0 1 0 69503 0 1 0 3 0 + 132 06 JAN 11:00 359 0 450 0 1 0 3 0 1 0 3 0 + 133 06 JAN 12:00 333 0 450 0 1 0 3 0 1 0 3 0 + 134 06 JAN 13:00 377 0 450 0 1 0 3 0 1 0 3 0 + 135 06 JAN 14:00 386 0 450 0 1 0 3 0 1 0 3 0 + 136 06 JAN 15:00 407 0 450 0 1 0 3 0 1 0 3 0 + 137 06 JAN 16:00 410 0 505 0 1 0 3 0 1 0 3 0 + 138 06 JAN 17:00 410 0 592 0 1 0 3 0 1 0 3 0 + 139 06 JAN 18:00 410 0 575 0 1 0 3 0 1 0 3 0 + 140 06 JAN 19:00 410 0 522 0 1 0 2 0 1 0 2 0 + 141 06 JAN 20:00 410 0 459 0 1 0 2 0 1 0 2 0 + 142 06 JAN 21:00 410 0 402 0 1 0 2 0 1 0 2 0 + 143 06 JAN 22:00 410 0 320 0 1 0 2 0 1 0 2 0 + 144 06 JAN 23:00 350 0 300 0 1 0 2 0 1 0 2 0 + 145 07 JAN 00:00 410 0 328 0 1 0 2 0 1 0 2 0 + 146 07 JAN 01:00 293 0 300 0 1 0 2 0 1 0 2 0 + 147 07 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 148 07 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 149 07 JAN 04:00 180 0 450 0 1 0 69503 0 1 0 3 0 + 150 07 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 151 07 JAN 06:00 180 0 450 0 1 0 3 0 1 0 3 0 + 152 07 JAN 07:00 285 0 450 0 1 0 3 0 1 0 3 0 + 153 07 JAN 08:00 410 0 494 0 1 0 3 0 1 0 3 0 + 154 07 JAN 09:00 410 0 565 0 1 0 3 0 1 0 3 0 + 155 07 JAN 10:00 410 0 518 0 1 0 3 0 1 0 3 0 + 156 07 JAN 11:00 410 0 476 0 1 0 3 0 1 0 3 0 + 157 07 JAN 12:00 406 0 450 0 1 0 3 0 1 0 3 0 + 158 07 JAN 13:00 410 0 496 0 1 0 3 0 1 0 3 0 + 159 07 JAN 14:00 410 0 524 0 1 0 3 0 1 0 3 0 + 160 07 JAN 15:00 410 0 549 0 1 0 3 0 1 0 3 0 + 161 07 JAN 16:00 410 0 644 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 774 0 1 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 750 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 694 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 538 0 1 0 3 0 1 0 3 0 + 168 07 JAN 23:00 335 0 450 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/data_complex_case/fast/values-hourly.txt b/tests/functional/data_complex_case/fast/values-hourly.txt new file mode 100644 index 00000000..672691f5 --- /dev/null +++ b/tests/functional/data_complex_case/fast/values-hourly.txt @@ -0,0 +1,175 @@ +BA00 area va hourly + VARIABLES BEGIN END + 24 1 168 + +BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 65692 65434 -1.00 568 0 0 0 672 0 300 0 50.03 760 0 0 0 0 258 0 0 1780 1150 1408 4 + 2 01 JAN 01:00 65765 65434 -1.00 568 0 0 0 599 0 300 0 50.05 760 0 0 0 0 331 0 0 1780 1150 1481 4 + 3 01 JAN 02:00 65796 65434 -1.00 568 0 0 0 568 0 300 0 50.08 760 0 0 0 0 362 0 0 1780 1150 1512 4 + 4 01 JAN 03:00 65816 65434 -1.00 568 0 0 0 548 0 300 0 50.11 760 0 0 0 0 382 0 0 1780 1150 1532 4 + 5 01 JAN 04:00 49610 49383 -1.00 428 0 0 0 553 0 300 0 50.13 760 0 0 0 0 227 0 0 1780 1300 1527 3 + 6 01 JAN 05:00 49571 49383 -1.00 428 0 0 0 592 0 300 0 50.16 760 0 0 0 0 188 0 0 1780 1300 1488 3 + 7 01 JAN 06:00 49491 49383 -1.00 428 0 0 0 672 0 300 0 50.19 760 0 0 0 0 108 0 0 1780 1300 1408 3 + 8 01 JAN 07:00 51111 51111 96.00 443 0 0 0 798 0 300 0 50.21 760 0 0 0 0 0 0 0 1780 1282 1282 3 + 9 01 JAN 08:00 62055 62055 96.00 537 0 0 0 912 0 300 0 50.24 760 0 0 0 0 0 0 0 1780 1168 1168 3 + 10 01 JAN 09:00 69063 69063 96.00 598 0 0 0 985 0 300 0 50.27 760 0 0 0 0 0 0 0 1780 1095 1095 3 + 11 01 JAN 10:00 74566 74566 107.00 645 0 0 0 1039 0 300 0 50.30 760 0 0 0 0 0 0 0 1780 1041 1041 3 + 12 01 JAN 11:00 75636 75636 107.00 655 0 0 0 1049 0 300 0 50.32 760 0 0 0 0 0 0 0 1780 1031 1031 3 + 13 01 JAN 12:00 73603 73603 107.00 637 0 0 0 1030 0 300 0 50.35 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 14 01 JAN 13:00 72319 72319 107.00 626 0 0 0 1018 0 300 0 50.38 760 0 0 0 0 0 0 0 1780 1062 1062 3 + 15 01 JAN 14:00 70503 70503 96.00 610 0 0 0 1000 0 300 0 50.40 760 0 0 0 0 0 0 0 1780 1080 1080 3 + 16 01 JAN 15:00 70599 70599 96.00 611 0 0 0 1001 0 300 0 50.43 760 0 0 0 0 0 0 0 1780 1079 1079 3 + 17 01 JAN 16:00 76171 76171 107.00 659 0 0 0 1054 0 300 0 50.46 760 0 0 0 0 0 0 0 1780 1026 1026 3 + 18 01 JAN 17:00 82270 82270 107.00 712 0 0 0 1111 0 300 0 50.48 760 0 0 0 0 0 0 0 1780 969 969 3 + 19 01 JAN 18:00 77990 77990 107.00 675 0 0 0 1071 0 300 0 50.51 760 0 0 0 0 0 0 0 1780 1009 1009 3 + 20 01 JAN 19:00 72426 72426 107.00 627 0 0 0 1019 0 300 0 50.54 760 0 0 0 0 0 0 0 1780 1061 1061 3 + 21 01 JAN 20:00 69255 69255 96.00 599 0 0 0 987 0 300 0 50.56 760 0 0 0 0 0 0 0 1780 1093 1093 3 + 22 01 JAN 21:00 67239 67239 96.00 582 0 0 0 966 0 300 0 50.59 760 0 0 0 0 0 0 0 1780 1114 1114 3 + 23 01 JAN 22:00 62046 62046 107.00 536 0 0 0 922 0 300 0 50.62 760 0 0 0 0 0 0 0 1780 1158 1158 2 + 24 01 JAN 23:00 52628 52628 96.00 455 0 0 0 831 0 300 0 50.64 760 0 0 0 0 0 0 0 1780 1249 1249 2 + 25 02 JAN 00:00 49844 49844 96.00 431 0 0 0 802 0 300 0 50.67 760 0 0 0 0 0 0 0 1780 1278 1278 2 + 26 02 JAN 01:00 48692 48692 96.00 421 0 0 0 790 0 300 0 50.70 760 0 0 0 0 0 0 0 1780 1290 1290 2 + 27 02 JAN 02:00 50612 50612 96.00 437 0 0 0 810 0 300 0 50.73 760 0 0 0 0 0 0 0 1780 1270 1270 2 + 28 02 JAN 03:00 50036 50036 96.00 432 0 0 0 804 0 300 0 50.75 760 0 0 0 0 0 0 0 1780 1276 1276 2 + 29 02 JAN 04:00 49652 49652 96.00 429 0 0 0 800 0 300 0 50.78 760 0 0 0 0 0 0 0 1780 1280 1280 2 + 30 02 JAN 05:00 52148 52148 96.00 450 0 0 0 826 0 300 0 50.81 760 0 0 0 0 0 0 0 1780 1254 1254 2 + 31 02 JAN 06:00 59157 59157 107.00 511 0 0 0 895 0 300 0 50.83 760 0 0 0 0 0 0 0 1780 1185 1185 2 + 32 02 JAN 07:00 139811 139811 96.00 608 0 0 0 998 0 300 0 50.86 760 0 0 0 0 0 0 0 1780 1082 1082 69503 + 33 02 JAN 08:00 78097 78097 107.00 676 0 0 0 1072 0 300 0 50.89 760 0 0 0 0 0 0 0 1780 1008 1008 3 + 34 02 JAN 09:00 81414 81414 107.00 705 0 0 0 1103 0 300 0 50.91 760 0 0 0 0 0 0 0 1780 977 977 3 + 35 02 JAN 10:00 80665 80665 107.00 698 0 0 0 1096 0 300 0 50.94 760 0 0 0 0 0 0 0 1780 984 984 3 + 36 02 JAN 11:00 79274 79274 107.00 686 0 0 0 1083 0 300 0 50.97 760 0 0 0 0 0 0 0 1780 997 997 3 + 37 02 JAN 12:00 76492 76492 107.00 662 0 0 0 1057 0 300 0 50.99 760 0 0 0 0 0 0 0 1780 1023 1023 3 + 38 02 JAN 13:00 75743 75743 107.00 656 0 0 0 1050 0 300 0 51.02 760 0 0 0 0 0 0 0 1780 1030 1030 3 + 39 02 JAN 14:00 75422 75422 107.00 653 0 0 0 1047 0 300 0 51.05 760 0 0 0 0 0 0 0 1780 1033 1033 3 + 40 02 JAN 15:00 100920 100920 96.00 662 0 0 0 1036 0 300 0 51.07 760 0 0 0 0 0 0 0 1780 1044 1044 24504 + 41 02 JAN 16:00 79588 79588 96.00 689 0 0 0 1069 0 300 0 51.10 760 0 0 0 0 0 0 0 1780 1011 1011 4 + 42 02 JAN 17:00 84499 84499 107.00 732 0 0 0 1115 0 300 0 51.13 760 0 0 0 0 0 0 0 1780 965 965 4 + 43 02 JAN 18:00 82038 82038 107.00 711 0 0 0 1092 0 300 0 51.15 760 0 0 0 0 0 0 0 1780 988 988 4 + 44 02 JAN 19:00 79684 79684 107.00 690 0 0 0 1070 0 300 0 51.18 760 0 0 0 0 0 0 0 1780 1010 1010 4 + 45 02 JAN 20:00 79012 79012 96.00 684 0 0 0 1063 0 300 0 51.21 760 0 0 0 0 0 0 0 1780 1017 1017 4 + 46 02 JAN 21:00 77860 77860 96.00 674 0 0 0 1051 0 300 0 51.24 760 0 0 0 0 0 0 0 1780 1029 1029 4 + 47 02 JAN 22:00 71332 71332 96.00 618 0 0 0 983 0 300 0 51.26 760 0 0 0 0 0 0 0 1780 1097 1097 4 + 48 02 JAN 23:00 62596 62596 96.00 543 0 0 0 892 0 300 0 51.29 760 0 0 0 0 0 0 0 1780 1188 1188 4 + 49 03 JAN 00:00 45566 45566 96.00 393 0 0 0 749 0 300 0 51.32 760 0 0 0 0 0 0 0 680 231 231 2 + 50 03 JAN 01:00 41150 41150 96.00 355 0 0 0 703 0 300 0 51.34 760 0 0 0 0 0 0 0 680 277 277 2 + 51 03 JAN 02:00 94784 94784 96.00 397 0 0 0 700 0 300 0 51.37 760 0 0 0 0 0 0 0 680 280 280 49004 + 52 03 JAN 03:00 45784 45784 96.00 397 0 0 0 700 0 300 0 51.40 760 0 0 0 0 0 0 0 680 280 280 4 + 53 03 JAN 04:00 50104 50104 96.00 434 0 0 0 745 0 300 0 51.42 760 0 0 0 0 0 0 0 680 235 235 4 + 54 03 JAN 05:00 61144 61144 96.00 529 0 0 0 860 0 300 0 51.45 760 0 0 0 0 0 0 0 680 120 120 4 + 55 03 JAN 06:00 796354 76354 10000.00 662 0 0 0 1052 0 300 0 51.48 760 0 0 0 72 0 1.00 100.00 680 0 -72 4 + 56 03 JAN 07:00 2566354 76354 10000.00 662 0 0 0 1229 0 300 0 51.50 760 0 0 0 249 0 1.00 100.00 680 0 -249 4 + 57 03 JAN 08:00 3646354 76354 10000.00 662 0 0 0 1337 0 300 0 51.53 760 0 0 0 357 0 1.00 100.00 680 0 -357 4 + 58 03 JAN 09:00 3806354 76354 10000.00 662 0 0 0 1353 0 300 0 51.56 760 0 0 0 373 0 1.00 100.00 680 0 -373 4 + 59 03 JAN 10:00 3506354 76354 10000.00 662 0 0 0 1323 0 300 0 51.58 760 0 0 0 343 0 1.00 100.00 680 0 -343 4 + 60 03 JAN 11:00 3396354 76354 10000.00 662 0 0 0 1312 0 300 0 51.61 760 0 0 0 332 0 1.00 100.00 680 0 -332 4 + 61 03 JAN 12:00 3356354 76354 10000.00 662 0 0 0 1308 0 300 0 51.64 760 0 0 0 328 0 1.00 100.00 680 0 -328 4 + 62 03 JAN 13:00 3886354 76354 10000.00 662 0 0 0 1361 0 300 0 51.67 760 0 0 0 381 0 1.00 100.00 680 0 -381 4 + 63 03 JAN 14:00 4026354 76354 10000.00 662 0 0 0 1375 0 300 0 51.69 760 0 0 0 395 0 1.00 100.00 680 0 -395 4 + 64 03 JAN 15:00 4306354 76354 10000.00 662 0 0 0 1403 0 300 0 51.72 760 0 0 0 423 0 1.00 100.00 680 0 -423 4 + 65 03 JAN 16:00 4796354 76354 10000.00 662 0 0 0 1452 0 300 0 51.75 760 0 0 0 472 0 1.00 100.00 680 0 -472 4 + 66 03 JAN 17:00 5686354 76354 10000.00 662 0 0 0 1541 0 300 0 51.77 760 0 0 0 561 0 1.00 100.00 680 0 -561 4 + 67 03 JAN 18:00 5866354 76354 10000.00 662 0 0 0 1559 0 300 0 51.80 760 0 0 0 579 0 1.00 100.00 680 0 -579 4 + 68 03 JAN 19:00 5556354 76354 10000.00 662 0 0 0 1528 0 300 0 51.83 760 0 0 0 548 0 1.00 100.00 680 0 -548 4 + 69 03 JAN 20:00 4736354 76354 10000.00 662 0 0 0 1446 0 300 0 51.85 760 0 0 0 466 0 1.00 100.00 680 0 -466 4 + 70 03 JAN 21:00 3626354 76354 10000.00 662 0 0 0 1335 0 300 0 51.88 760 0 0 0 355 0 1.00 100.00 680 0 -355 4 + 71 03 JAN 22:00 2326354 76354 10000.00 662 0 0 0 1205 0 300 0 51.91 760 0 0 0 225 0 1.00 100.00 680 0 -225 4 + 72 03 JAN 23:00 776354 76354 10000.00 662 0 0 0 1050 0 300 0 51.93 760 0 0 0 70 0 1.00 100.00 680 0 -70 4 + 73 04 JAN 00:00 131332 131332 107.00 534 0 0 0 920 0 300 0 51.96 760 0 0 0 0 0 0 0 1780 1160 1160 69502 + 74 04 JAN 01:00 51956 51956 96.00 449 0 0 0 824 0 300 0 51.99 760 0 0 0 0 0 0 0 1780 1256 1256 2 + 75 04 JAN 02:00 46484 46484 96.00 402 0 0 0 767 0 300 0 52.01 760 0 0 0 0 0 0 0 1780 1313 1313 2 + 76 04 JAN 03:00 44276 44276 96.00 383 0 0 0 744 0 300 0 52.04 760 0 0 0 0 0 0 0 1780 1336 1336 2 + 77 04 JAN 04:00 118904 118883 -1.00 428 0 0 0 759 0 300 0 52.07 760 0 0 0 0 21 0 0 1780 1300 1321 69503 + 78 04 JAN 05:00 56775 56775 96.00 492 0 0 0 857 0 300 0 52.09 760 0 0 0 0 0 0 0 1780 1223 1223 3 + 79 04 JAN 06:00 73924 73924 107.00 640 0 0 0 1033 0 300 0 52.12 760 0 0 0 0 0 0 0 1780 1047 1047 3 + 80 04 JAN 07:00 88476 88476 107.00 766 0 0 0 1169 0 300 0 52.15 760 0 0 0 0 0 0 0 1780 911 911 3 + 81 04 JAN 08:00 96394 96394 107.00 835 0 0 0 1243 0 300 0 52.18 760 0 0 0 0 0 0 0 1780 837 837 3 + 82 04 JAN 09:00 96501 96501 107.00 836 0 0 0 1244 0 300 0 52.20 760 0 0 0 0 0 0 0 1780 836 836 3 + 83 04 JAN 10:00 95217 95217 107.00 825 0 0 0 1232 0 300 0 52.23 760 0 0 0 0 0 0 0 1780 848 848 3 + 84 04 JAN 11:00 93398 93398 107.00 809 0 0 0 1215 0 300 0 52.26 760 0 0 0 0 0 0 0 1780 865 865 3 + 85 04 JAN 12:00 91686 91686 107.00 794 0 0 0 1199 0 300 0 52.28 760 0 0 0 0 0 0 0 1780 881 881 3 + 86 04 JAN 13:00 166965 166965 107.00 845 0 0 0 1253 0 300 0 52.31 760 0 0 0 0 0 0 0 1780 827 827 69504 + 87 04 JAN 14:00 99391 99391 107.00 862 0 0 0 1271 0 300 0 52.34 760 0 0 0 0 0 0 0 1780 809 809 4 + 88 04 JAN 15:00 102601 102601 107.00 889 0 0 0 1301 0 300 0 52.36 760 0 0 0 0 0 0 0 1780 779 779 4 + 89 04 JAN 16:00 109021 109021 107.00 945 0 0 0 1361 0 300 0 52.39 760 0 0 0 0 0 0 0 1780 719 719 4 + 90 04 JAN 17:00 120577 120577 107.00 1046 0 0 0 1469 0 300 0 52.42 760 0 0 0 0 0 0 0 1780 611 611 4 + 91 04 JAN 18:00 124429 124429 107.00 1080 0 0 0 1505 0 300 0 52.44 760 0 0 0 0 0 0 0 1780 575 575 4 + 92 04 JAN 19:00 120791 120791 107.00 1048 0 0 0 1471 0 300 0 52.47 760 0 0 0 0 0 0 0 1780 609 609 4 + 93 04 JAN 20:00 111375 111375 107.00 966 0 0 0 1383 0 300 0 52.50 760 0 0 0 0 0 0 0 1780 697 697 4 + 94 04 JAN 21:00 99391 99391 107.00 862 0 0 0 1271 0 300 0 52.52 760 0 0 0 0 0 0 0 1780 809 809 4 + 95 04 JAN 22:00 88797 88797 107.00 769 0 0 0 1172 0 300 0 52.55 760 0 0 0 0 0 0 0 1780 908 908 3 + 96 04 JAN 23:00 73389 73389 107.00 635 0 0 0 1028 0 300 0 52.58 760 0 0 0 0 0 0 0 1780 1052 1052 3 + 97 05 JAN 00:00 63015 63015 96.00 546 0 0 0 922 0 300 0 52.61 760 0 0 0 0 0 0 0 1780 1158 1158 3 + 98 05 JAN 01:00 55431 55431 96.00 480 0 0 0 843 0 300 0 52.63 760 0 0 0 0 0 0 0 1780 1237 1237 3 + 99 05 JAN 02:00 52551 52551 96.00 456 0 0 0 813 0 300 0 52.66 760 0 0 0 0 0 0 0 1780 1267 1267 3 + 100 05 JAN 03:00 52167 52167 96.00 452 0 0 0 809 0 300 0 52.69 760 0 0 0 0 0 0 0 1780 1271 1271 3 + 101 05 JAN 04:00 54855 54855 96.00 475 0 0 0 837 0 300 0 52.71 760 0 0 0 0 0 0 0 1780 1243 1243 3 + 102 05 JAN 05:00 64359 64359 96.00 557 0 0 0 936 0 300 0 52.74 760 0 0 0 0 0 0 0 1780 1144 1144 3 + 103 05 JAN 06:00 83019 83019 107.00 719 0 0 0 1118 0 300 0 52.77 760 0 0 0 0 0 0 0 1780 962 962 3 + 104 05 JAN 07:00 169640 169640 107.00 868 0 0 0 1278 0 300 0 52.79 760 0 0 0 0 0 0 0 1780 802 802 69504 + 105 05 JAN 08:00 111268 111268 107.00 965 0 0 0 1382 0 300 0 52.82 760 0 0 0 0 0 0 0 1780 698 698 4 + 106 05 JAN 09:00 114264 114264 107.00 991 0 0 0 1410 0 300 0 52.85 760 0 0 0 0 0 0 0 1780 670 670 4 + 107 05 JAN 10:00 113194 113194 107.00 982 0 0 0 1400 0 300 0 52.87 760 0 0 0 0 0 0 0 1780 680 680 4 + 108 05 JAN 11:00 111589 111589 107.00 968 0 0 0 1385 0 300 0 52.90 760 0 0 0 0 0 0 0 1780 695 695 4 + 109 05 JAN 12:00 110198 110198 107.00 956 0 0 0 1372 0 300 0 52.93 760 0 0 0 0 0 0 0 1780 708 708 4 + 110 05 JAN 13:00 115869 115869 107.00 1005 0 0 0 1425 0 300 0 52.95 760 0 0 0 0 0 0 0 1780 655 655 4 + 111 05 JAN 14:00 117902 117902 107.00 1023 0 0 0 1444 0 300 0 52.98 760 0 0 0 0 0 0 0 1780 636 636 4 + 112 05 JAN 15:00 118972 118972 107.00 1032 0 0 0 1454 0 300 0 53.01 760 0 0 0 0 0 0 0 1780 626 626 4 + 113 05 JAN 16:00 193716 193716 107.00 1078 0 0 0 1503 0 300 0 53.03 760 0 0 0 0 0 0 0 1780 577 577 69505 + 114 05 JAN 17:00 133846 133846 107.00 1162 0 0 0 1593 0 300 0 53.06 760 0 0 0 0 0 0 0 1780 487 487 5 + 115 05 JAN 18:00 136200 136200 107.00 1182 0 0 0 1615 0 300 0 53.09 760 0 0 0 0 0 0 0 1780 465 465 5 + 116 05 JAN 19:00 132883 132883 107.00 1153 0 0 0 1584 0 300 0 53.12 760 0 0 0 0 0 0 0 1780 496 496 5 + 117 05 JAN 20:00 124002 124002 107.00 1076 0 0 0 1501 0 300 0 53.14 760 0 0 0 0 0 0 0 1780 579 579 5 + 118 05 JAN 21:00 110841 110841 107.00 961 0 0 0 1378 0 300 0 53.17 760 0 0 0 0 0 0 0 1780 702 702 5 + 119 05 JAN 22:00 97805 97805 96.00 848 0 0 0 1250 0 300 0 53.20 760 0 0 0 0 0 0 0 1780 830 830 5 + 120 05 JAN 23:00 81504 81485 -1.00 708 0 0 0 1061 0 300 0 53.22 760 0 0 0 0 19 0 0 1780 1000 1019 5 + 121 06 JAN 00:00 81713 81485 -1.00 708 0 0 0 852 0 300 0 53.25 760 0 0 0 0 228 0 0 1780 1000 1228 5 + 122 06 JAN 01:00 49418 49383 -1.00 428 0 0 0 745 0 300 0 53.28 760 0 0 0 0 35 0 0 1780 1300 1335 3 + 123 06 JAN 02:00 49481 49383 -1.00 428 0 0 0 682 0 300 0 53.30 760 0 0 0 0 98 0 0 1780 1300 1398 3 + 124 06 JAN 03:00 49532 49383 -1.00 428 0 0 0 631 0 300 0 53.33 760 0 0 0 0 149 0 0 1780 1300 1449 3 + 125 06 JAN 04:00 49546 49383 -1.00 428 0 0 0 617 0 300 0 53.36 760 0 0 0 0 163 0 0 1780 1300 1463 3 + 126 06 JAN 05:00 49487 49383 -1.00 428 0 0 0 676 0 300 0 53.38 760 0 0 0 0 104 0 0 1780 1300 1404 3 + 127 06 JAN 06:00 54183 54183 96.00 470 0 0 0 830 0 300 0 53.41 760 0 0 0 0 0 0 0 1780 1250 1250 3 + 128 06 JAN 07:00 70887 70887 96.00 613 0 0 0 1004 0 300 0 53.44 760 0 0 0 0 0 0 0 1780 1076 1076 3 + 129 06 JAN 08:00 84089 84089 107.00 728 0 0 0 1128 0 300 0 53.46 760 0 0 0 0 0 0 0 1780 952 952 3 + 130 06 JAN 09:00 87834 87834 107.00 761 0 0 0 1163 0 300 0 53.49 760 0 0 0 0 0 0 0 1780 917 917 3 + 131 06 JAN 10:00 155574 155574 96.00 746 0 0 0 1145 0 300 0 53.52 760 0 0 0 0 0 0 0 1780 935 935 69504 + 132 06 JAN 11:00 82618 82618 96.00 716 0 0 0 1109 0 300 0 53.55 760 0 0 0 0 0 0 0 1780 971 971 4 + 133 06 JAN 12:00 80122 80122 96.00 694 0 0 0 1083 0 300 0 53.57 760 0 0 0 0 0 0 0 1780 997 997 4 + 134 06 JAN 13:00 84346 84346 96.00 731 0 0 0 1127 0 300 0 53.60 760 0 0 0 0 0 0 0 1780 953 953 4 + 135 06 JAN 14:00 85210 85210 96.00 738 0 0 0 1136 0 300 0 53.63 760 0 0 0 0 0 0 0 1780 944 944 4 + 136 06 JAN 15:00 87226 87226 96.00 756 0 0 0 1157 0 300 0 53.65 760 0 0 0 0 0 0 0 1780 923 923 4 + 137 06 JAN 16:00 93399 93399 107.00 809 0 0 0 1215 0 300 0 53.68 760 0 0 0 0 0 0 0 1780 865 865 4 + 138 06 JAN 17:00 102708 102708 107.00 890 0 0 0 1302 0 300 0 53.71 760 0 0 0 0 0 0 0 1780 778 778 4 + 139 06 JAN 18:00 100889 100889 107.00 875 0 0 0 1285 0 300 0 53.73 760 0 0 0 0 0 0 0 1780 795 795 4 + 140 06 JAN 19:00 95217 95217 107.00 825 0 0 0 1232 0 300 0 53.76 760 0 0 0 0 0 0 0 1780 848 848 3 + 141 06 JAN 20:00 88476 88476 107.00 766 0 0 0 1169 0 300 0 53.79 760 0 0 0 0 0 0 0 1780 911 911 3 + 142 06 JAN 21:00 82377 82377 107.00 713 0 0 0 1112 0 300 0 53.81 760 0 0 0 0 0 0 0 1780 968 968 3 + 143 06 JAN 22:00 73603 73603 107.00 637 0 0 0 1030 0 300 0 53.84 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 144 06 JAN 23:00 65703 65703 96.00 569 0 0 0 950 0 300 0 53.87 760 0 0 0 0 0 0 0 1780 1130 1130 3 + 145 07 JAN 00:00 74459 74459 107.00 644 0 0 0 1038 0 300 0 53.89 760 0 0 0 0 0 0 0 1780 1042 1042 3 + 146 07 JAN 01:00 60231 60231 96.00 522 0 0 0 893 0 300 0 53.92 760 0 0 0 0 0 0 0 1780 1187 1187 3 + 147 07 JAN 02:00 49402 49383 -1.00 428 0 0 0 761 0 300 0 53.95 760 0 0 0 0 19 0 0 1780 1300 1319 3 + 148 07 JAN 03:00 49445 49383 -1.00 428 0 0 0 718 0 300 0 53.97 760 0 0 0 0 62 0 0 1780 1300 1362 3 + 149 07 JAN 04:00 135146 134934 -1.00 568 0 0 0 718 0 300 0 54.00 760 0 0 0 0 212 0 0 1780 1150 1362 69504 + 150 07 JAN 05:00 65603 65434 -1.00 568 0 0 0 761 0 300 0 54.03 760 0 0 0 0 169 0 0 1780 1150 1319 4 + 151 07 JAN 06:00 65514 65434 -1.00 568 0 0 0 850 0 300 0 54.06 760 0 0 0 0 80 0 0 1780 1150 1230 4 + 152 07 JAN 07:00 75514 75514 96.00 655 0 0 0 1035 0 300 0 54.08 760 0 0 0 0 0 0 0 1780 1045 1045 4 + 153 07 JAN 08:00 92222 92222 107.00 799 0 0 0 1204 0 300 0 54.11 760 0 0 0 0 0 0 0 1780 876 876 4 + 154 07 JAN 09:00 99819 99819 107.00 865 0 0 0 1275 0 300 0 54.14 760 0 0 0 0 0 0 0 1780 805 805 4 + 155 07 JAN 10:00 94790 94790 107.00 821 0 0 0 1228 0 300 0 54.16 760 0 0 0 0 0 0 0 1780 852 852 4 + 156 07 JAN 11:00 90296 90296 107.00 782 0 0 0 1186 0 300 0 54.19 760 0 0 0 0 0 0 0 1780 894 894 4 + 157 07 JAN 12:00 87130 87130 96.00 755 0 0 0 1156 0 300 0 54.22 760 0 0 0 0 0 0 0 1780 924 924 4 + 158 07 JAN 13:00 92436 92436 107.00 801 0 0 0 1206 0 300 0 54.24 760 0 0 0 0 0 0 0 1780 874 874 4 + 159 07 JAN 14:00 95432 95432 107.00 827 0 0 0 1234 0 300 0 54.27 760 0 0 0 0 0 0 0 1780 846 846 4 + 160 07 JAN 15:00 98107 98107 107.00 850 0 0 0 1259 0 300 0 54.30 760 0 0 0 0 0 0 0 1780 821 821 4 + 161 07 JAN 16:00 108272 108272 107.00 939 0 0 0 1354 0 300 0 54.32 760 0 0 0 0 0 0 0 1780 726 726 4 + 162 07 JAN 17:00 120577 120577 107.00 1046 0 0 0 1469 0 300 0 54.35 760 0 0 0 0 0 0 0 1780 611 611 4 + 163 07 JAN 18:00 122182 122182 107.00 1060 0 0 0 1484 0 300 0 54.38 760 0 0 0 0 0 0 0 1780 596 596 4 + 164 07 JAN 19:00 119614 119614 107.00 1038 0 0 0 1460 0 300 0 54.40 760 0 0 0 0 0 0 0 1780 620 620 4 + 165 07 JAN 20:00 113622 113622 107.00 985 0 0 0 1404 0 300 0 54.43 760 0 0 0 0 0 0 0 1780 676 676 4 + 166 07 JAN 21:00 106667 106667 107.00 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 + 167 07 JAN 22:00 96930 96930 107.00 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 4 + 168 07 JAN 23:00 80314 80314 96.00 696 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 4 diff --git a/tests/functional/data_complex_case/milp/details-hourly.txt b/tests/functional/data_complex_case/milp/details-hourly.txt new file mode 100644 index 00000000..e4c14754 --- /dev/null +++ b/tests/functional/data_complex_case/milp/details-hourly.txt @@ -0,0 +1,175 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 168 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 222 0 150 0 1 0 1 0 1 0 1 0 + 2 01 JAN 01:00 180 0 150 0 1 0 1 0 1 0 1 0 + 3 01 JAN 02:00 180 0 150 0 1 0 1 0 1 0 1 0 + 4 01 JAN 03:00 180 0 150 0 1 0 1 0 1 0 1 0 + 5 01 JAN 04:00 180 0 150 0 1 0 1 0 1 0 1 0 + 6 01 JAN 05:00 180 0 150 0 1 0 1 0 1 0 1 0 + 7 01 JAN 06:00 222 0 150 0 1 0 1 0 1 0 1 0 + 8 01 JAN 07:00 348 0 150 0 1 0 1 0 1 0 1 0 + 9 01 JAN 08:00 410 0 202 0 1 0 1 0 1 0 1 0 + 10 01 JAN 09:00 410 0 275 0 1 0 1 0 1 0 1 0 + 11 01 JAN 10:00 410 0 329 0 1 0 69502 0 1 0 2 0 + 12 01 JAN 11:00 410 0 339 0 1 0 2 0 1 0 2 0 + 13 01 JAN 12:00 410 0 320 0 1 0 2 0 1 0 2 0 + 14 01 JAN 13:00 410 0 308 0 1 0 2 0 1 0 2 0 + 15 01 JAN 14:00 400 0 300 0 1 0 2 0 1 0 2 0 + 16 01 JAN 15:00 401 0 300 0 1 0 2 0 1 0 2 0 + 17 01 JAN 16:00 410 0 344 0 1 0 2 0 1 0 2 0 + 18 01 JAN 17:00 410 0 401 0 1 0 2 0 1 0 2 0 + 19 01 JAN 18:00 410 0 361 0 1 0 2 0 1 0 2 0 + 20 01 JAN 19:00 410 0 309 0 1 0 2 0 1 0 2 0 + 21 01 JAN 20:00 387 0 300 0 1 0 2 0 1 0 2 0 + 22 01 JAN 21:00 366 0 300 0 1 0 2 0 1 0 2 0 + 23 01 JAN 22:00 322 0 300 0 1 0 2 0 1 0 2 0 + 24 01 JAN 23:00 231 0 300 0 1 0 2 0 1 0 2 0 + 25 02 JAN 00:00 202 0 300 0 1 0 2 0 1 0 2 0 + 26 02 JAN 01:00 190 0 300 0 1 0 2 0 1 0 2 0 + 27 02 JAN 02:00 210 0 300 0 1 0 2 0 1 0 2 0 + 28 02 JAN 03:00 204 0 300 0 1 0 2 0 1 0 2 0 + 29 02 JAN 04:00 200 0 300 0 1 0 2 0 1 0 2 0 + 30 02 JAN 05:00 226 0 300 0 1 0 2 0 1 0 2 0 + 31 02 JAN 06:00 295 0 300 0 1 0 2 0 1 0 2 0 + 32 02 JAN 07:00 398 0 300 0 1 0 2 0 1 0 2 0 + 33 02 JAN 08:00 410 0 362 0 1 0 2 0 1 0 2 0 + 34 02 JAN 09:00 410 0 393 0 1 0 2 0 1 0 2 0 + 35 02 JAN 10:00 410 0 386 0 1 0 2 0 1 0 2 0 + 36 02 JAN 11:00 410 0 373 0 1 0 2 0 1 0 2 0 + 37 02 JAN 12:00 410 0 347 0 1 0 2 0 1 0 2 0 + 38 02 JAN 13:00 410 0 340 0 1 0 2 0 1 0 2 0 + 39 02 JAN 14:00 410 0 337 0 1 0 2 0 1 0 2 0 + 40 02 JAN 15:00 410 0 326 0 1 0 2 0 1 0 2 0 + 41 02 JAN 16:00 410 0 359 0 1 0 2 0 1 0 2 0 + 42 02 JAN 17:00 410 0 405 0 1 0 2 0 1 0 2 0 + 43 02 JAN 18:00 410 0 382 0 1 0 2 0 1 0 2 0 + 44 02 JAN 19:00 410 0 360 0 1 0 2 0 1 0 2 0 + 45 02 JAN 20:00 410 0 353 0 1 0 2 0 1 0 2 0 + 46 02 JAN 21:00 410 0 341 0 1 0 2 0 1 0 2 0 + 47 02 JAN 22:00 410 0 273 0 1 0 1 0 1 0 1 0 + 48 02 JAN 23:00 410 0 182 0 1 0 1 0 1 0 1 0 + 49 03 JAN 00:00 389 60 0 0 1 24501 0 0 1 1 0 0 + 50 03 JAN 01:00 343 60 0 0 1 1 0 0 1 1 0 0 + 51 03 JAN 02:00 340 60 0 0 1 1 0 0 1 1 0 0 + 52 03 JAN 03:00 340 60 0 0 1 1 0 0 1 1 0 0 + 53 03 JAN 04:00 385 60 0 0 1 1 0 0 1 1 0 0 + 54 03 JAN 05:00 410 150 0 0 1 24502 0 0 1 2 0 0 + 55 03 JAN 06:00 410 270 0 0 1 24503 0 0 1 3 0 0 + 56 03 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 57 03 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 58 03 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 59 03 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 60 03 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 61 03 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 62 03 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 63 03 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 64 03 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 65 03 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 66 03 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 67 03 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 68 03 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 69 03 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 70 03 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 71 03 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 72 03 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 73 04 JAN 00:00 410 0 210 0 1 0 69501 0 1 0 1 0 + 74 04 JAN 01:00 374 0 150 0 1 0 1 0 1 0 1 0 + 75 04 JAN 02:00 317 0 150 0 1 0 1 0 1 0 1 0 + 76 04 JAN 03:00 294 0 150 0 1 0 1 0 1 0 1 0 + 77 04 JAN 04:00 309 0 150 0 1 0 1 0 1 0 1 0 + 78 04 JAN 05:00 407 0 150 0 1 0 1 0 1 0 1 0 + 79 04 JAN 06:00 410 0 323 0 1 0 69502 0 1 0 2 0 + 80 04 JAN 07:00 410 0 459 0 1 0 2 0 1 0 2 0 + 81 04 JAN 08:00 410 0 533 0 1 0 2 0 1 0 2 0 + 82 04 JAN 09:00 410 0 534 0 1 0 2 0 1 0 2 0 + 83 04 JAN 10:00 410 0 522 0 1 0 2 0 1 0 2 0 + 84 04 JAN 11:00 410 0 505 0 1 0 2 0 1 0 2 0 + 85 04 JAN 12:00 410 0 489 0 1 0 2 0 1 0 2 0 + 86 04 JAN 13:00 410 0 543 0 1 0 2 0 1 0 2 0 + 87 04 JAN 14:00 410 0 561 0 1 0 69503 0 1 0 3 0 + 88 04 JAN 15:00 410 0 591 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 651 0 1 0 3 0 1 0 3 0 + 90 04 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 91 04 JAN 18:00 410 0 795 0 1 0 3 0 1 0 3 0 + 92 04 JAN 19:00 410 0 761 0 1 0 3 0 1 0 3 0 + 93 04 JAN 20:00 410 0 673 0 1 0 3 0 1 0 3 0 + 94 04 JAN 21:00 410 0 561 0 1 0 3 0 1 0 3 0 + 95 04 JAN 22:00 410 0 462 0 1 0 3 0 1 0 3 0 + 96 04 JAN 23:00 278 0 450 0 1 0 3 0 1 0 3 0 + 97 05 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 98 05 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 99 05 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 100 05 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 101 05 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 102 05 JAN 05:00 186 0 450 0 1 0 3 0 1 0 3 0 + 103 05 JAN 06:00 368 0 450 0 1 0 3 0 1 0 3 0 + 104 05 JAN 07:00 410 0 568 0 1 0 3 0 1 0 3 0 + 105 05 JAN 08:00 410 0 672 0 1 24501 3 0 1 0 3 0 + 106 05 JAN 09:00 410 0 700 0 1 0 3 0 1 0 3 0 + 107 05 JAN 10:00 410 0 690 0 1 24501 3 0 1 0 3 0 + 108 05 JAN 11:00 410 0 675 0 1 0 3 0 1 0 3 0 + 109 05 JAN 12:00 410 0 662 0 1 0 3 0 1 0 3 0 + 110 05 JAN 13:00 410 60 655 0 1 24501 3 0 1 1 3 0 + 111 05 JAN 14:00 410 60 674 0 1 1 3 0 1 1 3 0 + 112 05 JAN 15:00 410 60 684 0 1 1 3 0 1 1 3 0 + 113 05 JAN 16:00 410 60 733 0 1 1 3 0 1 1 3 0 + 114 05 JAN 17:00 410 60 823 0 1 1 3 0 1 1 3 0 + 115 05 JAN 18:00 410 80 825 0 1 1 3 0 1 1 3 0 + 116 05 JAN 19:00 410 60 814 0 1 1 3 0 1 1 3 0 + 117 05 JAN 20:00 410 60 731 0 1 1 3 0 1 1 3 0 + 118 05 JAN 21:00 410 60 608 0 1 1 3 0 1 1 3 0 + 119 05 JAN 22:00 410 60 480 0 1 1 2 0 1 1 2 0 + 120 05 JAN 23:00 401 60 300 0 1 1 2 0 1 1 2 0 + 121 06 JAN 00:00 252 0 300 0 1 0 2 0 1 0 2 0 + 122 06 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 123 06 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 124 06 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 125 06 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 126 06 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 127 06 JAN 06:00 230 0 300 0 1 0 2 0 1 0 2 0 + 128 06 JAN 07:00 404 0 300 0 1 24501 2 0 1 0 2 0 + 129 06 JAN 08:00 410 60 358 0 1 1 2 0 1 1 2 0 + 130 06 JAN 09:00 410 60 393 0 1 1 2 0 1 1 2 0 + 131 06 JAN 10:00 410 60 375 0 1 1 2 0 1 1 2 0 + 132 06 JAN 11:00 410 60 339 0 1 1 2 0 1 1 2 0 + 133 06 JAN 12:00 410 60 313 0 1 1 2 0 1 1 2 0 + 134 06 JAN 13:00 410 60 357 0 1 1 2 0 1 1 2 0 + 135 06 JAN 14:00 410 60 366 0 1 1 2 0 1 1 2 0 + 136 06 JAN 15:00 410 60 387 0 1 1 2 0 1 1 2 0 + 137 06 JAN 16:00 410 60 445 0 1 1 2 0 1 1 2 0 + 138 06 JAN 17:00 410 60 532 0 1 1 2 0 1 1 2 0 + 139 06 JAN 18:00 410 60 515 0 1 1 2 0 1 1 2 0 + 140 06 JAN 19:00 410 0 522 0 1 0 2 0 1 0 2 0 + 141 06 JAN 20:00 410 0 459 0 1 0 2 0 1 0 2 0 + 142 06 JAN 21:00 410 0 402 0 1 0 2 0 1 0 2 0 + 143 06 JAN 22:00 410 0 320 0 1 0 2 0 1 0 2 0 + 144 06 JAN 23:00 350 0 300 0 1 0 2 0 1 0 2 0 + 145 07 JAN 00:00 410 0 328 0 1 24501 2 0 1 0 2 0 + 146 07 JAN 01:00 293 0 300 0 1 0 2 0 1 0 2 0 + 147 07 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 148 07 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 149 07 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 150 07 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 151 07 JAN 06:00 250 0 300 0 1 0 2 0 1 0 2 0 + 152 07 JAN 07:00 410 0 325 0 1 0 2 0 1 0 2 0 + 153 07 JAN 08:00 410 0 494 0 1 0 2 0 1 0 2 0 + 154 07 JAN 09:00 410 0 565 0 1 0 69503 0 1 0 3 0 + 155 07 JAN 10:00 410 0 518 0 1 0 3 0 1 0 3 0 + 156 07 JAN 11:00 410 0 476 0 1 0 3 0 1 0 3 0 + 157 07 JAN 12:00 406 0 450 0 1 0 3 0 1 0 3 0 + 158 07 JAN 13:00 410 0 496 0 1 0 3 0 1 0 3 0 + 159 07 JAN 14:00 410 0 524 0 1 0 3 0 1 0 3 0 + 160 07 JAN 15:00 410 0 549 0 1 0 3 0 1 0 3 0 + 161 07 JAN 16:00 410 0 644 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 759 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 774 0 100501 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 750 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 694 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 538 0 1 0 2 0 1 0 2 0 + 168 07 JAN 23:00 410 0 375 0 1 0 2 0 1 0 2 0 diff --git a/tests/functional/data_complex_case/milp/values-hourly.txt b/tests/functional/data_complex_case/milp/values-hourly.txt new file mode 100644 index 00000000..620bf887 --- /dev/null +++ b/tests/functional/data_complex_case/milp/values-hourly.txt @@ -0,0 +1,175 @@ +BA00 area va hourly + VARIABLES BEGIN END + 23 1 168 + +BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 37364 37364 323 0 0 0 672 0 300 0 50.03 760 0 0 0 0 0 0 0 1780 1408 1408 2 + 2 01 JAN 01:00 33363 33332 288 0 0 0 599 0 300 0 50.05 760 0 0 0 0 31 0 0 1780 1450 1481 2 + 3 01 JAN 02:00 33394 33332 288 0 0 0 568 0 300 0 50.08 760 0 0 0 0 62 0 0 1780 1450 1512 2 + 4 01 JAN 03:00 33414 33332 288 0 0 0 548 0 300 0 50.11 760 0 0 0 0 82 0 0 1780 1450 1532 2 + 5 01 JAN 04:00 33409 33332 288 0 0 0 553 0 300 0 50.13 760 0 0 0 0 77 0 0 1780 1450 1527 2 + 6 01 JAN 05:00 33370 33332 288 0 0 0 592 0 300 0 50.16 760 0 0 0 0 38 0 0 1780 1450 1488 2 + 7 01 JAN 06:00 37364 37364 323 0 0 0 672 0 300 0 50.19 760 0 0 0 0 0 0 0 1780 1408 1408 2 + 8 01 JAN 07:00 49460 49460 427 0 0 0 798 0 300 0 50.21 760 0 0 0 0 0 0 0 1780 1282 1282 2 + 9 01 JAN 08:00 60976 60976 527 0 0 0 912 0 300 0 50.24 760 0 0 0 0 0 0 0 1780 1168 1168 2 + 10 01 JAN 09:00 68787 68787 595 0 0 0 985 0 300 0 50.27 760 0 0 0 0 0 0 0 1780 1095 1095 2 + 11 01 JAN 10:00 144066 144066 645 0 0 0 1039 0 300 0 50.30 760 0 0 0 0 0 0 0 1780 1041 1041 69503 + 12 01 JAN 11:00 75636 75636 655 0 0 0 1049 0 300 0 50.32 760 0 0 0 0 0 0 0 1780 1031 1031 3 + 13 01 JAN 12:00 73603 73603 637 0 0 0 1030 0 300 0 50.35 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 14 01 JAN 13:00 72319 72319 626 0 0 0 1018 0 300 0 50.38 760 0 0 0 0 0 0 0 1780 1062 1062 3 + 15 01 JAN 14:00 70503 70503 610 0 0 0 1000 0 300 0 50.40 760 0 0 0 0 0 0 0 1780 1080 1080 3 + 16 01 JAN 15:00 70599 70599 611 0 0 0 1001 0 300 0 50.43 760 0 0 0 0 0 0 0 1780 1079 1079 3 + 17 01 JAN 16:00 76171 76171 659 0 0 0 1054 0 300 0 50.46 760 0 0 0 0 0 0 0 1780 1026 1026 3 + 18 01 JAN 17:00 82270 82270 712 0 0 0 1111 0 300 0 50.48 760 0 0 0 0 0 0 0 1780 969 969 3 + 19 01 JAN 18:00 77990 77990 675 0 0 0 1071 0 300 0 50.51 760 0 0 0 0 0 0 0 1780 1009 1009 3 + 20 01 JAN 19:00 72426 72426 627 0 0 0 1019 0 300 0 50.54 760 0 0 0 0 0 0 0 1780 1061 1061 3 + 21 01 JAN 20:00 69255 69255 599 0 0 0 987 0 300 0 50.56 760 0 0 0 0 0 0 0 1780 1093 1093 3 + 22 01 JAN 21:00 67239 67239 582 0 0 0 966 0 300 0 50.59 760 0 0 0 0 0 0 0 1780 1114 1114 3 + 23 01 JAN 22:00 63015 63015 546 0 0 0 922 0 300 0 50.62 760 0 0 0 0 0 0 0 1780 1158 1158 3 + 24 01 JAN 23:00 54279 54279 470 0 0 0 831 0 300 0 50.64 760 0 0 0 0 0 0 0 1780 1249 1249 3 + 25 02 JAN 00:00 51495 51495 446 0 0 0 802 0 300 0 50.67 760 0 0 0 0 0 0 0 1780 1278 1278 3 + 26 02 JAN 01:00 50343 50343 437 0 0 0 790 0 300 0 50.70 760 0 0 0 0 0 0 0 1780 1290 1290 3 + 27 02 JAN 02:00 52263 52263 453 0 0 0 810 0 300 0 50.73 760 0 0 0 0 0 0 0 1780 1270 1270 3 + 28 02 JAN 03:00 51687 51687 448 0 0 0 804 0 300 0 50.75 760 0 0 0 0 0 0 0 1780 1276 1276 3 + 29 02 JAN 04:00 51303 51303 445 0 0 0 800 0 300 0 50.78 760 0 0 0 0 0 0 0 1780 1280 1280 3 + 30 02 JAN 05:00 53799 53799 466 0 0 0 826 0 300 0 50.81 760 0 0 0 0 0 0 0 1780 1254 1254 3 + 31 02 JAN 06:00 60423 60423 523 0 0 0 895 0 300 0 50.83 760 0 0 0 0 0 0 0 1780 1185 1185 3 + 32 02 JAN 07:00 70311 70311 608 0 0 0 998 0 300 0 50.86 760 0 0 0 0 0 0 0 1780 1082 1082 3 + 33 02 JAN 08:00 78097 78097 676 0 0 0 1072 0 300 0 50.89 760 0 0 0 0 0 0 0 1780 1008 1008 3 + 34 02 JAN 09:00 81414 81414 705 0 0 0 1103 0 300 0 50.91 760 0 0 0 0 0 0 0 1780 977 977 3 + 35 02 JAN 10:00 80665 80665 698 0 0 0 1096 0 300 0 50.94 760 0 0 0 0 0 0 0 1780 984 984 3 + 36 02 JAN 11:00 79274 79274 686 0 0 0 1083 0 300 0 50.97 760 0 0 0 0 0 0 0 1780 997 997 3 + 37 02 JAN 12:00 76492 76492 662 0 0 0 1057 0 300 0 50.99 760 0 0 0 0 0 0 0 1780 1023 1023 3 + 38 02 JAN 13:00 75743 75743 656 0 0 0 1050 0 300 0 51.02 760 0 0 0 0 0 0 0 1780 1030 1030 3 + 39 02 JAN 14:00 75422 75422 653 0 0 0 1047 0 300 0 51.05 760 0 0 0 0 0 0 0 1780 1033 1033 3 + 40 02 JAN 15:00 74245 74245 642 0 0 0 1036 0 300 0 51.07 760 0 0 0 0 0 0 0 1780 1044 1044 3 + 41 02 JAN 16:00 77776 77776 673 0 0 0 1069 0 300 0 51.10 760 0 0 0 0 0 0 0 1780 1011 1011 3 + 42 02 JAN 17:00 82698 82698 716 0 0 0 1115 0 300 0 51.13 760 0 0 0 0 0 0 0 1780 965 965 3 + 43 02 JAN 18:00 80237 80237 695 0 0 0 1092 0 300 0 51.15 760 0 0 0 0 0 0 0 1780 988 988 3 + 44 02 JAN 19:00 77883 77883 674 0 0 0 1070 0 300 0 51.18 760 0 0 0 0 0 0 0 1780 1010 1010 3 + 45 02 JAN 20:00 77134 77134 668 0 0 0 1063 0 300 0 51.21 760 0 0 0 0 0 0 0 1780 1017 1017 3 + 46 02 JAN 21:00 75850 75850 656 0 0 0 1051 0 300 0 51.24 760 0 0 0 0 0 0 0 1780 1029 1029 3 + 47 02 JAN 22:00 68573 68573 593 0 0 0 983 0 300 0 51.26 760 0 0 0 0 0 0 0 1780 1097 1097 2 + 48 02 JAN 23:00 58836 58836 508 0 0 0 892 0 300 0 51.29 760 0 0 0 0 0 0 0 1780 1188 1188 2 + 49 03 JAN 00:00 70066 70066 393 0 0 0 749 0 300 0 51.32 760 0 0 0 0 0 0 0 680 231 231 24502 + 50 03 JAN 01:00 41150 41150 355 0 0 0 703 0 300 0 51.34 760 0 0 0 0 0 0 0 680 277 277 2 + 51 03 JAN 02:00 40862 40862 353 0 0 0 700 0 300 0 51.37 760 0 0 0 0 0 0 0 680 280 280 2 + 52 03 JAN 03:00 40862 40862 353 0 0 0 700 0 300 0 51.40 760 0 0 0 0 0 0 0 680 280 280 2 + 53 03 JAN 04:00 45182 45182 390 0 0 0 745 0 300 0 51.42 760 0 0 0 0 0 0 0 680 235 235 2 + 54 03 JAN 05:00 84413 84413 518 0 0 0 860 0 300 0 51.45 760 0 0 0 0 0 0 0 680 120 120 24503 + 55 03 JAN 06:00 820854 100854 662 0 0 0 1052 0 300 0 51.48 760 0 0 0 72 0 1.00 100.00 680 0 -72 24504 + 56 03 JAN 07:00 2566354 76354 662 0 0 0 1229 0 300 0 51.50 760 0 0 0 249 0 1.00 100.00 680 0 -249 4 + 57 03 JAN 08:00 3646354 76354 662 0 0 0 1337 0 300 0 51.53 760 0 0 0 357 0 1.00 100.00 680 0 -357 4 + 58 03 JAN 09:00 3806354 76354 662 0 0 0 1353 0 300 0 51.56 760 0 0 0 373 0 1.00 100.00 680 0 -373 4 + 59 03 JAN 10:00 3506354 76354 662 0 0 0 1323 0 300 0 51.58 760 0 0 0 343 0 1.00 100.00 680 0 -343 4 + 60 03 JAN 11:00 3396354 76354 662 0 0 0 1312 0 300 0 51.61 760 0 0 0 332 0 1.00 100.00 680 0 -332 4 + 61 03 JAN 12:00 3356354 76354 662 0 0 0 1308 0 300 0 51.64 760 0 0 0 328 0 1.00 100.00 680 0 -328 4 + 62 03 JAN 13:00 3886354 76354 662 0 0 0 1361 0 300 0 51.67 760 0 0 0 381 0 1.00 100.00 680 0 -381 4 + 63 03 JAN 14:00 4026354 76354 662 0 0 0 1375 0 300 0 51.69 760 0 0 0 395 0 1.00 100.00 680 0 -395 4 + 64 03 JAN 15:00 4306354 76354 662 0 0 0 1403 0 300 0 51.72 760 0 0 0 423 0 1.00 100.00 680 0 -423 4 + 65 03 JAN 16:00 4796354 76354 662 0 0 0 1452 0 300 0 51.75 760 0 0 0 472 0 1.00 100.00 680 0 -472 4 + 66 03 JAN 17:00 5686354 76354 662 0 0 0 1541 0 300 0 51.77 760 0 0 0 561 0 1.00 100.00 680 0 -561 4 + 67 03 JAN 18:00 5866354 76354 662 0 0 0 1559 0 300 0 51.80 760 0 0 0 579 0 1.00 100.00 680 0 -579 4 + 68 03 JAN 19:00 5556354 76354 662 0 0 0 1528 0 300 0 51.83 760 0 0 0 548 0 1.00 100.00 680 0 -548 4 + 69 03 JAN 20:00 4736354 76354 662 0 0 0 1446 0 300 0 51.85 760 0 0 0 466 0 1.00 100.00 680 0 -466 4 + 70 03 JAN 21:00 3626354 76354 662 0 0 0 1335 0 300 0 51.88 760 0 0 0 355 0 1.00 100.00 680 0 -355 4 + 71 03 JAN 22:00 2326354 76354 662 0 0 0 1205 0 300 0 51.91 760 0 0 0 225 0 1.00 100.00 680 0 -225 4 + 72 03 JAN 23:00 776354 76354 662 0 0 0 1050 0 300 0 51.93 760 0 0 0 70 0 1.00 100.00 680 0 -70 4 + 73 04 JAN 00:00 131332 131332 534 0 0 0 920 0 300 0 51.96 760 0 0 0 0 0 0 0 1780 1160 1160 69502 + 74 04 JAN 01:00 51956 51956 449 0 0 0 824 0 300 0 51.99 760 0 0 0 0 0 0 0 1780 1256 1256 2 + 75 04 JAN 02:00 46484 46484 402 0 0 0 767 0 300 0 52.01 760 0 0 0 0 0 0 0 1780 1313 1313 2 + 76 04 JAN 03:00 44276 44276 383 0 0 0 744 0 300 0 52.04 760 0 0 0 0 0 0 0 1780 1336 1336 2 + 77 04 JAN 04:00 45716 45716 395 0 0 0 759 0 300 0 52.07 760 0 0 0 0 0 0 0 1780 1321 1321 2 + 78 04 JAN 05:00 55124 55124 476 0 0 0 857 0 300 0 52.09 760 0 0 0 0 0 0 0 1780 1223 1223 2 + 79 04 JAN 06:00 143424 143424 640 0 0 0 1033 0 300 0 52.12 760 0 0 0 0 0 0 0 1780 1047 1047 69503 + 80 04 JAN 07:00 88476 88476 766 0 0 0 1169 0 300 0 52.15 760 0 0 0 0 0 0 0 1780 911 911 3 + 81 04 JAN 08:00 96394 96394 835 0 0 0 1243 0 300 0 52.18 760 0 0 0 0 0 0 0 1780 837 837 3 + 82 04 JAN 09:00 96501 96501 836 0 0 0 1244 0 300 0 52.20 760 0 0 0 0 0 0 0 1780 836 836 3 + 83 04 JAN 10:00 95217 95217 825 0 0 0 1232 0 300 0 52.23 760 0 0 0 0 0 0 0 1780 848 848 3 + 84 04 JAN 11:00 93398 93398 809 0 0 0 1215 0 300 0 52.26 760 0 0 0 0 0 0 0 1780 865 865 3 + 85 04 JAN 12:00 91686 91686 794 0 0 0 1199 0 300 0 52.28 760 0 0 0 0 0 0 0 1780 881 881 3 + 86 04 JAN 13:00 97464 97464 845 0 0 0 1253 0 300 0 52.31 760 0 0 0 0 0 0 0 1780 827 827 3 + 87 04 JAN 14:00 168891 168891 862 0 0 0 1271 0 300 0 52.34 760 0 0 0 0 0 0 0 1780 809 809 69504 + 88 04 JAN 15:00 102601 102601 889 0 0 0 1301 0 300 0 52.36 760 0 0 0 0 0 0 0 1780 779 779 4 + 89 04 JAN 16:00 109021 109021 945 0 0 0 1361 0 300 0 52.39 760 0 0 0 0 0 0 0 1780 719 719 4 + 90 04 JAN 17:00 120577 120577 1046 0 0 0 1469 0 300 0 52.42 760 0 0 0 0 0 0 0 1780 611 611 4 + 91 04 JAN 18:00 124429 124429 1080 0 0 0 1505 0 300 0 52.44 760 0 0 0 0 0 0 0 1780 575 575 4 + 92 04 JAN 19:00 120791 120791 1048 0 0 0 1471 0 300 0 52.47 760 0 0 0 0 0 0 0 1780 609 609 4 + 93 04 JAN 20:00 111375 111375 966 0 0 0 1383 0 300 0 52.50 760 0 0 0 0 0 0 0 1780 697 697 4 + 94 04 JAN 21:00 99391 99391 862 0 0 0 1271 0 300 0 52.52 760 0 0 0 0 0 0 0 1780 809 809 4 + 95 04 JAN 22:00 88798 88798 769 0 0 0 1172 0 300 0 52.55 760 0 0 0 0 0 0 0 1780 908 908 4 + 96 04 JAN 23:00 74842 74842 649 0 0 0 1028 0 300 0 52.58 760 0 0 0 0 0 0 0 1780 1052 1052 4 + 97 05 JAN 00:00 65442 65434 568 0 0 0 922 0 300 0 52.61 760 0 0 0 0 8 0 0 1780 1150 1158 4 + 98 05 JAN 01:00 65521 65434 568 0 0 0 843 0 300 0 52.63 760 0 0 0 0 87 0 0 1780 1150 1237 4 + 99 05 JAN 02:00 65551 65434 568 0 0 0 813 0 300 0 52.66 760 0 0 0 0 117 0 0 1780 1150 1267 4 + 100 05 JAN 03:00 65555 65434 568 0 0 0 809 0 300 0 52.69 760 0 0 0 0 121 0 0 1780 1150 1271 4 + 101 05 JAN 04:00 65527 65434 568 0 0 0 837 0 300 0 52.71 760 0 0 0 0 93 0 0 1780 1150 1243 4 + 102 05 JAN 05:00 66010 66010 573 0 0 0 936 0 300 0 52.74 760 0 0 0 0 0 0 0 1780 1144 1144 4 + 103 05 JAN 06:00 83482 83482 723 0 0 0 1118 0 300 0 52.77 760 0 0 0 0 0 0 0 1780 962 962 4 + 104 05 JAN 07:00 100140 100140 868 0 0 0 1278 0 300 0 52.79 760 0 0 0 0 0 0 0 1780 802 802 4 + 105 05 JAN 08:00 135769 135769 965 0 0 0 1382 0 300 0 52.82 760 0 0 0 0 0 0 0 1780 698 698 24505 + 106 05 JAN 09:00 114264 114264 991 0 0 0 1410 0 300 0 52.85 760 0 0 0 0 0 0 0 1780 670 670 4 + 107 05 JAN 10:00 137695 137695 982 0 0 0 1400 0 300 0 52.87 760 0 0 0 0 0 0 0 1780 680 680 24505 + 108 05 JAN 11:00 111589 111589 968 0 0 0 1385 0 300 0 52.90 760 0 0 0 0 0 0 0 1780 695 695 4 + 109 05 JAN 12:00 110198 110198 956 0 0 0 1372 0 300 0 52.93 760 0 0 0 0 0 0 0 1780 708 708 4 + 110 05 JAN 13:00 142170 142170 1021 0 0 0 1425 0 300 0 52.95 760 0 0 0 0 0 0 0 1780 655 655 24505 + 111 05 JAN 14:00 119703 119703 1039 0 0 0 1444 0 300 0 52.98 760 0 0 0 0 0 0 0 1780 636 636 5 + 112 05 JAN 15:00 120773 120773 1048 0 0 0 1454 0 300 0 53.01 760 0 0 0 0 0 0 0 1780 626 626 5 + 113 05 JAN 16:00 126016 126016 1094 0 0 0 1503 0 300 0 53.03 760 0 0 0 0 0 0 0 1780 577 577 5 + 114 05 JAN 17:00 135646 135646 1177 0 0 0 1593 0 300 0 53.06 760 0 0 0 0 0 0 0 1780 487 487 5 + 115 05 JAN 18:00 138600 138600 1203 0 0 0 1615 0 300 0 53.09 760 0 0 0 0 0 0 0 1780 465 465 5 + 116 05 JAN 19:00 134683 134683 1169 0 0 0 1584 0 300 0 53.12 760 0 0 0 0 0 0 0 1780 496 496 5 + 117 05 JAN 20:00 125802 125802 1092 0 0 0 1501 0 300 0 53.14 760 0 0 0 0 0 0 0 1780 579 579 5 + 118 05 JAN 21:00 112641 112641 977 0 0 0 1378 0 300 0 53.17 760 0 0 0 0 0 0 0 1780 702 702 5 + 119 05 JAN 22:00 98944 98944 858 0 0 0 1250 0 300 0 53.20 760 0 0 0 0 0 0 0 1780 830 830 4 + 120 05 JAN 23:00 78820 78820 683 0 0 0 1061 0 300 0 53.22 760 0 0 0 0 0 0 0 1780 1019 1019 4 + 121 06 JAN 00:00 56295 56295 488 0 0 0 852 0 300 0 53.25 760 0 0 0 0 0 0 0 1780 1228 1228 3 + 122 06 JAN 01:00 49418 49383 428 0 0 0 745 0 300 0 53.28 760 0 0 0 0 35 0 0 1780 1300 1335 3 + 123 06 JAN 02:00 49481 49383 428 0 0 0 682 0 300 0 53.30 760 0 0 0 0 98 0 0 1780 1300 1398 3 + 124 06 JAN 03:00 49532 49383 428 0 0 0 631 0 300 0 53.33 760 0 0 0 0 149 0 0 1780 1300 1449 3 + 125 06 JAN 04:00 49546 49383 428 0 0 0 617 0 300 0 53.36 760 0 0 0 0 163 0 0 1780 1300 1463 3 + 126 06 JAN 05:00 49487 49383 428 0 0 0 676 0 300 0 53.38 760 0 0 0 0 104 0 0 1780 1300 1404 3 + 127 06 JAN 06:00 54183 54183 470 0 0 0 830 0 300 0 53.41 760 0 0 0 0 0 0 0 1780 1250 1250 3 + 128 06 JAN 07:00 95388 95388 613 0 0 0 1004 0 300 0 53.44 760 0 0 0 0 0 0 0 1780 1076 1076 24504 + 129 06 JAN 08:00 85890 85890 744 0 0 0 1128 0 300 0 53.46 760 0 0 0 0 0 0 0 1780 952 952 4 + 130 06 JAN 09:00 89635 89635 777 0 0 0 1163 0 300 0 53.49 760 0 0 0 0 0 0 0 1780 917 917 4 + 131 06 JAN 10:00 87709 87709 760 0 0 0 1145 0 300 0 53.52 760 0 0 0 0 0 0 0 1780 935 935 4 + 132 06 JAN 11:00 83857 83857 726 0 0 0 1109 0 300 0 53.55 760 0 0 0 0 0 0 0 1780 971 971 4 + 133 06 JAN 12:00 81075 81075 702 0 0 0 1083 0 300 0 53.57 760 0 0 0 0 0 0 0 1780 997 997 4 + 134 06 JAN 13:00 85783 85783 743 0 0 0 1127 0 300 0 53.60 760 0 0 0 0 0 0 0 1780 953 953 4 + 135 06 JAN 14:00 86746 86746 752 0 0 0 1136 0 300 0 53.63 760 0 0 0 0 0 0 0 1780 944 944 4 + 136 06 JAN 15:00 88993 88993 771 0 0 0 1157 0 300 0 53.65 760 0 0 0 0 0 0 0 1780 923 923 4 + 137 06 JAN 16:00 95199 95199 825 0 0 0 1215 0 300 0 53.68 760 0 0 0 0 0 0 0 1780 865 865 4 + 138 06 JAN 17:00 104508 104508 906 0 0 0 1302 0 300 0 53.71 760 0 0 0 0 0 0 0 1780 778 778 4 + 139 06 JAN 18:00 102689 102689 890 0 0 0 1285 0 300 0 53.73 760 0 0 0 0 0 0 0 1780 795 795 4 + 140 06 JAN 19:00 95217 95217 825 0 0 0 1232 0 300 0 53.76 760 0 0 0 0 0 0 0 1780 848 848 3 + 141 06 JAN 20:00 88476 88476 766 0 0 0 1169 0 300 0 53.79 760 0 0 0 0 0 0 0 1780 911 911 3 + 142 06 JAN 21:00 82377 82377 713 0 0 0 1112 0 300 0 53.81 760 0 0 0 0 0 0 0 1780 968 968 3 + 143 06 JAN 22:00 73603 73603 637 0 0 0 1030 0 300 0 53.84 760 0 0 0 0 0 0 0 1780 1050 1050 3 + 144 06 JAN 23:00 65703 65703 569 0 0 0 950 0 300 0 53.87 760 0 0 0 0 0 0 0 1780 1130 1130 3 + 145 07 JAN 00:00 98960 98960 644 0 0 0 1038 0 300 0 53.89 760 0 0 0 0 0 0 0 1780 1042 1042 24504 + 146 07 JAN 01:00 60231 60231 522 0 0 0 893 0 300 0 53.92 760 0 0 0 0 0 0 0 1780 1187 1187 3 + 147 07 JAN 02:00 49402 49383 428 0 0 0 761 0 300 0 53.95 760 0 0 0 0 19 0 0 1780 1300 1319 3 + 148 07 JAN 03:00 49445 49383 428 0 0 0 718 0 300 0 53.97 760 0 0 0 0 62 0 0 1780 1300 1362 3 + 149 07 JAN 04:00 49445 49383 428 0 0 0 718 0 300 0 54.00 760 0 0 0 0 62 0 0 1780 1300 1362 3 + 150 07 JAN 05:00 49402 49383 428 0 0 0 761 0 300 0 54.03 760 0 0 0 0 19 0 0 1780 1300 1319 3 + 151 07 JAN 06:00 56103 56103 486 0 0 0 850 0 300 0 54.06 760 0 0 0 0 0 0 0 1780 1230 1230 3 + 152 07 JAN 07:00 74138 74138 642 0 0 0 1035 0 300 0 54.08 760 0 0 0 0 0 0 0 1780 1045 1045 3 + 153 07 JAN 08:00 92221 92221 799 0 0 0 1204 0 300 0 54.11 760 0 0 0 0 0 0 0 1780 876 876 3 + 154 07 JAN 09:00 169319 169319 865 0 0 0 1275 0 300 0 54.14 760 0 0 0 0 0 0 0 1780 805 805 69504 + 155 07 JAN 10:00 94790 94790 821 0 0 0 1228 0 300 0 54.16 760 0 0 0 0 0 0 0 1780 852 852 4 + 156 07 JAN 11:00 90296 90296 782 0 0 0 1186 0 300 0 54.19 760 0 0 0 0 0 0 0 1780 894 894 4 + 157 07 JAN 12:00 87130 87130 755 0 0 0 1156 0 300 0 54.22 760 0 0 0 0 0 0 0 1780 924 924 4 + 158 07 JAN 13:00 92436 92436 801 0 0 0 1206 0 300 0 54.24 760 0 0 0 0 0 0 0 1780 874 874 4 + 159 07 JAN 14:00 95432 95432 827 0 0 0 1234 0 300 0 54.27 760 0 0 0 0 0 0 0 1780 846 846 4 + 160 07 JAN 15:00 98107 98107 850 0 0 0 1259 0 300 0 54.30 760 0 0 0 0 0 0 0 1780 821 821 4 + 161 07 JAN 16:00 108272 108272 939 0 0 0 1354 0 300 0 54.32 760 0 0 0 0 0 0 0 1780 726 726 4 + 162 07 JAN 17:00 120577 120577 1046 0 0 0 1469 0 300 0 54.35 760 0 0 0 0 0 0 0 1780 611 611 4 + 163 07 JAN 18:00 222682 222682 1060 0 0 0 1484 0 300 0 54.38 760 0 0 0 0 0 0 0 1780 596 596 100504 + 164 07 JAN 19:00 119614 119614 1038 0 0 0 1460 0 300 0 54.40 760 0 0 0 0 0 0 0 1780 620 620 4 + 165 07 JAN 20:00 113622 113622 985 0 0 0 1404 0 300 0 54.43 760 0 0 0 0 0 0 0 1780 676 676 4 + 166 07 JAN 21:00 106667 106667 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 + 167 07 JAN 22:00 96929 96929 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 3 + 168 07 JAN 23:00 79488 79488 688 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 3 diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 08773a65..2f3ff100 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -345,38 +345,78 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL - output = OutputValues(problem) - assert sum( # type:ignore - output.component("G1").var("generation").value[0] # type:ignore - ) == pytest.approx(60670) - assert sum( # type:ignore - output.component("G1").var("nb_on").value[0] # type:ignore - ) == pytest.approx(168) - - assert sum( # type:ignore - output.component("G2").var("generation").value[0] # type:ignore - ) == pytest.approx(6650) - assert sum( # type:ignore - output.component("G2").var("nb_on").value[0] # type:ignore - ) == pytest.approx(83) - - assert sum( # type:ignore - output.component("G3").var("generation").value[0] # type:ignore - ) == pytest.approx(60154) - assert sum( # type:ignore - output.component("G3").var("nb_on").value[0] # type:ignore - ) == pytest.approx(315) - - assert sum( # type:ignore - output.component("S").var("spillage").value[0] # type:ignore - ) == pytest.approx(1427) - assert sum( # type:ignore - output.component("U").var("unsupplied_energy").value[0] # type:ignore - ) == pytest.approx(6529) + check_output_values(problem, "milp") assert problem.solver.Objective().Value() == pytest.approx(78933841) +def check_output_values(problem: OptimizationProblem, mode: str) -> None: + output = OutputValues(problem) + + expected_output_clusters_file = open( + "tests/functional/data_complex_case/" + mode + "/details-hourly.txt", "r" + ) + expected_output_clusters = expected_output_clusters_file.readlines() + + expected_output_general_file = open( + "tests/functional/data_complex_case/" + mode + "/values-hourly.txt", "r" + ) + expected_output_general = expected_output_general_file.readlines() + + assert output.component("G1").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[4])) + for line in expected_output_clusters[7:] + ] + ] + assert output.component("G1").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[12])) + for line in expected_output_clusters[7:] + ] + ] + + assert output.component("G2").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[5])) + for line in expected_output_clusters[7:] + ] + ] + assert output.component("G2").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[13])) + for line in expected_output_clusters[7:] + ] + ] + + assert output.component("G3").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[6])) + for line in expected_output_clusters[7:] + ] + ] + assert output.component("G3").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[14])) + for line in expected_output_clusters[7:] + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(float(line.strip().split("\t")[20 if mode == "milp" else 21])) + for line in expected_output_general[7:] + ] + ] + + assert output.component("U").var("unsupplied_energy").value == [ + [ + pytest.approx(float(line.strip().split("\t")[19 if mode == "milp" else 20])) + for line in expected_output_general[7:] + ] + ] + + def test_accurate_heuristic() -> None: """ Solve the same problem as before with the heuristic accurate of Antares @@ -441,34 +481,7 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL assert problem_optimization_2.solver.Objective().Value() == 78996726 - output = OutputValues(problem_optimization_2) - assert sum( # type:ignore - output.component("G1").var("generation").value[0] # type:ignore - ) == pytest.approx(60625) - assert sum( # type:ignore - output.component("G1").var("nb_on").value[0] # type:ignore - ) == pytest.approx(168) - - assert sum( # type:ignore - output.component("G2").var("generation").value[0] # type:ignore - ) == pytest.approx(5730) - assert sum( # type:ignore - output.component("G2").var("nb_on").value[0] # type:ignore - ) == pytest.approx(68) - - assert sum( # type:ignore - output.component("G3").var("generation").value[0] # type:ignore - ) == pytest.approx(61119) - assert sum( # type:ignore - output.component("G3").var("nb_on").value[0] # type:ignore - ) == pytest.approx(320) - - assert sum( # type:ignore - output.component("S").var("spillage").value[0] # type:ignore - ) == pytest.approx(1427) - assert sum( # type:ignore - output.component("U").var("unsupplied_energy").value[0] # type:ignore - ) == pytest.approx(6529) + check_output_values(problem_optimization_2, "accurate") def test_fast_heuristic() -> None: From 3427eb45b6ed4332683774b2eeb372eef7585a49 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 4 Jun 2024 18:08:37 +0200 Subject: [PATCH 10/93] fast heuristic for complex case --- .../functional/test_heuristic_complex_case.py | 217 +++++++----------- .../functional/test_heuristic_simple_case.py | 80 ++----- 2 files changed, 108 insertions(+), 189 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 2f3ff100..41955009 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -232,12 +232,13 @@ float_parameter("cost", CONSTANT), int_parameter("nb_units_max", CONSTANT), float_parameter("mingen", TIME_AND_SCENARIO_FREE), + float_parameter("failures", TIME_AND_SCENARIO_FREE), ], variables=[ float_variable( "generation", lower_bound=param("mingen"), - upper_bound=param("nb_units_max") * param("p_max"), + upper_bound=param("failures"), structure=ANTICIPATIVE_TIME_VARYING, ), ], @@ -248,7 +249,12 @@ definition=var("generation"), ) ], - constraints=[], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * param("nb_units_max"), + ), + ], objective_operational_contribution=(param("cost") * var("generation")) .sum() .expec(), @@ -369,12 +375,13 @@ def check_output_values(problem: OptimizationProblem, mode: str) -> None: for line in expected_output_clusters[7:] ] ] - assert output.component("G1").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[12])) - for line in expected_output_clusters[7:] + if mode != "fast": + assert output.component("G1").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[12])) + for line in expected_output_clusters[7:] + ] ] - ] assert output.component("G2").var("generation").value == [ [ @@ -382,12 +389,13 @@ def check_output_values(problem: OptimizationProblem, mode: str) -> None: for line in expected_output_clusters[7:] ] ] - assert output.component("G2").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[13])) - for line in expected_output_clusters[7:] + if mode != "fast": + assert output.component("G2").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[13])) + for line in expected_output_clusters[7:] + ] ] - ] assert output.component("G3").var("generation").value == [ [ @@ -395,12 +403,13 @@ def check_output_values(problem: OptimizationProblem, mode: str) -> None: for line in expected_output_clusters[7:] ] ] - assert output.component("G3").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[14])) - for line in expected_output_clusters[7:] + if mode != "fast": + assert output.component("G3").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[14])) + for line in expected_output_clusters[7:] + ] ] - ] assert output.component("S").var("spillage").value == [ [ @@ -487,35 +496,22 @@ def test_accurate_heuristic() -> None: def test_fast_heuristic() -> None: """ Solve the same problem as before with the heuristic fast of Antares - Model on 168 time steps with one thermal generation and one demand on a single node. - - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW - - Thermal generation is characterized with: - - P_min = 700 MW - - P_max = 1000 MW - - Min up time = 3 - - Min down time = 10 - - Generation cost = 50€ / MWh - - Startup cost = 50 - - Fixed cost = 1 /h - - Number of unit = 3 - - Unsupplied energy = 1000 €/MWh - - Spillage = 0 €/MWh - - The optimal solution consists in having 3 units turned on between time steps 10 and 19 with production equal to 2100 to respect pmin and 2 the rest of the time. - - The optimal cost is then : - 50 x 2000 x 158 (prod step 1-9 and 20-168) - + 50 x 2100 x 10 (prod step 10-19) - = 16 850 000 """ number_hours = 168 + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + # First optimization problem_optimization_1 = create_complex_problem( - ConstantData(0), number_hours, lp_relaxation=True, fast=True + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=True, ) - status = problem_optimization_1.solver.Solve() + status = problem_optimization_1.solver.Solve(parameters) assert status == problem_optimization_1.solver.OPTIMAL @@ -523,54 +519,29 @@ def test_fast_heuristic() -> None: output_1 = OutputValues(problem_optimization_1) # Solve heuristic problem - mingen_heuristic = create_problem_fast_heuristic( - output_1.component("G").var("generation").value, - number_hours, - ) - - mingen = TimeScenarioSeriesData(mingen_heuristic) - - for time_step in range(number_hours): - assert ( - mingen_heuristic.iloc[time_step, 0] == 3 * 700 - if time_step in [t for t in range(10, 20)] - else 2 * 700 + mingen: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + mingen_heuristic = create_problem_fast_heuristic( + output_1.component(g).var("generation").value, # type:ignore + number_hours, + thermal_cluster=g, ) + mingen[g] = TimeScenarioSeriesData(mingen_heuristic) + # Second optimization with lower bound modified problem_optimization_2 = create_complex_problem( mingen, number_hours, lp_relaxation=True, fast=True ) - status = problem_optimization_2.solver.Solve() + status = problem_optimization_2.solver.Solve(parameters) assert status == problem_optimization_2.solver.OPTIMAL - assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) - output = OutputValues(problem_optimization_2) - assert output.component("G").var("generation").value == [ - [ - ( - pytest.approx(2100.0) - if time_step in [t for t in range(10, 20)] - else pytest.approx(2000.0) - ) - for time_step in range(number_hours) - ] - ] + check_output_values(problem_optimization_2, "fast") - assert output.component("S").var("spillage").value == [ - [ - ( - pytest.approx(100.0) - if time_step in [t for t in range(10, 20) if t != 12] - else (pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0)) - ) - for time_step in range(number_hours) - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + 79277215 - 630089 + ) def create_complex_problem( @@ -932,10 +903,20 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], number_hours: int + lower_bound: List[List[float]], number_hours: int, thermal_cluster: str ) -> pd.DataFrame: - delta = 10 + delta = {"G1": 8, "G2": 11, "G3": 9}[thermal_cluster] + pmax = {"G1": 410, "G2": 90, "G3": 275}[thermal_cluster] + pmin = {"G1": 180, "G2": 60, "G3": 150}[thermal_cluster] + pdispo = { + "G1": np.array(410), + "G2": np.array(270), + "G3": np.reshape( + np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), (168, 1) + ), + } + cost = pd.DataFrame( np.zeros((delta + 1, 1)), index=[i for i in range(delta + 1)], @@ -944,63 +925,33 @@ def create_problem_fast_heuristic( n = np.zeros((number_hours, delta + 1, 1)) for h in range(delta + 1): cost_h = 0 - t = 0 - while t < number_hours: - if t < h: - n_k = max( - [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] - + [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(number_hours - delta + h, number_hours) - ] - ) - cost_h += (h - 1) * n_k - n[0:h, h, 0] = n_k - t = h - else: - k = floor((t - h) / delta) * delta + h - n_k = max( - [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(k, min(number_hours, k + delta)) - ] - ) - cost_h += delta * n_k - n[k : min(number_hours, k + delta), h, 0] = n_k - if t + delta < number_hours: - t += delta - else: - t = number_hours + n_k = max( + [convert_to_integer(lower_bound[0][j] / pmax) for j in range(h)] + + [ + convert_to_integer(lower_bound[0][j] / pmax) + for j in range(number_hours - delta + h, number_hours) + ] + ) + cost_h += delta * n_k + n[0:h, h, 0] = n_k + n[number_hours - delta + h : number_hours, h, 0] = n_k + t = h + while t < number_hours - delta + h: + k = floor((t - h) / delta) * delta + h + n_k = max( + [ + convert_to_integer(lower_bound[0][j] / pmax) + for j in range(k, min(number_hours - delta + h, k + delta)) + ] + ) + cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k + n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k + t += delta cost.iloc[h, 0] = cost_h - database = DataBase() - - database.add_data("G", "cost", TimeScenarioSeriesData(cost)) - - time_block = TimeBlock(1, [i for i in range(10)]) - scenarios = 1 - - gen = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="G") - - network = Network("test") - network.add_component(gen) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) - - status = problem.solver.Solve() - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - h = np.argmax(output_heuristic.component("G").var("t_ajust").value[0]) + hmin = np.argmin(cost.values[:, 0]) mingen_heuristic = pd.DataFrame( - n[:, h, :] * 700, + np.minimum(n[:, hmin, :] * pmin, pdispo[thermal_cluster]), index=[i for i in range(number_hours)], columns=[0], ) diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index fc549e3c..5cc0518b 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -767,65 +767,33 @@ def create_problem_fast_heuristic( n = np.zeros((number_hours, delta + 1, 1)) for h in range(delta + 1): cost_h = 0 - t = 0 - while t < number_hours: - if t < h: - n_k = max( - [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] - + [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(number_hours - delta + h, number_hours) - ] - ) - cost_h += (h - 1) * n_k - n[0:h, h, 0] = n_k - t = h - else: - k = floor((t - h) / delta) * delta + h - n_k = max( - [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(k, min(number_hours, k + delta)) - ] - ) - cost_h += delta * n_k - n[k : min(number_hours, k + delta), h, 0] = n_k - if t + delta < number_hours: - t += delta - else: - t = number_hours + n_k = max( + [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] + + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(number_hours - delta + h, number_hours) + ] + ) + cost_h += delta * n_k + n[0:h, h, 0] = n_k + n[number_hours - delta + h : number_hours, h, 0] = n_k + t = h + while t < number_hours - delta + h: + k = floor((t - h) / delta) * delta + h + n_k = max( + [ + convert_to_integer(lower_bound[0][j] / 1000) + for j in range(k, min(number_hours - delta + h, k + delta)) + ] + ) + cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k + n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k + t += delta cost.iloc[h, 0] = cost_h - database = DataBase() - - database.add_data("G", "cost", TimeScenarioSeriesData(cost)) - - time_block = TimeBlock(1, [i for i in range(10)]) - scenarios = 1 - - gen = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="G") - - network = Network("test") - network.add_component(gen) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) - - status = problem.solver.Solve() - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - h = np.argmax( - output_heuristic.component("G").var("t_ajust").value[0] # type:ignore - ) + hmin = np.argmin(cost.values[:, 0]) mingen_heuristic = pd.DataFrame( - n[:, h, :] * 700, + n[:, hmin, :] * 700, index=[i for i in range(number_hours)], columns=[0], ) From c79ba8fdc96ec11fe89bdff9e18b5ce13fc1a302 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 5 Jun 2024 15:21:45 +0200 Subject: [PATCH 11/93] Test for 2 weeks --- .../accurate/details-hourly.txt | 170 +++++- .../accurate/values-hourly.txt | 170 +++++- .../data_complex_case/fast/details-hourly.txt | 170 +++++- .../data_complex_case/fast/values-hourly.txt | 170 +++++- .../data_complex_case/milp/details-hourly.txt | 178 +++++- .../data_complex_case/milp/values-hourly.txt | 178 +++++- .../functional/test_heuristic_complex_case.py | 523 +++++++----------- 7 files changed, 1224 insertions(+), 335 deletions(-) diff --git a/tests/functional/data_complex_case/accurate/details-hourly.txt b/tests/functional/data_complex_case/accurate/details-hourly.txt index f04634bd..907a58ee 100644 --- a/tests/functional/data_complex_case/accurate/details-hourly.txt +++ b/tests/functional/data_complex_case/accurate/details-hourly.txt @@ -1,6 +1,6 @@ BA00 area de hourly VARIABLES BEGIN END - 12 1 168 + 12 1 336 BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU @@ -173,3 +173,171 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 167 07 JAN 22:00 410 0 538 0 1 0 2 0 1 0 2 0 168 07 JAN 23:00 410 0 375 0 1 0 2 0 1 0 2 0 + 169 08 JAN 00:00 180 0 450 0 1 0 69503 0 1 0 3 0 + 170 08 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 171 08 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 172 08 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 173 08 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 174 08 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 175 08 JAN 06:00 324 0 450 0 1 0 3 0 1 0 3 0 + 176 08 JAN 07:00 410 0 543 0 1 0 3 0 1 0 3 0 + 177 08 JAN 08:00 410 0 663 0 1 0 3 0 1 0 3 0 + 178 08 JAN 09:00 410 0 705 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 680 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 0 684 0 1 0 3 0 1 0 3 0 + 181 08 JAN 12:00 410 0 685 0 1 0 3 0 1 0 3 0 + 182 08 JAN 13:00 410 0 743 0 1 0 3 0 1 0 3 0 + 183 08 JAN 14:00 410 0 778 0 1 0 3 0 1 0 3 0 + 184 08 JAN 15:00 410 0 821 0 1 0 3 0 1 0 3 0 + 185 08 JAN 16:00 410 0 895 0 1 0 69504 0 1 0 4 0 + 186 08 JAN 17:00 410 0 999 0 1 0 4 0 1 0 4 0 + 187 08 JAN 18:00 410 0 1011 0 1 0 4 0 1 0 4 0 + 188 08 JAN 19:00 410 0 973 0 1 0 4 0 1 0 4 0 + 189 08 JAN 20:00 410 0 894 0 1 0 4 0 1 0 4 0 + 190 08 JAN 21:00 410 0 791 0 1 0 4 0 1 0 4 0 + 191 08 JAN 22:00 410 0 659 0 1 0 4 0 1 0 4 0 + 192 08 JAN 23:00 300 0 600 0 1 0 4 0 1 0 4 0 + 193 09 JAN 00:00 270 0 600 0 1 0 4 0 1 0 4 0 + 194 09 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 195 09 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 196 09 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 197 09 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 198 09 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 199 09 JAN 06:00 345 0 600 0 1 0 4 0 1 0 4 0 + 200 09 JAN 07:00 410 0 729 0 1 0 4 0 1 0 4 0 + 201 09 JAN 08:00 410 0 875 0 1 0 4 0 1 0 4 0 + 202 09 JAN 09:00 410 0 935 0 1 0 4 0 1 0 4 0 + 203 09 JAN 10:00 410 0 932 0 1 0 4 0 1 0 4 0 + 204 09 JAN 11:00 410 0 918 0 1 0 4 0 1 0 4 0 + 205 09 JAN 12:00 410 0 902 0 1 0 4 0 1 0 4 0 + 206 09 JAN 13:00 410 0 923 0 1 0 4 0 1 0 4 0 + 207 09 JAN 14:00 410 0 891 0 1 0 4 0 1 0 4 0 + 208 09 JAN 15:00 410 0 866 0 1 0 4 0 1 0 4 0 + 209 09 JAN 16:00 410 0 885 0 1 0 4 0 1 0 4 0 + 210 09 JAN 17:00 410 0 915 0 1 0 4 0 1 0 4 0 + 211 09 JAN 18:00 410 0 881 0 1 0 4 0 1 0 4 0 + 212 09 JAN 19:00 410 0 829 0 1 0 4 0 1 0 4 0 + 213 09 JAN 20:00 410 0 765 0 1 0 3 0 1 0 3 0 + 214 09 JAN 21:00 410 0 686 0 1 0 3 0 1 0 3 0 + 215 09 JAN 22:00 410 0 565 0 1 0 3 0 1 0 3 0 + 216 09 JAN 23:00 361 0 450 0 1 0 3 0 1 0 3 0 + 217 10 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 218 10 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 219 10 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 220 10 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 221 10 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 222 10 JAN 05:00 256 0 450 0 1 0 3 0 1 0 3 0 + 223 10 JAN 06:00 410 0 480 0 1 0 3 0 1 0 3 0 + 224 10 JAN 07:00 410 0 687 0 1 0 3 0 1 0 3 0 + 225 10 JAN 08:00 410 0 844 0 1 0 69504 0 1 0 4 0 + 226 10 JAN 09:00 410 0 911 0 1 0 4 0 1 0 4 0 + 227 10 JAN 10:00 410 0 927 0 1 0 4 0 1 0 4 0 + 228 10 JAN 11:00 410 0 914 0 1 0 4 0 1 0 4 0 + 229 10 JAN 12:00 410 0 884 0 1 0 4 0 1 0 4 0 + 230 10 JAN 13:00 410 0 925 0 1 0 4 0 1 0 4 0 + 231 10 JAN 14:00 410 0 943 0 1 0 4 0 1 0 4 0 + 232 10 JAN 15:00 410 0 938 0 1 0 4 0 1 0 4 0 + 233 10 JAN 16:00 410 0 985 0 1 0 4 0 1 0 4 0 + 234 10 JAN 17:00 410 0 1057 0 1 0 4 0 1 0 4 0 + 235 10 JAN 18:00 410 0 1040 0 1 0 4 0 1 0 4 0 + 236 10 JAN 19:00 410 0 1005 0 1 0 4 0 1 0 4 0 + 237 10 JAN 20:00 410 0 957 0 1 0 4 0 1 0 4 0 + 238 10 JAN 21:00 410 0 877 0 1 0 4 0 1 0 4 0 + 239 10 JAN 22:00 410 0 746 0 1 0 3 0 1 0 3 0 + 240 10 JAN 23:00 410 0 572 0 1 0 3 0 1 0 3 0 + 241 11 JAN 00:00 311 0 450 0 1 0 3 0 1 0 3 0 + 242 11 JAN 01:00 218 0 450 0 1 0 3 0 1 0 3 0 + 243 11 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 244 11 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 245 11 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 246 11 JAN 05:00 219 0 450 0 1 0 3 0 1 0 3 0 + 247 11 JAN 06:00 386 0 450 0 1 0 3 0 1 0 3 0 + 248 11 JAN 07:00 410 0 602 0 1 0 3 0 1 0 3 0 + 249 11 JAN 08:00 410 0 715 0 1 0 3 0 1 0 3 0 + 250 11 JAN 09:00 410 0 751 0 1 0 3 0 1 0 3 0 + 251 11 JAN 10:00 410 0 738 0 1 0 3 0 1 0 3 0 + 252 11 JAN 11:00 410 0 717 0 1 0 3 0 1 0 3 0 + 253 11 JAN 12:00 410 0 692 0 1 0 3 0 1 0 3 0 + 254 11 JAN 13:00 410 0 702 0 1 0 3 0 1 0 3 0 + 255 11 JAN 14:00 410 0 679 0 1 0 3 0 1 0 3 0 + 256 11 JAN 15:00 410 0 653 0 1 0 3 0 1 0 3 0 + 257 11 JAN 16:00 410 0 678 0 1 0 3 0 1 0 3 0 + 258 11 JAN 17:00 410 0 731 0 1 0 3 0 1 0 3 0 + 259 11 JAN 18:00 410 0 702 0 1 0 3 0 1 0 3 0 + 260 11 JAN 19:00 410 0 651 0 1 0 3 0 1 0 3 0 + 261 11 JAN 20:00 410 0 594 0 1 0 3 0 1 0 3 0 + 262 11 JAN 21:00 410 0 516 0 1 0 2 0 1 0 2 0 + 263 11 JAN 22:00 410 0 405 0 1 0 2 0 1 0 2 0 + 264 11 JAN 23:00 369 0 300 0 1 0 2 0 1 0 2 0 + 265 12 JAN 00:00 180 0 300 0 1 0 2 0 1 0 2 0 + 266 12 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 267 12 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 268 12 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 269 12 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 270 12 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 271 12 JAN 06:00 320 0 300 0 1 0 2 0 1 0 2 0 + 272 12 JAN 07:00 410 0 396 0 1 0 2 0 1 0 2 0 + 273 12 JAN 08:00 410 0 527 0 1 0 2 0 1 0 2 0 + 274 12 JAN 09:00 410 0 577 0 1 0 69503 0 1 0 3 0 + 275 12 JAN 10:00 410 0 606 0 1 0 3 0 1 0 3 0 + 276 12 JAN 11:00 410 0 612 0 1 0 3 0 1 0 3 0 + 277 12 JAN 12:00 410 0 599 0 1 0 3 0 1 0 3 0 + 278 12 JAN 13:00 410 0 635 0 1 0 3 0 1 0 3 0 + 279 12 JAN 14:00 410 0 660 0 1 0 3 0 1 0 3 0 + 280 12 JAN 15:00 410 60 632 0 1 24501 3 0 1 1 3 0 + 281 12 JAN 16:00 410 120 668 0 1 24502 3 0 1 2 3 0 + 282 12 JAN 17:00 410 180 699 0 1 24503 3 0 1 3 3 0 + 283 12 JAN 18:00 410 180 705 0 1 3 3 0 1 3 3 0 + 284 12 JAN 19:00 410 180 680 0 1 3 3 0 1 3 3 0 + 285 12 JAN 20:00 410 180 620 0 1 3 3 0 1 3 3 0 + 286 12 JAN 21:00 410 180 522 0 1 3 3 0 1 3 3 0 + 287 12 JAN 22:00 410 180 394 0 1 3 2 0 1 3 2 0 + 288 12 JAN 23:00 363 180 300 0 1 3 2 0 1 3 2 0 + 289 13 JAN 00:00 410 270 0 0 1 3 0 0 1 3 0 0 + 290 13 JAN 01:00 410 270 0 0 1 3 0 0 1 3 0 0 + 291 13 JAN 02:00 410 232 0 0 1 3 0 0 1 3 0 0 + 292 13 JAN 03:00 410 201 0 0 1 3 0 0 1 3 0 0 + 293 13 JAN 04:00 410 205 0 0 1 3 0 0 1 3 0 0 + 294 13 JAN 05:00 410 268 0 0 1 3 0 0 1 3 0 0 + 295 13 JAN 06:00 410 270 0 0 1 3 0 0 1 3 0 0 + 296 13 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 297 13 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 298 13 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 299 13 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 300 13 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 301 13 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 302 13 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 303 13 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 304 13 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 305 13 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 306 13 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 307 13 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 308 13 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 309 13 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 310 13 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 311 13 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 312 13 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 313 14 JAN 00:00 410 0 365 0 1 0 139002 0 1 0 2 0 + 314 14 JAN 01:00 377 0 300 0 1 0 2 0 1 0 2 0 + 315 14 JAN 02:00 324 0 300 0 1 0 2 0 1 0 2 0 + 316 14 JAN 03:00 293 0 300 0 1 0 2 0 1 0 2 0 + 317 14 JAN 04:00 295 0 300 0 1 0 2 0 1 0 2 0 + 318 14 JAN 05:00 343 0 300 0 1 0 2 0 1 0 2 0 + 319 14 JAN 06:00 410 0 343 0 1 0 2 0 1 0 2 0 + 320 14 JAN 07:00 410 0 498 0 1 0 2 0 1 0 2 0 + 321 14 JAN 08:00 410 0 634 0 1 0 69503 0 1 0 3 0 + 322 14 JAN 09:00 410 0 695 0 1 0 3 0 1 0 3 0 + 323 14 JAN 10:00 410 0 693 0 1 0 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 683 0 1 0 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 673 0 1 0 3 0 1 0 3 0 + 326 14 JAN 13:00 410 0 710 0 1 0 3 0 1 0 3 0 + 327 14 JAN 14:00 410 0 729 0 1 0 3 0 1 0 3 0 + 328 14 JAN 15:00 410 0 753 0 1 0 3 0 1 0 3 0 + 329 14 JAN 16:00 410 0 851 0 1 0 69504 0 1 0 4 0 + 330 14 JAN 17:00 410 0 968 0 1 0 4 0 1 0 4 0 + 331 14 JAN 18:00 410 0 973 0 1 0 4 0 1 0 4 0 + 332 14 JAN 19:00 410 0 930 0 1 0 4 0 1 0 4 0 + 333 14 JAN 20:00 410 0 874 0 1 0 4 0 1 0 4 0 + 334 14 JAN 21:00 410 0 819 0 1 0 3 0 1 0 3 0 + 335 14 JAN 22:00 410 0 713 0 1 0 3 0 1 0 3 0 + 336 14 JAN 23:00 410 0 567 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/data_complex_case/accurate/values-hourly.txt b/tests/functional/data_complex_case/accurate/values-hourly.txt index bab44e90..c75d0ffd 100644 --- a/tests/functional/data_complex_case/accurate/values-hourly.txt +++ b/tests/functional/data_complex_case/accurate/values-hourly.txt @@ -1,6 +1,6 @@ BA00 area va hourly VARIABLES BEGIN END - 24 1 168 + 24 1 336 BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro @@ -173,3 +173,171 @@ BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG 166 07 JAN 21:00 106667 106667 107.00 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 167 07 JAN 22:00 96929 96929 107.00 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 3 168 07 JAN 23:00 79488 79488 107.00 688 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 3 + 169 08 JAN 00:00 134995 134934 -1.00 568 0 0 0 869 0 300 0 54.53 679 0 0 0 0 61 0 0 1780 1150 1211 69504 + 170 08 JAN 01:00 65572 65434 -1.00 568 0 0 0 792 0 300 0 54.56 679 0 0 0 0 138 0 0 1780 1150 1288 4 + 171 08 JAN 02:00 65603 65434 -1.00 568 0 0 0 761 0 300 0 54.58 679 0 0 0 0 169 0 0 1780 1150 1319 4 + 172 08 JAN 03:00 65614 65434 -1.00 568 0 0 0 750 0 300 0 54.60 679 0 0 0 0 180 0 0 1780 1150 1330 4 + 173 08 JAN 04:00 65587 65434 -1.00 568 0 0 0 777 0 300 0 54.62 679 0 0 0 0 153 0 0 1780 1150 1303 4 + 174 08 JAN 05:00 65482 65434 -1.00 568 0 0 0 882 0 300 0 54.64 679 0 0 0 0 48 0 0 1780 1150 1198 4 + 175 08 JAN 06:00 79258 79258 96.00 687 0 0 0 1074 0 300 0 54.67 679 0 0 0 0 0 0 0 1780 1006 1006 4 + 176 08 JAN 07:00 97465 97465 107.00 845 0 0 0 1253 0 300 0 54.69 679 0 0 0 0 0 0 0 1780 827 827 4 + 177 08 JAN 08:00 110305 110305 107.00 957 0 0 0 1373 0 300 0 54.71 679 0 0 0 0 0 0 0 1780 707 707 4 + 178 08 JAN 09:00 114799 114799 107.00 996 0 0 0 1415 0 300 0 54.73 679 0 0 0 0 0 0 0 1780 665 665 4 + 179 08 JAN 10:00 112124 112124 107.00 972 0 0 0 1390 0 300 0 54.76 679 0 0 0 0 0 0 0 1780 690 690 4 + 180 08 JAN 11:00 112552 112552 107.00 976 0 0 0 1394 0 300 0 54.78 679 0 0 0 0 0 0 0 1780 686 686 4 + 181 08 JAN 12:00 112659 112659 107.00 977 0 0 0 1395 0 300 0 54.80 679 0 0 0 0 0 0 0 1780 685 685 4 + 182 08 JAN 13:00 118865 118865 107.00 1031 0 0 0 1453 0 300 0 54.82 679 0 0 0 0 0 0 0 1780 627 627 4 + 183 08 JAN 14:00 122610 122610 107.00 1064 0 0 0 1488 0 300 0 54.84 679 0 0 0 0 0 0 0 1780 592 592 4 + 184 08 JAN 15:00 127211 127211 107.00 1104 0 0 0 1531 0 300 0 54.87 679 0 0 0 0 0 0 0 1780 549 549 4 + 185 08 JAN 16:00 204630 204630 107.00 1173 0 0 0 1605 0 300 0 54.89 679 0 0 0 0 0 0 0 1780 475 475 69505 + 186 08 JAN 17:00 146258 146258 107.00 1270 0 0 0 1709 0 300 0 54.91 679 0 0 0 0 0 0 0 1780 371 371 5 + 187 08 JAN 18:00 147542 147542 107.00 1281 0 0 0 1721 0 300 0 54.93 679 0 0 0 0 0 0 0 1780 359 359 5 + 188 08 JAN 19:00 143476 143476 107.00 1245 0 0 0 1683 0 300 0 54.95 679 0 0 0 0 0 0 0 1780 397 397 5 + 189 08 JAN 20:00 135023 135023 107.00 1172 0 0 0 1604 0 300 0 54.98 679 0 0 0 0 0 0 0 1780 476 476 5 + 190 08 JAN 21:00 124002 124002 107.00 1076 0 0 0 1501 0 300 0 55.00 679 0 0 0 0 0 0 0 1780 579 579 5 + 191 08 JAN 22:00 109878 109878 107.00 953 0 0 0 1369 0 300 0 55.02 679 0 0 0 0 0 0 0 1780 711 711 5 + 192 08 JAN 23:00 93005 93005 96.00 807 0 0 0 1200 0 300 0 55.04 679 0 0 0 0 0 0 0 1780 880 880 5 + 193 09 JAN 00:00 90125 90125 96.00 782 0 0 0 1170 0 300 0 55.07 679 0 0 0 0 0 0 0 1780 910 910 5 + 194 09 JAN 01:00 81504 81485 -1.00 708 0 0 0 1061 0 300 0 55.09 679 0 0 0 0 19 0 0 1780 1000 1019 5 + 195 09 JAN 02:00 81560 81485 -1.00 708 0 0 0 1005 0 300 0 55.11 679 0 0 0 0 75 0 0 1780 1000 1075 5 + 196 09 JAN 03:00 81582 81485 -1.00 708 0 0 0 983 0 300 0 55.13 679 0 0 0 0 97 0 0 1780 1000 1097 5 + 197 09 JAN 04:00 81569 81485 -1.00 708 0 0 0 996 0 300 0 55.15 679 0 0 0 0 84 0 0 1780 1000 1084 5 + 198 09 JAN 05:00 81488 81485 -1.00 708 0 0 0 1077 0 300 0 55.18 679 0 0 0 0 3 0 0 1780 1000 1003 5 + 199 09 JAN 06:00 97325 97325 96.00 844 0 0 0 1245 0 300 0 55.20 679 0 0 0 0 0 0 0 1780 835 835 5 + 200 09 JAN 07:00 117368 117368 107.00 1018 0 0 0 1439 0 300 0 55.22 679 0 0 0 0 0 0 0 1780 641 641 5 + 201 09 JAN 08:00 132990 132990 107.00 1154 0 0 0 1585 0 300 0 55.24 679 0 0 0 0 0 0 0 1780 495 495 5 + 202 09 JAN 09:00 139410 139410 107.00 1210 0 0 0 1645 0 300 0 55.26 679 0 0 0 0 0 0 0 1780 435 435 5 + 203 09 JAN 10:00 139089 139089 107.00 1207 0 0 0 1642 0 300 0 55.29 679 0 0 0 0 0 0 0 1780 438 438 5 + 204 09 JAN 11:00 137591 137591 107.00 1194 0 0 0 1628 0 300 0 55.31 679 0 0 0 0 0 0 0 1780 452 452 5 + 205 09 JAN 12:00 135879 135879 107.00 1179 0 0 0 1612 0 300 0 55.33 679 0 0 0 0 0 0 0 1780 468 468 5 + 206 09 JAN 13:00 138126 138126 107.00 1199 0 0 0 1633 0 300 0 55.35 679 0 0 0 0 0 0 0 1780 447 447 5 + 207 09 JAN 14:00 134702 134702 107.00 1169 0 0 0 1601 0 300 0 55.37 679 0 0 0 0 0 0 0 1780 479 479 5 + 208 09 JAN 15:00 132027 132027 107.00 1146 0 0 0 1576 0 300 0 55.40 679 0 0 0 0 0 0 0 1780 504 504 5 + 209 09 JAN 16:00 134060 134060 107.00 1163 0 0 0 1595 0 300 0 55.42 679 0 0 0 0 0 0 0 1780 485 485 5 + 210 09 JAN 17:00 137270 137270 107.00 1191 0 0 0 1625 0 300 0 55.44 679 0 0 0 0 0 0 0 1780 455 455 5 + 211 09 JAN 18:00 133632 133632 107.00 1160 0 0 0 1591 0 300 0 55.46 679 0 0 0 0 0 0 0 1780 489 489 5 + 212 09 JAN 19:00 128068 128068 107.00 1111 0 0 0 1539 0 300 0 55.49 679 0 0 0 0 0 0 0 1780 541 541 5 + 213 09 JAN 20:00 121219 121219 107.00 1052 0 0 0 1475 0 300 0 55.51 679 0 0 0 0 0 0 0 1780 605 605 4 + 214 09 JAN 21:00 112766 112766 107.00 978 0 0 0 1396 0 300 0 55.53 679 0 0 0 0 0 0 0 1780 684 684 4 + 215 09 JAN 22:00 99819 99819 107.00 865 0 0 0 1275 0 300 0 55.55 679 0 0 0 0 0 0 0 1780 805 805 4 + 216 09 JAN 23:00 82810 82810 96.00 718 0 0 0 1111 0 300 0 55.57 679 0 0 0 0 0 0 0 1780 969 969 4 + 217 10 JAN 00:00 65444 65434 -1.00 568 0 0 0 920 0 300 0 55.60 679 0 0 0 0 10 0 0 1780 1150 1160 4 + 218 10 JAN 01:00 65515 65434 -1.00 568 0 0 0 849 0 300 0 55.62 679 0 0 0 0 81 0 0 1780 1150 1231 4 + 219 10 JAN 02:00 65516 65434 -1.00 568 0 0 0 848 0 300 0 55.64 679 0 0 0 0 82 0 0 1780 1150 1232 4 + 220 10 JAN 03:00 65494 65434 -1.00 568 0 0 0 870 0 300 0 55.66 679 0 0 0 0 60 0 0 1780 1150 1210 4 + 221 10 JAN 04:00 65452 65434 -1.00 568 0 0 0 912 0 300 0 55.68 679 0 0 0 0 18 0 0 1780 1150 1168 4 + 222 10 JAN 05:00 72730 72730 96.00 631 0 0 0 1006 0 300 0 55.71 679 0 0 0 0 0 0 0 1780 1074 1074 4 + 223 10 JAN 06:00 90724 90724 107.00 786 0 0 0 1190 0 300 0 55.73 679 0 0 0 0 0 0 0 1780 890 890 4 + 224 10 JAN 07:00 112873 112873 107.00 979 0 0 0 1397 0 300 0 55.75 679 0 0 0 0 0 0 0 1780 683 683 4 + 225 10 JAN 08:00 199173 199173 107.00 1125 0 0 0 1554 0 300 0 55.77 679 0 0 0 0 0 0 0 1780 526 526 69505 + 226 10 JAN 09:00 136842 136842 107.00 1188 0 0 0 1621 0 300 0 55.80 679 0 0 0 0 0 0 0 1780 459 459 5 + 227 10 JAN 10:00 138554 138554 107.00 1203 0 0 0 1637 0 300 0 55.82 679 0 0 0 0 0 0 0 1780 443 443 5 + 228 10 JAN 11:00 137163 137163 107.00 1191 0 0 0 1624 0 300 0 55.84 679 0 0 0 0 0 0 0 1780 456 456 5 + 229 10 JAN 12:00 133953 133953 107.00 1163 0 0 0 1594 0 300 0 55.86 679 0 0 0 0 0 0 0 1780 486 486 5 + 230 10 JAN 13:00 138340 138340 107.00 1201 0 0 0 1635 0 300 0 55.88 679 0 0 0 0 0 0 0 1780 445 445 5 + 231 10 JAN 14:00 140266 140266 107.00 1218 0 0 0 1653 0 300 0 55.91 679 0 0 0 0 0 0 0 1780 427 427 5 + 232 10 JAN 15:00 139731 139731 107.00 1213 0 0 0 1648 0 300 0 55.93 679 0 0 0 0 0 0 0 1780 432 432 5 + 233 10 JAN 16:00 144760 144760 107.00 1257 0 0 0 1695 0 300 0 55.95 679 0 0 0 0 0 0 0 1780 385 385 5 + 234 10 JAN 17:00 152464 152464 107.00 1324 0 0 0 1767 0 300 0 55.97 679 0 0 0 0 0 0 0 1780 313 313 5 + 235 10 JAN 18:00 150645 150645 107.00 1308 0 0 0 1750 0 300 0 55.99 679 0 0 0 0 0 0 0 1780 330 330 5 + 236 10 JAN 19:00 146900 146900 107.00 1275 0 0 0 1715 0 300 0 56.02 679 0 0 0 0 0 0 0 1780 365 365 5 + 237 10 JAN 20:00 141764 141764 107.00 1231 0 0 0 1667 0 300 0 56.04 679 0 0 0 0 0 0 0 1780 413 413 5 + 238 10 JAN 21:00 133204 133204 107.00 1156 0 0 0 1587 0 300 0 56.06 679 0 0 0 0 0 0 0 1780 493 493 5 + 239 10 JAN 22:00 119186 119186 107.00 1034 0 0 0 1456 0 300 0 56.08 679 0 0 0 0 0 0 0 1780 624 624 4 + 240 10 JAN 23:00 100568 100568 107.00 872 0 0 0 1282 0 300 0 56.11 679 0 0 0 0 0 0 0 1780 798 798 4 + 241 11 JAN 00:00 78010 78010 96.00 676 0 0 0 1061 0 300 0 56.13 679 0 0 0 0 0 0 0 1780 1019 1019 4 + 242 11 JAN 01:00 69082 69082 96.00 599 0 0 0 968 0 300 0 56.15 679 0 0 0 0 0 0 0 1780 1112 1112 4 + 243 11 JAN 02:00 65450 65434 -1.00 568 0 0 0 914 0 300 0 56.17 679 0 0 0 0 16 0 0 1780 1150 1166 4 + 244 11 JAN 03:00 65480 65434 -1.00 568 0 0 0 884 0 300 0 56.19 679 0 0 0 0 46 0 0 1780 1150 1196 4 + 245 11 JAN 04:00 65475 65434 -1.00 568 0 0 0 889 0 300 0 56.22 679 0 0 0 0 41 0 0 1780 1150 1191 4 + 246 11 JAN 05:00 69178 69178 96.00 600 0 0 0 969 0 300 0 56.24 679 0 0 0 0 0 0 0 1780 1111 1111 4 + 247 11 JAN 06:00 85210 85210 96.00 738 0 0 0 1136 0 300 0 56.26 679 0 0 0 0 0 0 0 1780 944 944 4 + 248 11 JAN 07:00 103778 103778 107.00 900 0 0 0 1312 0 300 0 56.28 679 0 0 0 0 0 0 0 1780 768 768 4 + 249 11 JAN 08:00 115869 115869 107.00 1005 0 0 0 1425 0 300 0 56.30 679 0 0 0 0 0 0 0 1780 655 655 4 + 250 11 JAN 09:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 56.33 679 0 0 0 0 0 0 0 1780 619 619 4 + 251 11 JAN 10:00 118330 118330 107.00 1026 0 0 0 1448 0 300 0 56.35 679 0 0 0 0 0 0 0 1780 632 632 4 + 252 11 JAN 11:00 116083 116083 107.00 1007 0 0 0 1427 0 300 0 56.37 679 0 0 0 0 0 0 0 1780 653 653 4 + 253 11 JAN 12:00 113408 113408 107.00 984 0 0 0 1402 0 300 0 56.39 679 0 0 0 0 0 0 0 1780 678 678 4 + 254 11 JAN 13:00 114478 114478 107.00 993 0 0 0 1412 0 300 0 56.41 679 0 0 0 0 0 0 0 1780 668 668 4 + 255 11 JAN 14:00 112017 112017 107.00 971 0 0 0 1389 0 300 0 56.44 679 0 0 0 0 0 0 0 1780 691 691 4 + 256 11 JAN 15:00 109235 109235 107.00 947 0 0 0 1363 0 300 0 56.46 679 0 0 0 0 0 0 0 1780 717 717 4 + 257 11 JAN 16:00 111910 111910 107.00 971 0 0 0 1388 0 300 0 56.48 679 0 0 0 0 0 0 0 1780 692 692 4 + 258 11 JAN 17:00 117581 117581 107.00 1020 0 0 0 1441 0 300 0 56.50 679 0 0 0 0 0 0 0 1780 639 639 4 + 259 11 JAN 18:00 114478 114478 107.00 993 0 0 0 1412 0 300 0 56.53 679 0 0 0 0 0 0 0 1780 668 668 4 + 260 11 JAN 19:00 109021 109021 107.00 945 0 0 0 1361 0 300 0 56.55 679 0 0 0 0 0 0 0 1780 719 719 4 + 261 11 JAN 20:00 102922 102922 107.00 892 0 0 0 1304 0 300 0 56.57 679 0 0 0 0 0 0 0 1780 776 776 4 + 262 11 JAN 21:00 94575 94575 107.00 820 0 0 0 1226 0 300 0 56.59 679 0 0 0 0 0 0 0 1780 854 854 3 + 263 11 JAN 22:00 82698 82698 107.00 716 0 0 0 1115 0 300 0 56.61 679 0 0 0 0 0 0 0 1780 965 965 3 + 264 11 JAN 23:00 67527 67527 96.00 584 0 0 0 969 0 300 0 56.64 679 0 0 0 0 0 0 0 1780 1111 1111 3 + 265 12 JAN 00:00 49388 49383 -1.00 428 0 0 0 775 0 300 0 56.66 679 0 0 0 0 5 0 0 1780 1300 1305 3 + 266 12 JAN 01:00 49474 49383 -1.00 428 0 0 0 689 0 300 0 56.68 679 0 0 0 0 91 0 0 1780 1300 1391 3 + 267 12 JAN 02:00 49522 49383 -1.00 428 0 0 0 641 0 300 0 56.70 679 0 0 0 0 139 0 0 1780 1300 1439 3 + 268 12 JAN 03:00 49530 49383 -1.00 428 0 0 0 633 0 300 0 56.72 679 0 0 0 0 147 0 0 1780 1300 1447 3 + 269 12 JAN 04:00 49504 49383 -1.00 428 0 0 0 659 0 300 0 56.75 679 0 0 0 0 121 0 0 1780 1300 1421 3 + 270 12 JAN 05:00 49415 49383 -1.00 428 0 0 0 748 0 300 0 56.77 679 0 0 0 0 32 0 0 1780 1300 1332 3 + 271 12 JAN 06:00 62823 62823 96.00 544 0 0 0 920 0 300 0 56.79 679 0 0 0 0 0 0 0 1780 1160 1160 3 + 272 12 JAN 07:00 81735 81735 107.00 708 0 0 0 1106 0 300 0 56.81 679 0 0 0 0 0 0 0 1780 974 974 3 + 273 12 JAN 08:00 95752 95752 107.00 830 0 0 0 1237 0 300 0 56.84 679 0 0 0 0 0 0 0 1780 843 843 3 + 274 12 JAN 09:00 170603 170603 107.00 876 0 0 0 1287 0 300 0 56.86 679 0 0 0 0 0 0 0 1780 793 793 69504 + 275 12 JAN 10:00 104206 104206 107.00 903 0 0 0 1316 0 300 0 56.88 679 0 0 0 0 0 0 0 1780 764 764 4 + 276 12 JAN 11:00 104848 104848 107.00 909 0 0 0 1322 0 300 0 56.90 679 0 0 0 0 0 0 0 1780 758 758 4 + 277 12 JAN 12:00 103457 103457 107.00 897 0 0 0 1309 0 300 0 56.92 679 0 0 0 0 0 0 0 1780 771 771 4 + 278 12 JAN 13:00 107309 107309 107.00 930 0 0 0 1345 0 300 0 56.95 679 0 0 0 0 0 0 0 1780 735 735 4 + 279 12 JAN 14:00 109984 109984 107.00 954 0 0 0 1370 0 300 0 56.97 679 0 0 0 0 0 0 0 1780 710 710 4 + 280 12 JAN 15:00 139709 139709 107.00 999 0 0 0 1402 0 300 0 56.99 679 0 0 0 0 0 0 0 1780 678 678 24505 + 281 12 JAN 16:00 151782 151782 107.00 1105 0 0 0 1498 0 300 0 57.01 679 0 0 0 0 0 0 0 1780 582 582 24506 + 282 12 JAN 17:00 163320 163320 107.00 1205 0 0 0 1589 0 300 0 57.03 679 0 0 0 0 0 0 0 1780 491 491 24507 + 283 12 JAN 18:00 139462 139462 107.00 1211 0 0 0 1595 0 300 0 57.06 679 0 0 0 0 0 0 0 1780 485 485 7 + 284 12 JAN 19:00 136787 136787 107.00 1188 0 0 0 1570 0 300 0 57.08 679 0 0 0 0 0 0 0 1780 510 510 7 + 285 12 JAN 20:00 130367 130367 107.00 1132 0 0 0 1510 0 300 0 57.10 679 0 0 0 0 0 0 0 1780 570 570 7 + 286 12 JAN 21:00 119881 119881 107.00 1040 0 0 0 1412 0 300 0 57.12 679 0 0 0 0 0 0 0 1780 668 668 7 + 287 12 JAN 22:00 106184 106184 107.00 921 0 0 0 1284 0 300 0 57.14 679 0 0 0 0 0 0 0 1780 796 796 6 + 288 12 JAN 23:00 91614 91614 96.00 795 0 0 0 1143 0 300 0 57.17 679 0 0 0 0 0 0 0 1780 937 937 6 + 289 13 JAN 00:00 1206354 76354 10000.00 662 0 0 0 1093 0 300 0 57.19 679 0 0 0 113 0 1.00 100.00 680 0 -113 4 + 290 13 JAN 01:00 206354 76354 10000.00 662 0 0 0 993 0 300 0 57.21 679 0 0 0 13 0 1.00 100.00 680 0 -13 4 + 291 13 JAN 02:00 71148 71148 137.00 616 0 0 0 942 0 300 0 57.23 679 0 0 0 0 0 0 0 680 38 38 4 + 292 13 JAN 03:00 66901 66901 137.00 579 0 0 0 911 0 300 0 57.26 679 0 0 0 0 0 0 0 680 69 69 4 + 293 13 JAN 04:00 67449 67449 137.00 584 0 0 0 915 0 300 0 57.28 679 0 0 0 0 0 0 0 680 65 65 4 + 294 13 JAN 05:00 76080 76080 137.00 659 0 0 0 978 0 300 0 57.30 679 0 0 0 0 0 0 0 680 2 2 4 + 295 13 JAN 06:00 1546354 76354 10000.00 662 0 0 0 1127 0 300 0 57.32 679 0 0 0 147 0 1.00 100.00 680 0 -147 4 + 296 13 JAN 07:00 3366354 76354 10000.00 662 0 0 0 1309 0 300 0 57.34 679 0 0 0 329 0 1.00 100.00 680 0 -329 4 + 297 13 JAN 08:00 4656354 76354 10000.00 662 0 0 0 1438 0 300 0 57.37 679 0 0 0 458 0 1.00 100.00 680 0 -458 4 + 298 13 JAN 09:00 5086354 76354 10000.00 662 0 0 0 1481 0 300 0 57.39 679 0 0 0 501 0 1.00 100.00 680 0 -501 4 + 299 13 JAN 10:00 5126354 76354 10000.00 662 0 0 0 1485 0 300 0 57.41 679 0 0 0 505 0 1.00 100.00 680 0 -505 4 + 300 13 JAN 11:00 4916354 76354 10000.00 662 0 0 0 1464 0 300 0 57.43 679 0 0 0 484 0 1.00 100.00 680 0 -484 4 + 301 13 JAN 12:00 4646354 76354 10000.00 662 0 0 0 1437 0 300 0 57.45 679 0 0 0 457 0 1.00 100.00 680 0 -457 4 + 302 13 JAN 13:00 4866354 76354 10000.00 662 0 0 0 1459 0 300 0 57.48 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 303 13 JAN 14:00 4896354 76354 10000.00 662 0 0 0 1462 0 300 0 57.50 679 0 0 0 482 0 1.00 100.00 680 0 -482 4 + 304 13 JAN 15:00 4866354 76354 10000.00 662 0 0 0 1459 0 300 0 57.52 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 305 13 JAN 16:00 5526354 76354 10000.00 662 0 0 0 1525 0 300 0 57.54 679 0 0 0 545 0 1.00 100.00 680 0 -545 4 + 306 13 JAN 17:00 6436354 76354 10000.00 662 0 0 0 1616 0 300 0 57.57 679 0 0 0 636 0 1.00 100.00 680 0 -636 4 + 307 13 JAN 18:00 6366354 76354 10000.00 662 0 0 0 1609 0 300 0 57.59 679 0 0 0 629 0 1.00 100.00 680 0 -629 4 + 308 13 JAN 19:00 6046354 76354 10000.00 662 0 0 0 1577 0 300 0 57.61 679 0 0 0 597 0 1.00 100.00 680 0 -597 4 + 309 13 JAN 20:00 5596354 76354 10000.00 662 0 0 0 1532 0 300 0 57.63 679 0 0 0 552 0 1.00 100.00 680 0 -552 4 + 310 13 JAN 21:00 4876354 76354 10000.00 662 0 0 0 1460 0 300 0 57.65 679 0 0 0 480 0 1.00 100.00 680 0 -480 4 + 311 13 JAN 22:00 3746354 76354 10000.00 662 0 0 0 1347 0 300 0 57.68 679 0 0 0 367 0 1.00 100.00 680 0 -367 4 + 312 13 JAN 23:00 2146354 76354 10000.00 662 0 0 0 1187 0 300 0 57.70 679 0 0 0 207 0 1.00 100.00 680 0 -207 4 + 313 14 JAN 00:00 217418 217418 107.00 679 0 0 0 1075 0 300 0 57.72 679 0 0 0 0 0 0 0 1780 1005 1005 139003 + 314 14 JAN 01:00 68295 68295 96.00 591 0 0 0 977 0 300 0 57.74 679 0 0 0 0 0 0 0 1780 1103 1103 3 + 315 14 JAN 02:00 63207 63207 96.00 547 0 0 0 924 0 300 0 57.76 679 0 0 0 0 0 0 0 1780 1156 1156 3 + 316 14 JAN 03:00 60231 60231 96.00 522 0 0 0 893 0 300 0 57.79 679 0 0 0 0 0 0 0 1780 1187 1187 3 + 317 14 JAN 04:00 60423 60423 96.00 523 0 0 0 895 0 300 0 57.81 679 0 0 0 0 0 0 0 1780 1185 1185 3 + 318 14 JAN 05:00 65031 65031 96.00 563 0 0 0 943 0 300 0 57.83 679 0 0 0 0 0 0 0 1780 1137 1137 3 + 319 14 JAN 06:00 76064 76064 107.00 658 0 0 0 1053 0 300 0 57.85 679 0 0 0 0 0 0 0 1780 1027 1027 3 + 320 14 JAN 07:00 92649 92649 107.00 803 0 0 0 1208 0 300 0 57.87 679 0 0 0 0 0 0 0 1780 872 872 3 + 321 14 JAN 08:00 176702 176702 107.00 930 0 0 0 1344 0 300 0 57.90 679 0 0 0 0 0 0 0 1780 736 736 69504 + 322 14 JAN 09:00 113729 113729 107.00 986 0 0 0 1405 0 300 0 57.92 679 0 0 0 0 0 0 0 1780 675 675 4 + 323 14 JAN 10:00 113515 113515 107.00 985 0 0 0 1403 0 300 0 57.94 679 0 0 0 0 0 0 0 1780 677 677 4 + 324 14 JAN 11:00 112445 112445 107.00 975 0 0 0 1393 0 300 0 57.96 679 0 0 0 0 0 0 0 1780 687 687 4 + 325 14 JAN 12:00 111375 111375 107.00 966 0 0 0 1383 0 300 0 57.99 679 0 0 0 0 0 0 0 1780 697 697 4 + 326 14 JAN 13:00 115334 115334 107.00 1000 0 0 0 1420 0 300 0 58.01 679 0 0 0 0 0 0 0 1780 660 660 4 + 327 14 JAN 14:00 117367 117367 107.00 1018 0 0 0 1439 0 300 0 58.03 679 0 0 0 0 0 0 0 1780 641 641 4 + 328 14 JAN 15:00 119935 119935 107.00 1040 0 0 0 1463 0 300 0 58.05 679 0 0 0 0 0 0 0 1780 617 617 4 + 329 14 JAN 16:00 199922 199922 107.00 1132 0 0 0 1561 0 300 0 58.07 679 0 0 0 0 0 0 0 1780 519 519 69505 + 330 14 JAN 17:00 142941 142941 107.00 1241 0 0 0 1678 0 300 0 58.10 679 0 0 0 0 0 0 0 1780 402 402 5 + 331 14 JAN 18:00 143476 143476 107.00 1245 0 0 0 1683 0 300 0 58.12 679 0 0 0 0 0 0 0 1780 397 397 5 + 332 14 JAN 19:00 138875 138875 107.00 1205 0 0 0 1640 0 300 0 58.14 679 0 0 0 0 0 0 0 1780 440 440 5 + 333 14 JAN 20:00 132883 132883 107.00 1153 0 0 0 1584 0 300 0 58.16 679 0 0 0 0 0 0 0 1780 496 496 5 + 334 14 JAN 21:00 126997 126997 107.00 1102 0 0 0 1529 0 300 0 58.18 679 0 0 0 0 0 0 0 1780 551 551 4 + 335 14 JAN 22:00 115655 115655 107.00 1003 0 0 0 1423 0 300 0 58.21 679 0 0 0 0 0 0 0 1780 657 657 4 + 336 14 JAN 23:00 100033 100033 107.00 867 0 0 0 1277 0 300 0 58.23 679 0 0 0 0 0 0 0 1780 803 803 4 diff --git a/tests/functional/data_complex_case/fast/details-hourly.txt b/tests/functional/data_complex_case/fast/details-hourly.txt index d91389c5..f5ca8c07 100644 --- a/tests/functional/data_complex_case/fast/details-hourly.txt +++ b/tests/functional/data_complex_case/fast/details-hourly.txt @@ -1,6 +1,6 @@ BA00 area de hourly VARIABLES BEGIN END - 12 1 168 + 12 1 336 BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU @@ -173,3 +173,171 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 167 07 JAN 22:00 410 0 538 0 1 0 3 0 1 0 3 0 168 07 JAN 23:00 335 0 450 0 1 0 3 0 1 0 3 0 + 169 08 JAN 00:00 180 0 600 0 1 0 69504 0 1 0 4 0 + 170 08 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 171 08 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 172 08 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 173 08 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 174 08 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 175 08 JAN 06:00 324 0 450 0 1 0 3 0 1 0 3 0 + 176 08 JAN 07:00 410 0 543 0 1 0 3 0 1 0 3 0 + 177 08 JAN 08:00 410 0 663 0 1 0 3 0 1 0 3 0 + 178 08 JAN 09:00 410 0 705 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 680 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 0 684 0 1 0 3 0 1 0 3 0 + 181 08 JAN 12:00 410 0 685 0 1 0 69504 0 1 0 4 0 + 182 08 JAN 13:00 410 0 743 0 1 0 4 0 1 0 4 0 + 183 08 JAN 14:00 410 0 778 0 1 0 4 0 1 0 4 0 + 184 08 JAN 15:00 410 0 821 0 1 0 4 0 1 0 4 0 + 185 08 JAN 16:00 410 0 895 0 1 0 4 0 1 0 4 0 + 186 08 JAN 17:00 410 0 999 0 1 0 4 0 1 0 4 0 + 187 08 JAN 18:00 410 0 1011 0 1 0 4 0 1 0 4 0 + 188 08 JAN 19:00 410 0 973 0 1 0 4 0 1 0 4 0 + 189 08 JAN 20:00 410 0 894 0 1 0 4 0 1 0 4 0 + 190 08 JAN 21:00 410 0 791 0 1 0 3 0 1 0 3 0 + 191 08 JAN 22:00 410 0 659 0 1 0 3 0 1 0 3 0 + 192 08 JAN 23:00 410 0 490 0 1 0 3 0 1 0 3 0 + 193 09 JAN 00:00 410 0 460 0 1 0 3 0 1 0 3 0 + 194 09 JAN 01:00 311 0 450 0 1 0 3 0 1 0 3 0 + 195 09 JAN 02:00 255 0 450 0 1 0 3 0 1 0 3 0 + 196 09 JAN 03:00 233 0 450 0 1 0 3 0 1 0 3 0 + 197 09 JAN 04:00 246 0 450 0 1 0 3 0 1 0 3 0 + 198 09 JAN 05:00 327 0 450 0 1 0 3 0 1 0 3 0 + 199 09 JAN 06:00 345 0 600 0 1 0 69504 0 1 0 4 0 + 200 09 JAN 07:00 410 0 729 0 1 0 4 0 1 0 4 0 + 201 09 JAN 08:00 410 0 875 0 1 0 4 0 1 0 4 0 + 202 09 JAN 09:00 410 0 935 0 1 0 4 0 1 0 4 0 + 203 09 JAN 10:00 410 0 932 0 1 0 4 0 1 0 4 0 + 204 09 JAN 11:00 410 0 918 0 1 0 4 0 1 0 4 0 + 205 09 JAN 12:00 410 0 902 0 1 0 4 0 1 0 4 0 + 206 09 JAN 13:00 410 0 923 0 1 0 4 0 1 0 4 0 + 207 09 JAN 14:00 410 0 891 0 1 0 4 0 1 0 4 0 + 208 09 JAN 15:00 410 0 866 0 1 0 4 0 1 0 4 0 + 209 09 JAN 16:00 410 0 885 0 1 0 4 0 1 0 4 0 + 210 09 JAN 17:00 410 0 915 0 1 0 4 0 1 0 4 0 + 211 09 JAN 18:00 410 0 881 0 1 0 4 0 1 0 4 0 + 212 09 JAN 19:00 410 0 829 0 1 0 4 0 1 0 4 0 + 213 09 JAN 20:00 410 0 765 0 1 0 4 0 1 0 4 0 + 214 09 JAN 21:00 410 0 686 0 1 0 4 0 1 0 4 0 + 215 09 JAN 22:00 375 0 600 0 1 0 4 0 1 0 4 0 + 216 09 JAN 23:00 211 0 600 0 1 0 4 0 1 0 4 0 + 217 10 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 218 10 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 219 10 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 220 10 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 221 10 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 222 10 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 223 10 JAN 06:00 290 0 600 0 1 0 4 0 1 0 4 0 + 224 10 JAN 07:00 410 0 687 0 1 0 4 0 1 0 4 0 + 225 10 JAN 08:00 410 0 844 0 1 0 4 0 1 0 4 0 + 226 10 JAN 09:00 410 0 911 0 1 0 4 0 1 0 4 0 + 227 10 JAN 10:00 410 0 927 0 1 0 4 0 1 0 4 0 + 228 10 JAN 11:00 410 0 914 0 1 0 4 0 1 0 4 0 + 229 10 JAN 12:00 410 0 884 0 1 0 4 0 1 0 4 0 + 230 10 JAN 13:00 410 0 925 0 1 0 4 0 1 0 4 0 + 231 10 JAN 14:00 410 0 943 0 1 0 4 0 1 0 4 0 + 232 10 JAN 15:00 410 0 938 0 1 0 4 0 1 0 4 0 + 233 10 JAN 16:00 410 0 985 0 1 0 4 0 1 0 4 0 + 234 10 JAN 17:00 410 0 1057 0 1 0 4 0 1 0 4 0 + 235 10 JAN 18:00 410 0 1040 0 1 0 4 0 1 0 4 0 + 236 10 JAN 19:00 410 0 1005 0 1 0 4 0 1 0 4 0 + 237 10 JAN 20:00 410 0 957 0 1 0 4 0 1 0 4 0 + 238 10 JAN 21:00 410 0 877 0 1 0 4 0 1 0 4 0 + 239 10 JAN 22:00 410 0 746 0 1 0 4 0 1 0 4 0 + 240 10 JAN 23:00 382 0 600 0 1 0 4 0 1 0 4 0 + 241 11 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 242 11 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 243 11 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 244 11 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 245 11 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 246 11 JAN 05:00 219 0 450 0 1 0 3 0 1 0 3 0 + 247 11 JAN 06:00 386 0 450 0 1 0 3 0 1 0 3 0 + 248 11 JAN 07:00 410 0 602 0 1 0 3 0 1 0 3 0 + 249 11 JAN 08:00 410 0 715 0 1 0 3 0 1 0 3 0 + 250 11 JAN 09:00 410 0 751 0 1 0 3 0 1 0 3 0 + 251 11 JAN 10:00 410 0 738 0 1 0 3 0 1 0 3 0 + 252 11 JAN 11:00 410 0 717 0 1 0 3 0 1 0 3 0 + 253 11 JAN 12:00 410 0 692 0 1 0 3 0 1 0 3 0 + 254 11 JAN 13:00 410 0 702 0 1 0 3 0 1 0 3 0 + 255 11 JAN 14:00 410 0 679 0 1 0 3 0 1 0 3 0 + 256 11 JAN 15:00 410 0 653 0 1 0 3 0 1 0 3 0 + 257 11 JAN 16:00 410 0 678 0 1 0 3 0 1 0 3 0 + 258 11 JAN 17:00 410 0 731 0 1 0 3 0 1 0 3 0 + 259 11 JAN 18:00 410 0 702 0 1 0 3 0 1 0 3 0 + 260 11 JAN 19:00 410 0 651 0 1 0 3 0 1 0 3 0 + 261 11 JAN 20:00 410 0 594 0 1 0 3 0 1 0 3 0 + 262 11 JAN 21:00 410 0 516 0 1 0 2 0 1 0 2 0 + 263 11 JAN 22:00 410 0 405 0 1 0 2 0 1 0 2 0 + 264 11 JAN 23:00 369 0 300 0 1 0 2 0 1 0 2 0 + 265 12 JAN 00:00 180 0 300 0 1 0 2 0 1 0 2 0 + 266 12 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 267 12 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 268 12 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 269 12 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 270 12 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 271 12 JAN 06:00 180 0 450 0 1 0 69503 0 1 0 3 0 + 272 12 JAN 07:00 356 0 450 0 1 0 3 0 1 0 3 0 + 273 12 JAN 08:00 410 0 527 0 1 0 3 0 1 0 3 0 + 274 12 JAN 09:00 410 0 577 0 1 0 3 0 1 0 3 0 + 275 12 JAN 10:00 410 0 606 0 1 0 3 0 1 0 3 0 + 276 12 JAN 11:00 410 0 612 0 1 0 3 0 1 0 3 0 + 277 12 JAN 12:00 410 0 599 0 1 0 3 0 1 0 3 0 + 278 12 JAN 13:00 410 0 635 0 1 0 3 0 1 0 3 0 + 279 12 JAN 14:00 410 0 660 0 1 0 3 0 1 0 3 0 + 280 12 JAN 15:00 322 180 600 0 1 73503 69504 0 1 3 4 0 + 281 12 JAN 16:00 410 180 608 0 1 3 4 0 1 3 4 0 + 282 12 JAN 17:00 410 180 699 0 1 3 4 0 1 3 4 0 + 283 12 JAN 18:00 410 180 705 0 1 3 4 0 1 3 4 0 + 284 12 JAN 19:00 410 180 680 0 1 3 4 0 1 3 4 0 + 285 12 JAN 20:00 410 180 620 0 1 3 4 0 1 3 4 0 + 286 12 JAN 21:00 332 180 600 0 1 3 4 0 1 3 4 0 + 287 12 JAN 22:00 204 180 600 0 1 3 4 0 1 3 4 0 + 288 12 JAN 23:00 180 180 600 0 1 3 4 0 1 3 4 0 + 289 13 JAN 00:00 410 270 0 0 1 3 0 0 1 3 0 0 + 290 13 JAN 01:00 410 270 0 0 1 3 0 0 1 3 0 0 + 291 13 JAN 02:00 410 232 0 0 1 3 0 0 1 3 0 0 + 292 13 JAN 03:00 410 201 0 0 1 3 0 0 1 3 0 0 + 293 13 JAN 04:00 410 205 0 0 1 3 0 0 1 3 0 0 + 294 13 JAN 05:00 410 268 0 0 1 3 0 0 1 3 0 0 + 295 13 JAN 06:00 410 270 0 0 1 3 0 0 1 3 0 0 + 296 13 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 297 13 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 298 13 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 299 13 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 300 13 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 301 13 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 302 13 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 303 13 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 304 13 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 305 13 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 306 13 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 307 13 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 308 13 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 309 13 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 310 13 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 311 13 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 312 13 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 313 14 JAN 00:00 410 0 365 0 1 0 139002 0 1 0 2 0 + 314 14 JAN 01:00 377 0 300 0 1 0 2 0 1 0 2 0 + 315 14 JAN 02:00 324 0 300 0 1 0 2 0 1 0 2 0 + 316 14 JAN 03:00 180 0 450 0 1 0 69503 0 1 0 3 0 + 317 14 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 318 14 JAN 05:00 193 0 450 0 1 0 3 0 1 0 3 0 + 319 14 JAN 06:00 303 0 450 0 1 0 3 0 1 0 3 0 + 320 14 JAN 07:00 410 0 498 0 1 0 3 0 1 0 3 0 + 321 14 JAN 08:00 410 0 634 0 1 0 3 0 1 0 3 0 + 322 14 JAN 09:00 410 0 695 0 1 0 3 0 1 0 3 0 + 323 14 JAN 10:00 410 0 693 0 1 0 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 683 0 1 0 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 673 0 1 0 69504 0 1 0 4 0 + 326 14 JAN 13:00 410 0 710 0 1 0 4 0 1 0 4 0 + 327 14 JAN 14:00 410 0 729 0 1 0 4 0 1 0 4 0 + 328 14 JAN 15:00 410 0 753 0 1 0 4 0 1 0 4 0 + 329 14 JAN 16:00 410 0 851 0 1 0 4 0 1 0 4 0 + 330 14 JAN 17:00 410 0 968 0 1 0 4 0 1 0 4 0 + 331 14 JAN 18:00 410 0 973 0 1 0 4 0 1 0 4 0 + 332 14 JAN 19:00 410 0 930 0 1 0 4 0 1 0 4 0 + 333 14 JAN 20:00 410 0 874 0 1 0 4 0 1 0 4 0 + 334 14 JAN 21:00 410 0 819 0 1 0 4 0 1 0 4 0 + 335 14 JAN 22:00 410 0 713 0 1 0 4 0 1 0 4 0 + 336 14 JAN 23:00 377 0 600 0 1 0 4 0 1 0 4 0 diff --git a/tests/functional/data_complex_case/fast/values-hourly.txt b/tests/functional/data_complex_case/fast/values-hourly.txt index 672691f5..c84996ec 100644 --- a/tests/functional/data_complex_case/fast/values-hourly.txt +++ b/tests/functional/data_complex_case/fast/values-hourly.txt @@ -1,6 +1,6 @@ BA00 area va hourly VARIABLES BEGIN END - 24 1 168 + 24 1 336 BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro @@ -173,3 +173,171 @@ BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG 166 07 JAN 21:00 106667 106667 107.00 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 167 07 JAN 22:00 96930 96930 107.00 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 4 168 07 JAN 23:00 80314 80314 96.00 696 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 4 + 169 08 JAN 00:00 151196 150985 -1.00 708 0 0 0 869 0 300 0 54.53 679 0 0 0 0 211 0 0 1780 1000 1211 69505 + 170 08 JAN 01:00 81773 81485 -1.00 708 0 0 0 792 0 300 0 54.56 679 0 0 0 0 288 0 0 1780 1000 1288 5 + 171 08 JAN 02:00 81804 81485 -1.00 708 0 0 0 761 0 300 0 54.58 679 0 0 0 0 319 0 0 1780 1000 1319 5 + 172 08 JAN 03:00 65614 65434 -1.00 568 0 0 0 750 0 300 0 54.60 679 0 0 0 0 180 0 0 1780 1150 1330 4 + 173 08 JAN 04:00 65587 65434 -1.00 568 0 0 0 777 0 300 0 54.62 679 0 0 0 0 153 0 0 1780 1150 1303 4 + 174 08 JAN 05:00 65482 65434 -1.00 568 0 0 0 882 0 300 0 54.64 679 0 0 0 0 48 0 0 1780 1150 1198 4 + 175 08 JAN 06:00 79258 79258 96.00 687 0 0 0 1074 0 300 0 54.67 679 0 0 0 0 0 0 0 1780 1006 1006 4 + 176 08 JAN 07:00 97465 97465 107.00 845 0 0 0 1253 0 300 0 54.69 679 0 0 0 0 0 0 0 1780 827 827 4 + 177 08 JAN 08:00 110305 110305 107.00 957 0 0 0 1373 0 300 0 54.71 679 0 0 0 0 0 0 0 1780 707 707 4 + 178 08 JAN 09:00 114799 114799 107.00 996 0 0 0 1415 0 300 0 54.73 679 0 0 0 0 0 0 0 1780 665 665 4 + 179 08 JAN 10:00 112124 112124 107.00 972 0 0 0 1390 0 300 0 54.76 679 0 0 0 0 0 0 0 1780 690 690 4 + 180 08 JAN 11:00 112552 112552 107.00 976 0 0 0 1394 0 300 0 54.78 679 0 0 0 0 0 0 0 1780 686 686 4 + 181 08 JAN 12:00 182160 182160 107.00 977 0 0 0 1395 0 300 0 54.80 679 0 0 0 0 0 0 0 1780 685 685 69505 + 182 08 JAN 13:00 118866 118866 107.00 1031 0 0 0 1453 0 300 0 54.82 679 0 0 0 0 0 0 0 1780 627 627 5 + 183 08 JAN 14:00 122611 122611 107.00 1064 0 0 0 1488 0 300 0 54.84 679 0 0 0 0 0 0 0 1780 592 592 5 + 184 08 JAN 15:00 127212 127212 107.00 1104 0 0 0 1531 0 300 0 54.87 679 0 0 0 0 0 0 0 1780 549 549 5 + 185 08 JAN 16:00 135130 135130 107.00 1173 0 0 0 1605 0 300 0 54.89 679 0 0 0 0 0 0 0 1780 475 475 5 + 186 08 JAN 17:00 146258 146258 107.00 1270 0 0 0 1709 0 300 0 54.91 679 0 0 0 0 0 0 0 1780 371 371 5 + 187 08 JAN 18:00 147542 147542 107.00 1281 0 0 0 1721 0 300 0 54.93 679 0 0 0 0 0 0 0 1780 359 359 5 + 188 08 JAN 19:00 143476 143476 107.00 1245 0 0 0 1683 0 300 0 54.95 679 0 0 0 0 0 0 0 1780 397 397 5 + 189 08 JAN 20:00 135023 135023 107.00 1172 0 0 0 1604 0 300 0 54.98 679 0 0 0 0 0 0 0 1780 476 476 5 + 190 08 JAN 21:00 124001 124001 107.00 1076 0 0 0 1501 0 300 0 55.00 679 0 0 0 0 0 0 0 1780 579 579 4 + 191 08 JAN 22:00 109877 109877 107.00 953 0 0 0 1369 0 300 0 55.02 679 0 0 0 0 0 0 0 1780 711 711 4 + 192 08 JAN 23:00 91794 91794 107.00 795 0 0 0 1200 0 300 0 55.04 679 0 0 0 0 0 0 0 1780 880 880 4 + 193 09 JAN 00:00 88584 88584 107.00 767 0 0 0 1170 0 300 0 55.07 679 0 0 0 0 0 0 0 1780 910 910 4 + 194 09 JAN 01:00 78010 78010 96.00 676 0 0 0 1061 0 300 0 55.09 679 0 0 0 0 0 0 0 1780 1019 1019 4 + 195 09 JAN 02:00 72634 72634 96.00 630 0 0 0 1005 0 300 0 55.11 679 0 0 0 0 0 0 0 1780 1075 1075 4 + 196 09 JAN 03:00 70522 70522 96.00 612 0 0 0 983 0 300 0 55.13 679 0 0 0 0 0 0 0 1780 1097 1097 4 + 197 09 JAN 04:00 71770 71770 96.00 623 0 0 0 996 0 300 0 55.15 679 0 0 0 0 0 0 0 1780 1084 1084 4 + 198 09 JAN 05:00 79546 79546 96.00 690 0 0 0 1077 0 300 0 55.18 679 0 0 0 0 0 0 0 1780 1003 1003 4 + 199 09 JAN 06:00 166825 166825 96.00 844 0 0 0 1245 0 300 0 55.20 679 0 0 0 0 0 0 0 1780 835 835 69505 + 200 09 JAN 07:00 117368 117368 107.00 1018 0 0 0 1439 0 300 0 55.22 679 0 0 0 0 0 0 0 1780 641 641 5 + 201 09 JAN 08:00 132990 132990 107.00 1154 0 0 0 1585 0 300 0 55.24 679 0 0 0 0 0 0 0 1780 495 495 5 + 202 09 JAN 09:00 139410 139410 107.00 1210 0 0 0 1645 0 300 0 55.26 679 0 0 0 0 0 0 0 1780 435 435 5 + 203 09 JAN 10:00 139089 139089 107.00 1207 0 0 0 1642 0 300 0 55.29 679 0 0 0 0 0 0 0 1780 438 438 5 + 204 09 JAN 11:00 137591 137591 107.00 1194 0 0 0 1628 0 300 0 55.31 679 0 0 0 0 0 0 0 1780 452 452 5 + 205 09 JAN 12:00 135879 135879 107.00 1179 0 0 0 1612 0 300 0 55.33 679 0 0 0 0 0 0 0 1780 468 468 5 + 206 09 JAN 13:00 138126 138126 107.00 1199 0 0 0 1633 0 300 0 55.35 679 0 0 0 0 0 0 0 1780 447 447 5 + 207 09 JAN 14:00 134702 134702 107.00 1169 0 0 0 1601 0 300 0 55.37 679 0 0 0 0 0 0 0 1780 479 479 5 + 208 09 JAN 15:00 132027 132027 107.00 1146 0 0 0 1576 0 300 0 55.40 679 0 0 0 0 0 0 0 1780 504 504 5 + 209 09 JAN 16:00 134060 134060 107.00 1163 0 0 0 1595 0 300 0 55.42 679 0 0 0 0 0 0 0 1780 485 485 5 + 210 09 JAN 17:00 137270 137270 107.00 1191 0 0 0 1625 0 300 0 55.44 679 0 0 0 0 0 0 0 1780 455 455 5 + 211 09 JAN 18:00 133632 133632 107.00 1160 0 0 0 1591 0 300 0 55.46 679 0 0 0 0 0 0 0 1780 489 489 5 + 212 09 JAN 19:00 128068 128068 107.00 1111 0 0 0 1539 0 300 0 55.49 679 0 0 0 0 0 0 0 1780 541 541 5 + 213 09 JAN 20:00 121220 121220 107.00 1052 0 0 0 1475 0 300 0 55.51 679 0 0 0 0 0 0 0 1780 605 605 5 + 214 09 JAN 21:00 112767 112767 107.00 978 0 0 0 1396 0 300 0 55.53 679 0 0 0 0 0 0 0 1780 684 684 5 + 215 09 JAN 22:00 100205 100205 96.00 869 0 0 0 1275 0 300 0 55.55 679 0 0 0 0 0 0 0 1780 805 805 5 + 216 09 JAN 23:00 84461 84461 96.00 733 0 0 0 1111 0 300 0 55.57 679 0 0 0 0 0 0 0 1780 969 969 5 + 217 10 JAN 00:00 81645 81485 -1.00 708 0 0 0 920 0 300 0 55.60 679 0 0 0 0 160 0 0 1780 1000 1160 5 + 218 10 JAN 01:00 81716 81485 -1.00 708 0 0 0 849 0 300 0 55.62 679 0 0 0 0 231 0 0 1780 1000 1231 5 + 219 10 JAN 02:00 81717 81485 -1.00 708 0 0 0 848 0 300 0 55.64 679 0 0 0 0 232 0 0 1780 1000 1232 5 + 220 10 JAN 03:00 81695 81485 -1.00 708 0 0 0 870 0 300 0 55.66 679 0 0 0 0 210 0 0 1780 1000 1210 5 + 221 10 JAN 04:00 81653 81485 -1.00 708 0 0 0 912 0 300 0 55.68 679 0 0 0 0 168 0 0 1780 1000 1168 5 + 222 10 JAN 05:00 81559 81485 -1.00 708 0 0 0 1006 0 300 0 55.71 679 0 0 0 0 74 0 0 1780 1000 1074 5 + 223 10 JAN 06:00 92045 92045 96.00 799 0 0 0 1190 0 300 0 55.73 679 0 0 0 0 0 0 0 1780 890 890 5 + 224 10 JAN 07:00 112874 112874 107.00 979 0 0 0 1397 0 300 0 55.75 679 0 0 0 0 0 0 0 1780 683 683 5 + 225 10 JAN 08:00 129673 129673 107.00 1125 0 0 0 1554 0 300 0 55.77 679 0 0 0 0 0 0 0 1780 526 526 5 + 226 10 JAN 09:00 136842 136842 107.00 1188 0 0 0 1621 0 300 0 55.80 679 0 0 0 0 0 0 0 1780 459 459 5 + 227 10 JAN 10:00 138554 138554 107.00 1203 0 0 0 1637 0 300 0 55.82 679 0 0 0 0 0 0 0 1780 443 443 5 + 228 10 JAN 11:00 137163 137163 107.00 1191 0 0 0 1624 0 300 0 55.84 679 0 0 0 0 0 0 0 1780 456 456 5 + 229 10 JAN 12:00 133953 133953 107.00 1163 0 0 0 1594 0 300 0 55.86 679 0 0 0 0 0 0 0 1780 486 486 5 + 230 10 JAN 13:00 138340 138340 107.00 1201 0 0 0 1635 0 300 0 55.88 679 0 0 0 0 0 0 0 1780 445 445 5 + 231 10 JAN 14:00 140266 140266 107.00 1218 0 0 0 1653 0 300 0 55.91 679 0 0 0 0 0 0 0 1780 427 427 5 + 232 10 JAN 15:00 139731 139731 107.00 1213 0 0 0 1648 0 300 0 55.93 679 0 0 0 0 0 0 0 1780 432 432 5 + 233 10 JAN 16:00 144760 144760 107.00 1257 0 0 0 1695 0 300 0 55.95 679 0 0 0 0 0 0 0 1780 385 385 5 + 234 10 JAN 17:00 152464 152464 107.00 1324 0 0 0 1767 0 300 0 55.97 679 0 0 0 0 0 0 0 1780 313 313 5 + 235 10 JAN 18:00 150645 150645 107.00 1308 0 0 0 1750 0 300 0 55.99 679 0 0 0 0 0 0 0 1780 330 330 5 + 236 10 JAN 19:00 146900 146900 107.00 1275 0 0 0 1715 0 300 0 56.02 679 0 0 0 0 0 0 0 1780 365 365 5 + 237 10 JAN 20:00 141764 141764 107.00 1231 0 0 0 1667 0 300 0 56.04 679 0 0 0 0 0 0 0 1780 413 413 5 + 238 10 JAN 21:00 133204 133204 107.00 1156 0 0 0 1587 0 300 0 56.06 679 0 0 0 0 0 0 0 1780 493 493 5 + 239 10 JAN 22:00 119187 119187 107.00 1034 0 0 0 1456 0 300 0 56.08 679 0 0 0 0 0 0 0 1780 624 624 5 + 240 10 JAN 23:00 100877 100877 96.00 875 0 0 0 1282 0 300 0 56.11 679 0 0 0 0 0 0 0 1780 798 798 5 + 241 11 JAN 00:00 81504 81485 -1.00 708 0 0 0 1061 0 300 0 56.13 679 0 0 0 0 19 0 0 1780 1000 1019 5 + 242 11 JAN 01:00 81597 81485 -1.00 708 0 0 0 968 0 300 0 56.15 679 0 0 0 0 112 0 0 1780 1000 1112 5 + 243 11 JAN 02:00 81651 81485 -1.00 708 0 0 0 914 0 300 0 56.17 679 0 0 0 0 166 0 0 1780 1000 1166 5 + 244 11 JAN 03:00 65480 65434 -1.00 568 0 0 0 884 0 300 0 56.19 679 0 0 0 0 46 0 0 1780 1150 1196 4 + 245 11 JAN 04:00 65475 65434 -1.00 568 0 0 0 889 0 300 0 56.22 679 0 0 0 0 41 0 0 1780 1150 1191 4 + 246 11 JAN 05:00 69178 69178 96.00 600 0 0 0 969 0 300 0 56.24 679 0 0 0 0 0 0 0 1780 1111 1111 4 + 247 11 JAN 06:00 85210 85210 96.00 738 0 0 0 1136 0 300 0 56.26 679 0 0 0 0 0 0 0 1780 944 944 4 + 248 11 JAN 07:00 103778 103778 107.00 900 0 0 0 1312 0 300 0 56.28 679 0 0 0 0 0 0 0 1780 768 768 4 + 249 11 JAN 08:00 115869 115869 107.00 1005 0 0 0 1425 0 300 0 56.30 679 0 0 0 0 0 0 0 1780 655 655 4 + 250 11 JAN 09:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 56.33 679 0 0 0 0 0 0 0 1780 619 619 4 + 251 11 JAN 10:00 118330 118330 107.00 1026 0 0 0 1448 0 300 0 56.35 679 0 0 0 0 0 0 0 1780 632 632 4 + 252 11 JAN 11:00 116083 116083 107.00 1007 0 0 0 1427 0 300 0 56.37 679 0 0 0 0 0 0 0 1780 653 653 4 + 253 11 JAN 12:00 113408 113408 107.00 984 0 0 0 1402 0 300 0 56.39 679 0 0 0 0 0 0 0 1780 678 678 4 + 254 11 JAN 13:00 114478 114478 107.00 993 0 0 0 1412 0 300 0 56.41 679 0 0 0 0 0 0 0 1780 668 668 4 + 255 11 JAN 14:00 112017 112017 107.00 971 0 0 0 1389 0 300 0 56.44 679 0 0 0 0 0 0 0 1780 691 691 4 + 256 11 JAN 15:00 109235 109235 107.00 947 0 0 0 1363 0 300 0 56.46 679 0 0 0 0 0 0 0 1780 717 717 4 + 257 11 JAN 16:00 111910 111910 107.00 971 0 0 0 1388 0 300 0 56.48 679 0 0 0 0 0 0 0 1780 692 692 4 + 258 11 JAN 17:00 117581 117581 107.00 1020 0 0 0 1441 0 300 0 56.50 679 0 0 0 0 0 0 0 1780 639 639 4 + 259 11 JAN 18:00 114478 114478 107.00 993 0 0 0 1412 0 300 0 56.53 679 0 0 0 0 0 0 0 1780 668 668 4 + 260 11 JAN 19:00 109021 109021 107.00 945 0 0 0 1361 0 300 0 56.55 679 0 0 0 0 0 0 0 1780 719 719 4 + 261 11 JAN 20:00 102922 102922 107.00 892 0 0 0 1304 0 300 0 56.57 679 0 0 0 0 0 0 0 1780 776 776 4 + 262 11 JAN 21:00 94575 94575 107.00 820 0 0 0 1226 0 300 0 56.59 679 0 0 0 0 0 0 0 1780 854 854 3 + 263 11 JAN 22:00 82698 82698 107.00 716 0 0 0 1115 0 300 0 56.61 679 0 0 0 0 0 0 0 1780 965 965 3 + 264 11 JAN 23:00 67527 67527 96.00 584 0 0 0 969 0 300 0 56.64 679 0 0 0 0 0 0 0 1780 1111 1111 3 + 265 12 JAN 00:00 49388 49383 -1.00 428 0 0 0 775 0 300 0 56.66 679 0 0 0 0 5 0 0 1780 1300 1305 3 + 266 12 JAN 01:00 49474 49383 -1.00 428 0 0 0 689 0 300 0 56.68 679 0 0 0 0 91 0 0 1780 1300 1391 3 + 267 12 JAN 02:00 49522 49383 -1.00 428 0 0 0 641 0 300 0 56.70 679 0 0 0 0 139 0 0 1780 1300 1439 3 + 268 12 JAN 03:00 49530 49383 -1.00 428 0 0 0 633 0 300 0 56.72 679 0 0 0 0 147 0 0 1780 1300 1447 3 + 269 12 JAN 04:00 49504 49383 -1.00 428 0 0 0 659 0 300 0 56.75 679 0 0 0 0 121 0 0 1780 1300 1421 3 + 270 12 JAN 05:00 49415 49383 -1.00 428 0 0 0 748 0 300 0 56.77 679 0 0 0 0 32 0 0 1780 1300 1332 3 + 271 12 JAN 06:00 134944 134934 -1.00 568 0 0 0 920 0 300 0 56.79 679 0 0 0 0 10 0 0 1780 1150 1160 69504 + 272 12 JAN 07:00 82330 82330 96.00 713 0 0 0 1106 0 300 0 56.81 679 0 0 0 0 0 0 0 1780 974 974 4 + 273 12 JAN 08:00 95753 95753 107.00 830 0 0 0 1237 0 300 0 56.84 679 0 0 0 0 0 0 0 1780 843 843 4 + 274 12 JAN 09:00 101103 101103 107.00 876 0 0 0 1287 0 300 0 56.86 679 0 0 0 0 0 0 0 1780 793 793 4 + 275 12 JAN 10:00 104206 104206 107.00 903 0 0 0 1316 0 300 0 56.88 679 0 0 0 0 0 0 0 1780 764 764 4 + 276 12 JAN 11:00 104848 104848 107.00 909 0 0 0 1322 0 300 0 56.90 679 0 0 0 0 0 0 0 1780 758 758 4 + 277 12 JAN 12:00 103457 103457 107.00 897 0 0 0 1309 0 300 0 56.92 679 0 0 0 0 0 0 0 1780 771 771 4 + 278 12 JAN 13:00 107309 107309 107.00 930 0 0 0 1345 0 300 0 56.95 679 0 0 0 0 0 0 0 1780 735 735 4 + 279 12 JAN 14:00 109984 109984 107.00 954 0 0 0 1370 0 300 0 56.97 679 0 0 0 0 0 0 0 1780 710 710 4 + 280 12 JAN 15:00 262780 262780 96.00 1040 0 0 0 1402 0 300 0 56.99 679 0 0 0 0 0 0 0 1780 678 678 143008 + 281 12 JAN 16:00 129084 129084 107.00 1121 0 0 0 1498 0 300 0 57.01 679 0 0 0 0 0 0 0 1780 582 582 8 + 282 12 JAN 17:00 138821 138821 107.00 1205 0 0 0 1589 0 300 0 57.03 679 0 0 0 0 0 0 0 1780 491 491 8 + 283 12 JAN 18:00 139463 139463 107.00 1211 0 0 0 1595 0 300 0 57.06 679 0 0 0 0 0 0 0 1780 485 485 8 + 284 12 JAN 19:00 136788 136788 107.00 1188 0 0 0 1570 0 300 0 57.08 679 0 0 0 0 0 0 0 1780 510 510 8 + 285 12 JAN 20:00 130368 130368 107.00 1132 0 0 0 1510 0 300 0 57.10 679 0 0 0 0 0 0 0 1780 570 570 8 + 286 12 JAN 21:00 120740 120740 96.00 1049 0 0 0 1412 0 300 0 57.12 679 0 0 0 0 0 0 0 1780 668 668 8 + 287 12 JAN 22:00 108452 108452 96.00 943 0 0 0 1284 0 300 0 57.14 679 0 0 0 0 0 0 0 1780 796 796 8 + 288 12 JAN 23:00 106265 106148 -1.00 923 0 0 0 1143 0 300 0 57.17 679 0 0 0 0 117 0 0 1780 820 937 8 + 289 13 JAN 00:00 1206354 76354 10000.00 662 0 0 0 1093 0 300 0 57.19 679 0 0 0 113 0 1.00 100.00 680 0 -113 4 + 290 13 JAN 01:00 206354 76354 10000.00 662 0 0 0 993 0 300 0 57.21 679 0 0 0 13 0 1.00 100.00 680 0 -13 4 + 291 13 JAN 02:00 71148 71148 137.00 616 0 0 0 942 0 300 0 57.23 679 0 0 0 0 0 0 0 680 38 38 4 + 292 13 JAN 03:00 66901 66901 137.00 579 0 0 0 911 0 300 0 57.26 679 0 0 0 0 0 0 0 680 69 69 4 + 293 13 JAN 04:00 67449 67449 137.00 584 0 0 0 915 0 300 0 57.28 679 0 0 0 0 0 0 0 680 65 65 4 + 294 13 JAN 05:00 76080 76080 137.00 659 0 0 0 978 0 300 0 57.30 679 0 0 0 0 0 0 0 680 2 2 4 + 295 13 JAN 06:00 1546354 76354 10000.00 662 0 0 0 1127 0 300 0 57.32 679 0 0 0 147 0 1.00 100.00 680 0 -147 4 + 296 13 JAN 07:00 3366354 76354 10000.00 662 0 0 0 1309 0 300 0 57.34 679 0 0 0 329 0 1.00 100.00 680 0 -329 4 + 297 13 JAN 08:00 4656354 76354 10000.00 662 0 0 0 1438 0 300 0 57.37 679 0 0 0 458 0 1.00 100.00 680 0 -458 4 + 298 13 JAN 09:00 5086354 76354 10000.00 662 0 0 0 1481 0 300 0 57.39 679 0 0 0 501 0 1.00 100.00 680 0 -501 4 + 299 13 JAN 10:00 5126354 76354 10000.00 662 0 0 0 1485 0 300 0 57.41 679 0 0 0 505 0 1.00 100.00 680 0 -505 4 + 300 13 JAN 11:00 4916354 76354 10000.00 662 0 0 0 1464 0 300 0 57.43 679 0 0 0 484 0 1.00 100.00 680 0 -484 4 + 301 13 JAN 12:00 4646354 76354 10000.00 662 0 0 0 1437 0 300 0 57.45 679 0 0 0 457 0 1.00 100.00 680 0 -457 4 + 302 13 JAN 13:00 4866354 76354 10000.00 662 0 0 0 1459 0 300 0 57.48 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 303 13 JAN 14:00 4896354 76354 10000.00 662 0 0 0 1462 0 300 0 57.50 679 0 0 0 482 0 1.00 100.00 680 0 -482 4 + 304 13 JAN 15:00 4866354 76354 10000.00 662 0 0 0 1459 0 300 0 57.52 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 305 13 JAN 16:00 5526354 76354 10000.00 662 0 0 0 1525 0 300 0 57.54 679 0 0 0 545 0 1.00 100.00 680 0 -545 4 + 306 13 JAN 17:00 6436354 76354 10000.00 662 0 0 0 1616 0 300 0 57.57 679 0 0 0 636 0 1.00 100.00 680 0 -636 4 + 307 13 JAN 18:00 6366354 76354 10000.00 662 0 0 0 1609 0 300 0 57.59 679 0 0 0 629 0 1.00 100.00 680 0 -629 4 + 308 13 JAN 19:00 6046354 76354 10000.00 662 0 0 0 1577 0 300 0 57.61 679 0 0 0 597 0 1.00 100.00 680 0 -597 4 + 309 13 JAN 20:00 5596354 76354 10000.00 662 0 0 0 1532 0 300 0 57.63 679 0 0 0 552 0 1.00 100.00 680 0 -552 4 + 310 13 JAN 21:00 4876354 76354 10000.00 662 0 0 0 1460 0 300 0 57.65 679 0 0 0 480 0 1.00 100.00 680 0 -480 4 + 311 13 JAN 22:00 3746354 76354 10000.00 662 0 0 0 1347 0 300 0 57.68 679 0 0 0 367 0 1.00 100.00 680 0 -367 4 + 312 13 JAN 23:00 2146354 76354 10000.00 662 0 0 0 1187 0 300 0 57.70 679 0 0 0 207 0 1.00 100.00 680 0 -207 4 + 313 14 JAN 00:00 217418 217418 107.00 679 0 0 0 1075 0 300 0 57.72 679 0 0 0 0 0 0 0 1780 1005 1005 139003 + 314 14 JAN 01:00 68295 68295 96.00 591 0 0 0 977 0 300 0 57.74 679 0 0 0 0 0 0 0 1780 1103 1103 3 + 315 14 JAN 02:00 63207 63207 96.00 547 0 0 0 924 0 300 0 57.76 679 0 0 0 0 0 0 0 1780 1156 1156 3 + 316 14 JAN 03:00 134971 134934 -1.00 568 0 0 0 893 0 300 0 57.79 679 0 0 0 0 37 0 0 1780 1150 1187 69504 + 317 14 JAN 04:00 65469 65434 -1.00 568 0 0 0 895 0 300 0 57.81 679 0 0 0 0 35 0 0 1780 1150 1185 4 + 318 14 JAN 05:00 66682 66682 96.00 579 0 0 0 943 0 300 0 57.83 679 0 0 0 0 0 0 0 1780 1137 1137 4 + 319 14 JAN 06:00 77242 77242 96.00 670 0 0 0 1053 0 300 0 57.85 679 0 0 0 0 0 0 0 1780 1027 1027 4 + 320 14 JAN 07:00 92650 92650 107.00 803 0 0 0 1208 0 300 0 57.87 679 0 0 0 0 0 0 0 1780 872 872 4 + 321 14 JAN 08:00 107202 107202 107.00 930 0 0 0 1344 0 300 0 57.90 679 0 0 0 0 0 0 0 1780 736 736 4 + 322 14 JAN 09:00 113729 113729 107.00 986 0 0 0 1405 0 300 0 57.92 679 0 0 0 0 0 0 0 1780 675 675 4 + 323 14 JAN 10:00 113515 113515 107.00 985 0 0 0 1403 0 300 0 57.94 679 0 0 0 0 0 0 0 1780 677 677 4 + 324 14 JAN 11:00 112445 112445 107.00 975 0 0 0 1393 0 300 0 57.96 679 0 0 0 0 0 0 0 1780 687 687 4 + 325 14 JAN 12:00 180876 180876 107.00 966 0 0 0 1383 0 300 0 57.99 679 0 0 0 0 0 0 0 1780 697 697 69505 + 326 14 JAN 13:00 115335 115335 107.00 1000 0 0 0 1420 0 300 0 58.01 679 0 0 0 0 0 0 0 1780 660 660 5 + 327 14 JAN 14:00 117368 117368 107.00 1018 0 0 0 1439 0 300 0 58.03 679 0 0 0 0 0 0 0 1780 641 641 5 + 328 14 JAN 15:00 119936 119936 107.00 1040 0 0 0 1463 0 300 0 58.05 679 0 0 0 0 0 0 0 1780 617 617 5 + 329 14 JAN 16:00 130422 130422 107.00 1132 0 0 0 1561 0 300 0 58.07 679 0 0 0 0 0 0 0 1780 519 519 5 + 330 14 JAN 17:00 142941 142941 107.00 1241 0 0 0 1678 0 300 0 58.10 679 0 0 0 0 0 0 0 1780 402 402 5 + 331 14 JAN 18:00 143476 143476 107.00 1245 0 0 0 1683 0 300 0 58.12 679 0 0 0 0 0 0 0 1780 397 397 5 + 332 14 JAN 19:00 138875 138875 107.00 1205 0 0 0 1640 0 300 0 58.14 679 0 0 0 0 0 0 0 1780 440 440 5 + 333 14 JAN 20:00 132883 132883 107.00 1153 0 0 0 1584 0 300 0 58.16 679 0 0 0 0 0 0 0 1780 496 496 5 + 334 14 JAN 21:00 126998 126998 107.00 1102 0 0 0 1529 0 300 0 58.18 679 0 0 0 0 0 0 0 1780 551 551 5 + 335 14 JAN 22:00 115656 115656 107.00 1003 0 0 0 1423 0 300 0 58.21 679 0 0 0 0 0 0 0 1780 657 657 5 + 336 14 JAN 23:00 100397 100397 96.00 871 0 0 0 1277 0 300 0 58.23 679 0 0 0 0 0 0 0 1780 803 803 5 diff --git a/tests/functional/data_complex_case/milp/details-hourly.txt b/tests/functional/data_complex_case/milp/details-hourly.txt index e4c14754..364b4af5 100644 --- a/tests/functional/data_complex_case/milp/details-hourly.txt +++ b/tests/functional/data_complex_case/milp/details-hourly.txt @@ -1,6 +1,6 @@ BA00 area de hourly VARIABLES BEGIN END - 12 1 168 + 12 1 336 BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU @@ -22,7 +22,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 15 01 JAN 14:00 400 0 300 0 1 0 2 0 1 0 2 0 16 01 JAN 15:00 401 0 300 0 1 0 2 0 1 0 2 0 17 01 JAN 16:00 410 0 344 0 1 0 2 0 1 0 2 0 - 18 01 JAN 17:00 410 0 401 0 1 0 2 0 1 0 2 0 + 18 01 JAN 17:00 410 0 401 0 1 24501 2 0 1 0 2 0 19 01 JAN 18:00 410 0 361 0 1 0 2 0 1 0 2 0 20 01 JAN 19:00 410 0 309 0 1 0 2 0 1 0 2 0 21 01 JAN 20:00 387 0 300 0 1 0 2 0 1 0 2 0 @@ -109,9 +109,9 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 102 05 JAN 05:00 186 0 450 0 1 0 3 0 1 0 3 0 103 05 JAN 06:00 368 0 450 0 1 0 3 0 1 0 3 0 104 05 JAN 07:00 410 0 568 0 1 0 3 0 1 0 3 0 - 105 05 JAN 08:00 410 0 672 0 1 24501 3 0 1 0 3 0 + 105 05 JAN 08:00 410 0 672 0 1 0 3 0 1 0 3 0 106 05 JAN 09:00 410 0 700 0 1 0 3 0 1 0 3 0 - 107 05 JAN 10:00 410 0 690 0 1 24501 3 0 1 0 3 0 + 107 05 JAN 10:00 410 0 690 0 1 0 3 0 1 0 3 0 108 05 JAN 11:00 410 0 675 0 1 0 3 0 1 0 3 0 109 05 JAN 12:00 410 0 662 0 1 0 3 0 1 0 3 0 110 05 JAN 13:00 410 60 655 0 1 24501 3 0 1 1 3 0 @@ -142,7 +142,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 135 06 JAN 14:00 410 60 366 0 1 1 2 0 1 1 2 0 136 06 JAN 15:00 410 60 387 0 1 1 2 0 1 1 2 0 137 06 JAN 16:00 410 60 445 0 1 1 2 0 1 1 2 0 - 138 06 JAN 17:00 410 60 532 0 1 1 2 0 1 1 2 0 + 138 06 JAN 17:00 410 60 532 0 100501 1 2 0 1 1 2 0 139 06 JAN 18:00 410 60 515 0 1 1 2 0 1 1 2 0 140 06 JAN 19:00 410 0 522 0 1 0 2 0 1 0 2 0 141 06 JAN 20:00 410 0 459 0 1 0 2 0 1 0 2 0 @@ -173,3 +173,171 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 166 07 JAN 21:00 410 0 629 0 1 0 3 0 1 0 3 0 167 07 JAN 22:00 410 0 538 0 1 0 2 0 1 0 2 0 168 07 JAN 23:00 410 0 375 0 1 0 2 0 1 0 2 0 + 169 08 JAN 00:00 269 0 300 0 1 0 2 0 1 0 2 0 + 170 08 JAN 01:00 192 0 300 0 1 0 2 0 1 0 2 0 + 171 08 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 172 08 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 173 08 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 174 08 JAN 05:00 282 0 300 0 1 0 2 0 1 0 2 0 + 175 08 JAN 06:00 410 0 364 0 1 0 2 0 1 0 2 0 + 176 08 JAN 07:00 410 0 543 0 1 0 2 0 1 0 2 0 + 177 08 JAN 08:00 410 0 663 0 1 0 69503 0 1 0 3 0 + 178 08 JAN 09:00 410 0 705 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 680 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 0 684 0 1 0 3 0 1 0 3 0 + 181 08 JAN 12:00 410 0 685 0 1 0 3 0 1 0 3 0 + 182 08 JAN 13:00 410 0 743 0 1 0 3 0 1 0 3 0 + 183 08 JAN 14:00 410 0 778 0 1 0 3 0 1 0 3 0 + 184 08 JAN 15:00 410 0 821 0 1 0 3 0 1 0 3 0 + 185 08 JAN 16:00 410 0 895 0 1 0 69504 0 1 0 4 0 + 186 08 JAN 17:00 410 0 999 0 1 0 4 0 1 0 4 0 + 187 08 JAN 18:00 410 0 1011 0 1 0 4 0 1 0 4 0 + 188 08 JAN 19:00 410 0 973 0 1 0 4 0 1 0 4 0 + 189 08 JAN 20:00 410 0 894 0 1 0 4 0 1 0 4 0 + 190 08 JAN 21:00 410 0 791 0 1 0 4 0 1 0 4 0 + 191 08 JAN 22:00 410 0 659 0 1 0 4 0 1 0 4 0 + 192 08 JAN 23:00 300 0 600 0 1 0 4 0 1 0 4 0 + 193 09 JAN 00:00 270 0 600 0 1 0 4 0 1 0 4 0 + 194 09 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 195 09 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 196 09 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 197 09 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 198 09 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 199 09 JAN 06:00 345 0 600 0 1 0 4 0 1 0 4 0 + 200 09 JAN 07:00 410 0 729 0 1 0 4 0 1 0 4 0 + 201 09 JAN 08:00 410 0 875 0 1 0 4 0 1 0 4 0 + 202 09 JAN 09:00 410 0 935 0 1 0 4 0 1 0 4 0 + 203 09 JAN 10:00 410 0 932 0 1 0 4 0 1 0 4 0 + 204 09 JAN 11:00 410 0 918 0 1 0 4 0 1 0 4 0 + 205 09 JAN 12:00 410 0 902 0 1 0 4 0 1 0 4 0 + 206 09 JAN 13:00 410 0 923 0 1 0 4 0 1 0 4 0 + 207 09 JAN 14:00 410 0 891 0 1 0 4 0 1 0 4 0 + 208 09 JAN 15:00 410 0 866 0 1 0 4 0 1 0 4 0 + 209 09 JAN 16:00 410 0 885 0 1 0 4 0 1 0 4 0 + 210 09 JAN 17:00 410 0 915 0 1 0 4 0 1 0 4 0 + 211 09 JAN 18:00 410 0 881 0 1 0 4 0 1 0 4 0 + 212 09 JAN 19:00 410 0 829 0 1 0 4 0 1 0 4 0 + 213 09 JAN 20:00 410 0 765 0 1 0 3 0 1 0 3 0 + 214 09 JAN 21:00 410 0 686 0 1 0 3 0 1 0 3 0 + 215 09 JAN 22:00 410 0 565 0 1 0 3 0 1 0 3 0 + 216 09 JAN 23:00 361 0 450 0 1 0 3 0 1 0 3 0 + 217 10 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 218 10 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 219 10 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 220 10 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 221 10 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 222 10 JAN 05:00 256 0 450 0 1 0 3 0 1 0 3 0 + 223 10 JAN 06:00 410 0 480 0 1 0 3 0 1 0 3 0 + 224 10 JAN 07:00 410 0 687 0 1 0 3 0 1 0 3 0 + 225 10 JAN 08:00 410 0 844 0 1 0 69504 0 1 0 4 0 + 226 10 JAN 09:00 410 0 911 0 1 0 4 0 1 0 4 0 + 227 10 JAN 10:00 410 0 927 0 1 0 4 0 1 0 4 0 + 228 10 JAN 11:00 410 0 914 0 1 0 4 0 1 0 4 0 + 229 10 JAN 12:00 410 0 884 0 1 0 4 0 1 0 4 0 + 230 10 JAN 13:00 410 0 925 0 1 0 4 0 1 0 4 0 + 231 10 JAN 14:00 410 0 943 0 1 0 4 0 1 0 4 0 + 232 10 JAN 15:00 410 0 938 0 1 0 4 0 1 0 4 0 + 233 10 JAN 16:00 410 0 985 0 1 0 4 0 1 0 4 0 + 234 10 JAN 17:00 410 0 1057 0 1 0 4 0 1 0 4 0 + 235 10 JAN 18:00 410 0 1040 0 1 0 4 0 1 0 4 0 + 236 10 JAN 19:00 410 0 1005 0 1 0 4 0 1 0 4 0 + 237 10 JAN 20:00 410 0 957 0 1 0 4 0 1 0 4 0 + 238 10 JAN 21:00 410 0 877 0 1 0 4 0 1 0 4 0 + 239 10 JAN 22:00 410 0 746 0 1 0 3 0 1 0 3 0 + 240 10 JAN 23:00 410 0 572 0 1 0 3 0 1 0 3 0 + 241 11 JAN 00:00 311 0 450 0 1 0 3 0 1 0 3 0 + 242 11 JAN 01:00 218 0 450 0 1 0 3 0 1 0 3 0 + 243 11 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 244 11 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 245 11 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 246 11 JAN 05:00 219 0 450 0 1 0 3 0 1 0 3 0 + 247 11 JAN 06:00 386 0 450 0 1 0 3 0 1 0 3 0 + 248 11 JAN 07:00 410 0 602 0 1 0 3 0 1 0 3 0 + 249 11 JAN 08:00 410 0 715 0 1 0 3 0 1 0 3 0 + 250 11 JAN 09:00 410 0 751 0 1 0 3 0 1 0 3 0 + 251 11 JAN 10:00 410 0 738 0 1 0 3 0 1 0 3 0 + 252 11 JAN 11:00 410 0 717 0 1 0 3 0 1 0 3 0 + 253 11 JAN 12:00 410 0 692 0 1 0 3 0 1 0 3 0 + 254 11 JAN 13:00 410 0 702 0 1 0 3 0 1 0 3 0 + 255 11 JAN 14:00 410 0 679 0 1 0 3 0 1 0 3 0 + 256 11 JAN 15:00 410 0 653 0 1 0 3 0 1 0 3 0 + 257 11 JAN 16:00 410 0 678 0 1 0 3 0 1 0 3 0 + 258 11 JAN 17:00 410 0 731 0 1 0 3 0 1 0 3 0 + 259 11 JAN 18:00 410 0 702 0 1 0 3 0 1 0 3 0 + 260 11 JAN 19:00 410 0 651 0 1 0 3 0 1 0 3 0 + 261 11 JAN 20:00 410 0 594 0 1 0 3 0 1 0 3 0 + 262 11 JAN 21:00 410 0 516 0 1 0 2 0 1 0 2 0 + 263 11 JAN 22:00 410 0 405 0 1 0 2 0 1 0 2 0 + 264 11 JAN 23:00 369 0 300 0 1 0 2 0 1 0 2 0 + 265 12 JAN 00:00 180 0 300 0 1 0 2 0 1 0 2 0 + 266 12 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 + 267 12 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 268 12 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 269 12 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 270 12 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 + 271 12 JAN 06:00 320 0 300 0 1 0 2 0 1 0 2 0 + 272 12 JAN 07:00 410 0 396 0 1 0 2 0 1 0 2 0 + 273 12 JAN 08:00 410 0 527 0 1 0 2 0 1 0 2 0 + 274 12 JAN 09:00 410 0 577 0 1 0 69503 0 1 0 3 0 + 275 12 JAN 10:00 410 0 606 0 1 0 3 0 1 0 3 0 + 276 12 JAN 11:00 410 0 612 0 1 0 3 0 1 0 3 0 + 277 12 JAN 12:00 410 0 599 0 1 0 3 0 1 0 3 0 + 278 12 JAN 13:00 410 0 635 0 1 0 3 0 1 0 3 0 + 279 12 JAN 14:00 410 0 660 0 1 0 3 0 1 0 3 0 + 280 12 JAN 15:00 410 0 692 0 1 0 3 0 1 0 3 0 + 281 12 JAN 16:00 410 0 788 0 1 0 3 0 1 0 3 0 + 282 12 JAN 17:00 410 60 819 0 1 24501 3 0 1 1 3 0 + 283 12 JAN 18:00 410 60 825 0 1 1 3 0 1 1 3 0 + 284 12 JAN 19:00 410 60 800 0 1 1 3 0 1 1 3 0 + 285 12 JAN 20:00 410 60 740 0 1 1 3 0 1 1 3 0 + 286 12 JAN 21:00 410 60 642 0 1 1 3 0 1 1 3 0 + 287 12 JAN 22:00 410 60 514 0 1 1 2 0 1 1 2 0 + 288 12 JAN 23:00 410 60 373 0 1 1 2 0 1 1 2 0 + 289 13 JAN 00:00 410 270 0 0 1 49003 0 0 1 3 0 0 + 290 13 JAN 01:00 410 270 0 0 1 3 0 0 1 3 0 0 + 291 13 JAN 02:00 410 232 0 0 1 3 0 0 1 3 0 0 + 292 13 JAN 03:00 410 201 0 0 1 3 0 0 1 3 0 0 + 293 13 JAN 04:00 410 205 0 0 1 3 0 0 1 3 0 0 + 294 13 JAN 05:00 410 268 0 0 1 3 0 0 1 3 0 0 + 295 13 JAN 06:00 410 270 0 0 1 3 0 0 1 3 0 0 + 296 13 JAN 07:00 410 270 0 0 1 3 0 0 1 3 0 0 + 297 13 JAN 08:00 410 270 0 0 1 3 0 0 1 3 0 0 + 298 13 JAN 09:00 410 270 0 0 1 3 0 0 1 3 0 0 + 299 13 JAN 10:00 410 270 0 0 1 3 0 0 1 3 0 0 + 300 13 JAN 11:00 410 270 0 0 1 3 0 0 1 3 0 0 + 301 13 JAN 12:00 410 270 0 0 1 3 0 0 1 3 0 0 + 302 13 JAN 13:00 410 270 0 0 1 3 0 0 1 3 0 0 + 303 13 JAN 14:00 410 270 0 0 1 3 0 0 1 3 0 0 + 304 13 JAN 15:00 410 270 0 0 1 3 0 0 1 3 0 0 + 305 13 JAN 16:00 410 270 0 0 1 3 0 0 1 3 0 0 + 306 13 JAN 17:00 410 270 0 0 1 3 0 0 1 3 0 0 + 307 13 JAN 18:00 410 270 0 0 1 3 0 0 1 3 0 0 + 308 13 JAN 19:00 410 270 0 0 1 3 0 0 1 3 0 0 + 309 13 JAN 20:00 410 270 0 0 1 3 0 0 1 3 0 0 + 310 13 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 + 311 13 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 + 312 13 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 + 313 14 JAN 00:00 410 120 245 0 1 2 69501 0 1 2 1 0 + 314 14 JAN 01:00 407 120 150 0 1 2 1 0 1 2 1 0 + 315 14 JAN 02:00 354 120 150 0 1 2 1 0 1 2 1 0 + 316 14 JAN 03:00 323 120 150 0 1 2 1 0 1 2 1 0 + 317 14 JAN 04:00 325 120 150 0 1 2 1 0 1 2 1 0 + 318 14 JAN 05:00 373 120 150 0 1 2 1 0 1 2 1 0 + 319 14 JAN 06:00 410 120 223 0 1 2 1 0 1 2 1 0 + 320 14 JAN 07:00 410 120 378 0 1 2 69502 0 1 2 2 0 + 321 14 JAN 08:00 410 120 514 0 1 2 2 0 1 2 2 0 + 322 14 JAN 09:00 410 120 575 0 1 2 69503 0 1 2 3 0 + 323 14 JAN 10:00 410 120 573 0 1 2 3 0 1 2 3 0 + 324 14 JAN 11:00 410 120 563 0 1 2 3 0 1 2 3 0 + 325 14 JAN 12:00 410 120 553 0 1 2 3 0 1 2 3 0 + 326 14 JAN 13:00 410 120 590 0 1 2 3 0 1 2 3 0 + 327 14 JAN 14:00 410 120 609 0 1 2 3 0 1 2 3 0 + 328 14 JAN 15:00 410 120 633 0 1 2 3 0 1 2 3 0 + 329 14 JAN 16:00 410 120 731 0 1 2 3 0 1 2 3 0 + 330 14 JAN 17:00 410 143 825 0 1 2 3 0 1 2 3 0 + 331 14 JAN 18:00 410 148 825 0 1 2 3 0 1 2 3 0 + 332 14 JAN 19:00 410 120 810 0 1 2 3 0 1 2 3 0 + 333 14 JAN 20:00 410 60 814 0 1 1 3 0 1 1 3 0 + 334 14 JAN 21:00 410 0 819 0 1 0 3 0 1 0 3 0 + 335 14 JAN 22:00 410 0 713 0 1 0 3 0 1 0 3 0 + 336 14 JAN 23:00 410 0 567 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/data_complex_case/milp/values-hourly.txt b/tests/functional/data_complex_case/milp/values-hourly.txt index 620bf887..ececb9b6 100644 --- a/tests/functional/data_complex_case/milp/values-hourly.txt +++ b/tests/functional/data_complex_case/milp/values-hourly.txt @@ -1,6 +1,6 @@ BA00 area va hourly VARIABLES BEGIN END - 23 1 168 + 23 1 336 BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro @@ -22,7 +22,7 @@ BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. RO 15 01 JAN 14:00 70503 70503 610 0 0 0 1000 0 300 0 50.40 760 0 0 0 0 0 0 0 1780 1080 1080 3 16 01 JAN 15:00 70599 70599 611 0 0 0 1001 0 300 0 50.43 760 0 0 0 0 0 0 0 1780 1079 1079 3 17 01 JAN 16:00 76171 76171 659 0 0 0 1054 0 300 0 50.46 760 0 0 0 0 0 0 0 1780 1026 1026 3 - 18 01 JAN 17:00 82270 82270 712 0 0 0 1111 0 300 0 50.48 760 0 0 0 0 0 0 0 1780 969 969 3 + 18 01 JAN 17:00 106771 106771 712 0 0 0 1111 0 300 0 50.48 760 0 0 0 0 0 0 0 1780 969 969 24504 19 01 JAN 18:00 77990 77990 675 0 0 0 1071 0 300 0 50.51 760 0 0 0 0 0 0 0 1780 1009 1009 3 20 01 JAN 19:00 72426 72426 627 0 0 0 1019 0 300 0 50.54 760 0 0 0 0 0 0 0 1780 1061 1061 3 21 01 JAN 20:00 69255 69255 599 0 0 0 987 0 300 0 50.56 760 0 0 0 0 0 0 0 1780 1093 1093 3 @@ -109,9 +109,9 @@ BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. RO 102 05 JAN 05:00 66010 66010 573 0 0 0 936 0 300 0 52.74 760 0 0 0 0 0 0 0 1780 1144 1144 4 103 05 JAN 06:00 83482 83482 723 0 0 0 1118 0 300 0 52.77 760 0 0 0 0 0 0 0 1780 962 962 4 104 05 JAN 07:00 100140 100140 868 0 0 0 1278 0 300 0 52.79 760 0 0 0 0 0 0 0 1780 802 802 4 - 105 05 JAN 08:00 135769 135769 965 0 0 0 1382 0 300 0 52.82 760 0 0 0 0 0 0 0 1780 698 698 24505 + 105 05 JAN 08:00 111268 111268 965 0 0 0 1382 0 300 0 52.82 760 0 0 0 0 0 0 0 1780 698 698 4 106 05 JAN 09:00 114264 114264 991 0 0 0 1410 0 300 0 52.85 760 0 0 0 0 0 0 0 1780 670 670 4 - 107 05 JAN 10:00 137695 137695 982 0 0 0 1400 0 300 0 52.87 760 0 0 0 0 0 0 0 1780 680 680 24505 + 107 05 JAN 10:00 113194 113194 982 0 0 0 1400 0 300 0 52.87 760 0 0 0 0 0 0 0 1780 680 680 4 108 05 JAN 11:00 111589 111589 968 0 0 0 1385 0 300 0 52.90 760 0 0 0 0 0 0 0 1780 695 695 4 109 05 JAN 12:00 110198 110198 956 0 0 0 1372 0 300 0 52.93 760 0 0 0 0 0 0 0 1780 708 708 4 110 05 JAN 13:00 142170 142170 1021 0 0 0 1425 0 300 0 52.95 760 0 0 0 0 0 0 0 1780 655 655 24505 @@ -142,7 +142,7 @@ BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. RO 135 06 JAN 14:00 86746 86746 752 0 0 0 1136 0 300 0 53.63 760 0 0 0 0 0 0 0 1780 944 944 4 136 06 JAN 15:00 88993 88993 771 0 0 0 1157 0 300 0 53.65 760 0 0 0 0 0 0 0 1780 923 923 4 137 06 JAN 16:00 95199 95199 825 0 0 0 1215 0 300 0 53.68 760 0 0 0 0 0 0 0 1780 865 865 4 - 138 06 JAN 17:00 104508 104508 906 0 0 0 1302 0 300 0 53.71 760 0 0 0 0 0 0 0 1780 778 778 4 + 138 06 JAN 17:00 205008 205008 906 0 0 0 1302 0 300 0 53.71 760 0 0 0 0 0 0 0 1780 778 778 100504 139 06 JAN 18:00 102689 102689 890 0 0 0 1285 0 300 0 53.73 760 0 0 0 0 0 0 0 1780 795 795 4 140 06 JAN 19:00 95217 95217 825 0 0 0 1232 0 300 0 53.76 760 0 0 0 0 0 0 0 1780 848 848 3 141 06 JAN 20:00 88476 88476 766 0 0 0 1169 0 300 0 53.79 760 0 0 0 0 0 0 0 1780 911 911 3 @@ -173,3 +173,171 @@ BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. RO 166 07 JAN 21:00 106667 106667 925 0 0 0 1339 0 300 0 54.46 760 0 0 0 0 0 0 0 1780 741 741 4 167 07 JAN 22:00 96929 96929 840 0 0 0 1248 0 300 0 54.49 760 0 0 0 0 0 0 0 1780 832 832 3 168 07 JAN 23:00 79488 79488 688 0 0 0 1085 0 300 0 54.51 760 0 0 0 0 0 0 0 1780 995 995 3 + 169 08 JAN 00:00 57927 57927 502 0 0 0 869 0 300 0 54.53 679 0 0 0 0 0 0 0 1780 1211 1211 3 + 170 08 JAN 01:00 50535 50535 438 0 0 0 792 0 300 0 54.56 679 0 0 0 0 0 0 0 1780 1288 1288 3 + 171 08 JAN 02:00 49402 49383 428 0 0 0 761 0 300 0 54.58 679 0 0 0 0 19 0 0 1780 1300 1319 3 + 172 08 JAN 03:00 49413 49383 428 0 0 0 750 0 300 0 54.60 679 0 0 0 0 30 0 0 1780 1300 1330 3 + 173 08 JAN 04:00 49386 49383 428 0 0 0 777 0 300 0 54.62 679 0 0 0 0 3 0 0 1780 1300 1303 3 + 174 08 JAN 05:00 59175 59175 513 0 0 0 882 0 300 0 54.64 679 0 0 0 0 0 0 0 1780 1198 1198 3 + 175 08 JAN 06:00 78311 78311 678 0 0 0 1074 0 300 0 54.67 679 0 0 0 0 0 0 0 1780 1006 1006 3 + 176 08 JAN 07:00 97464 97464 845 0 0 0 1253 0 300 0 54.69 679 0 0 0 0 0 0 0 1780 827 827 3 + 177 08 JAN 08:00 179805 179805 957 0 0 0 1373 0 300 0 54.71 679 0 0 0 0 0 0 0 1780 707 707 69504 + 178 08 JAN 09:00 114799 114799 996 0 0 0 1415 0 300 0 54.73 679 0 0 0 0 0 0 0 1780 665 665 4 + 179 08 JAN 10:00 112124 112124 972 0 0 0 1390 0 300 0 54.76 679 0 0 0 0 0 0 0 1780 690 690 4 + 180 08 JAN 11:00 112552 112552 976 0 0 0 1394 0 300 0 54.78 679 0 0 0 0 0 0 0 1780 686 686 4 + 181 08 JAN 12:00 112659 112659 977 0 0 0 1395 0 300 0 54.80 679 0 0 0 0 0 0 0 1780 685 685 4 + 182 08 JAN 13:00 118865 118865 1031 0 0 0 1453 0 300 0 54.82 679 0 0 0 0 0 0 0 1780 627 627 4 + 183 08 JAN 14:00 122610 122610 1064 0 0 0 1488 0 300 0 54.84 679 0 0 0 0 0 0 0 1780 592 592 4 + 184 08 JAN 15:00 127211 127211 1104 0 0 0 1531 0 300 0 54.87 679 0 0 0 0 0 0 0 1780 549 549 4 + 185 08 JAN 16:00 204630 204630 1173 0 0 0 1605 0 300 0 54.89 679 0 0 0 0 0 0 0 1780 475 475 69505 + 186 08 JAN 17:00 146258 146258 1270 0 0 0 1709 0 300 0 54.91 679 0 0 0 0 0 0 0 1780 371 371 5 + 187 08 JAN 18:00 147542 147542 1281 0 0 0 1721 0 300 0 54.93 679 0 0 0 0 0 0 0 1780 359 359 5 + 188 08 JAN 19:00 143476 143476 1245 0 0 0 1683 0 300 0 54.95 679 0 0 0 0 0 0 0 1780 397 397 5 + 189 08 JAN 20:00 135023 135023 1172 0 0 0 1604 0 300 0 54.98 679 0 0 0 0 0 0 0 1780 476 476 5 + 190 08 JAN 21:00 124002 124002 1076 0 0 0 1501 0 300 0 55.00 679 0 0 0 0 0 0 0 1780 579 579 5 + 191 08 JAN 22:00 109878 109878 953 0 0 0 1369 0 300 0 55.02 679 0 0 0 0 0 0 0 1780 711 711 5 + 192 08 JAN 23:00 93005 93005 807 0 0 0 1200 0 300 0 55.04 679 0 0 0 0 0 0 0 1780 880 880 5 + 193 09 JAN 00:00 90125 90125 782 0 0 0 1170 0 300 0 55.07 679 0 0 0 0 0 0 0 1780 910 910 5 + 194 09 JAN 01:00 81504 81485 708 0 0 0 1061 0 300 0 55.09 679 0 0 0 0 19 0 0 1780 1000 1019 5 + 195 09 JAN 02:00 81560 81485 708 0 0 0 1005 0 300 0 55.11 679 0 0 0 0 75 0 0 1780 1000 1075 5 + 196 09 JAN 03:00 81582 81485 708 0 0 0 983 0 300 0 55.13 679 0 0 0 0 97 0 0 1780 1000 1097 5 + 197 09 JAN 04:00 81569 81485 708 0 0 0 996 0 300 0 55.15 679 0 0 0 0 84 0 0 1780 1000 1084 5 + 198 09 JAN 05:00 81488 81485 708 0 0 0 1077 0 300 0 55.18 679 0 0 0 0 3 0 0 1780 1000 1003 5 + 199 09 JAN 06:00 97325 97325 844 0 0 0 1245 0 300 0 55.20 679 0 0 0 0 0 0 0 1780 835 835 5 + 200 09 JAN 07:00 117368 117368 1018 0 0 0 1439 0 300 0 55.22 679 0 0 0 0 0 0 0 1780 641 641 5 + 201 09 JAN 08:00 132990 132990 1154 0 0 0 1585 0 300 0 55.24 679 0 0 0 0 0 0 0 1780 495 495 5 + 202 09 JAN 09:00 139410 139410 1210 0 0 0 1645 0 300 0 55.26 679 0 0 0 0 0 0 0 1780 435 435 5 + 203 09 JAN 10:00 139089 139089 1207 0 0 0 1642 0 300 0 55.29 679 0 0 0 0 0 0 0 1780 438 438 5 + 204 09 JAN 11:00 137591 137591 1194 0 0 0 1628 0 300 0 55.31 679 0 0 0 0 0 0 0 1780 452 452 5 + 205 09 JAN 12:00 135879 135879 1179 0 0 0 1612 0 300 0 55.33 679 0 0 0 0 0 0 0 1780 468 468 5 + 206 09 JAN 13:00 138126 138126 1199 0 0 0 1633 0 300 0 55.35 679 0 0 0 0 0 0 0 1780 447 447 5 + 207 09 JAN 14:00 134702 134702 1169 0 0 0 1601 0 300 0 55.37 679 0 0 0 0 0 0 0 1780 479 479 5 + 208 09 JAN 15:00 132027 132027 1146 0 0 0 1576 0 300 0 55.40 679 0 0 0 0 0 0 0 1780 504 504 5 + 209 09 JAN 16:00 134060 134060 1163 0 0 0 1595 0 300 0 55.42 679 0 0 0 0 0 0 0 1780 485 485 5 + 210 09 JAN 17:00 137270 137270 1191 0 0 0 1625 0 300 0 55.44 679 0 0 0 0 0 0 0 1780 455 455 5 + 211 09 JAN 18:00 133632 133632 1160 0 0 0 1591 0 300 0 55.46 679 0 0 0 0 0 0 0 1780 489 489 5 + 212 09 JAN 19:00 128068 128068 1111 0 0 0 1539 0 300 0 55.49 679 0 0 0 0 0 0 0 1780 541 541 5 + 213 09 JAN 20:00 121219 121219 1052 0 0 0 1475 0 300 0 55.51 679 0 0 0 0 0 0 0 1780 605 605 4 + 214 09 JAN 21:00 112766 112766 978 0 0 0 1396 0 300 0 55.53 679 0 0 0 0 0 0 0 1780 684 684 4 + 215 09 JAN 22:00 99819 99819 865 0 0 0 1275 0 300 0 55.55 679 0 0 0 0 0 0 0 1780 805 805 4 + 216 09 JAN 23:00 82810 82810 718 0 0 0 1111 0 300 0 55.57 679 0 0 0 0 0 0 0 1780 969 969 4 + 217 10 JAN 00:00 65444 65434 568 0 0 0 920 0 300 0 55.60 679 0 0 0 0 10 0 0 1780 1150 1160 4 + 218 10 JAN 01:00 65515 65434 568 0 0 0 849 0 300 0 55.62 679 0 0 0 0 81 0 0 1780 1150 1231 4 + 219 10 JAN 02:00 65516 65434 568 0 0 0 848 0 300 0 55.64 679 0 0 0 0 82 0 0 1780 1150 1232 4 + 220 10 JAN 03:00 65494 65434 568 0 0 0 870 0 300 0 55.66 679 0 0 0 0 60 0 0 1780 1150 1210 4 + 221 10 JAN 04:00 65452 65434 568 0 0 0 912 0 300 0 55.68 679 0 0 0 0 18 0 0 1780 1150 1168 4 + 222 10 JAN 05:00 72730 72730 631 0 0 0 1006 0 300 0 55.71 679 0 0 0 0 0 0 0 1780 1074 1074 4 + 223 10 JAN 06:00 90724 90724 786 0 0 0 1190 0 300 0 55.73 679 0 0 0 0 0 0 0 1780 890 890 4 + 224 10 JAN 07:00 112873 112873 979 0 0 0 1397 0 300 0 55.75 679 0 0 0 0 0 0 0 1780 683 683 4 + 225 10 JAN 08:00 199173 199173 1125 0 0 0 1554 0 300 0 55.77 679 0 0 0 0 0 0 0 1780 526 526 69505 + 226 10 JAN 09:00 136842 136842 1188 0 0 0 1621 0 300 0 55.80 679 0 0 0 0 0 0 0 1780 459 459 5 + 227 10 JAN 10:00 138554 138554 1203 0 0 0 1637 0 300 0 55.82 679 0 0 0 0 0 0 0 1780 443 443 5 + 228 10 JAN 11:00 137163 137163 1191 0 0 0 1624 0 300 0 55.84 679 0 0 0 0 0 0 0 1780 456 456 5 + 229 10 JAN 12:00 133953 133953 1163 0 0 0 1594 0 300 0 55.86 679 0 0 0 0 0 0 0 1780 486 486 5 + 230 10 JAN 13:00 138340 138340 1201 0 0 0 1635 0 300 0 55.88 679 0 0 0 0 0 0 0 1780 445 445 5 + 231 10 JAN 14:00 140266 140266 1218 0 0 0 1653 0 300 0 55.91 679 0 0 0 0 0 0 0 1780 427 427 5 + 232 10 JAN 15:00 139731 139731 1213 0 0 0 1648 0 300 0 55.93 679 0 0 0 0 0 0 0 1780 432 432 5 + 233 10 JAN 16:00 144760 144760 1257 0 0 0 1695 0 300 0 55.95 679 0 0 0 0 0 0 0 1780 385 385 5 + 234 10 JAN 17:00 152464 152464 1324 0 0 0 1767 0 300 0 55.97 679 0 0 0 0 0 0 0 1780 313 313 5 + 235 10 JAN 18:00 150645 150645 1308 0 0 0 1750 0 300 0 55.99 679 0 0 0 0 0 0 0 1780 330 330 5 + 236 10 JAN 19:00 146900 146900 1275 0 0 0 1715 0 300 0 56.02 679 0 0 0 0 0 0 0 1780 365 365 5 + 237 10 JAN 20:00 141764 141764 1231 0 0 0 1667 0 300 0 56.04 679 0 0 0 0 0 0 0 1780 413 413 5 + 238 10 JAN 21:00 133204 133204 1156 0 0 0 1587 0 300 0 56.06 679 0 0 0 0 0 0 0 1780 493 493 5 + 239 10 JAN 22:00 119186 119186 1034 0 0 0 1456 0 300 0 56.08 679 0 0 0 0 0 0 0 1780 624 624 4 + 240 10 JAN 23:00 100568 100568 872 0 0 0 1282 0 300 0 56.11 679 0 0 0 0 0 0 0 1780 798 798 4 + 241 11 JAN 00:00 78010 78010 676 0 0 0 1061 0 300 0 56.13 679 0 0 0 0 0 0 0 1780 1019 1019 4 + 242 11 JAN 01:00 69082 69082 599 0 0 0 968 0 300 0 56.15 679 0 0 0 0 0 0 0 1780 1112 1112 4 + 243 11 JAN 02:00 65450 65434 568 0 0 0 914 0 300 0 56.17 679 0 0 0 0 16 0 0 1780 1150 1166 4 + 244 11 JAN 03:00 65480 65434 568 0 0 0 884 0 300 0 56.19 679 0 0 0 0 46 0 0 1780 1150 1196 4 + 245 11 JAN 04:00 65475 65434 568 0 0 0 889 0 300 0 56.22 679 0 0 0 0 41 0 0 1780 1150 1191 4 + 246 11 JAN 05:00 69178 69178 600 0 0 0 969 0 300 0 56.24 679 0 0 0 0 0 0 0 1780 1111 1111 4 + 247 11 JAN 06:00 85210 85210 738 0 0 0 1136 0 300 0 56.26 679 0 0 0 0 0 0 0 1780 944 944 4 + 248 11 JAN 07:00 103778 103778 900 0 0 0 1312 0 300 0 56.28 679 0 0 0 0 0 0 0 1780 768 768 4 + 249 11 JAN 08:00 115869 115869 1005 0 0 0 1425 0 300 0 56.30 679 0 0 0 0 0 0 0 1780 655 655 4 + 250 11 JAN 09:00 119721 119721 1039 0 0 0 1461 0 300 0 56.33 679 0 0 0 0 0 0 0 1780 619 619 4 + 251 11 JAN 10:00 118330 118330 1026 0 0 0 1448 0 300 0 56.35 679 0 0 0 0 0 0 0 1780 632 632 4 + 252 11 JAN 11:00 116083 116083 1007 0 0 0 1427 0 300 0 56.37 679 0 0 0 0 0 0 0 1780 653 653 4 + 253 11 JAN 12:00 113408 113408 984 0 0 0 1402 0 300 0 56.39 679 0 0 0 0 0 0 0 1780 678 678 4 + 254 11 JAN 13:00 114478 114478 993 0 0 0 1412 0 300 0 56.41 679 0 0 0 0 0 0 0 1780 668 668 4 + 255 11 JAN 14:00 112017 112017 971 0 0 0 1389 0 300 0 56.44 679 0 0 0 0 0 0 0 1780 691 691 4 + 256 11 JAN 15:00 109235 109235 947 0 0 0 1363 0 300 0 56.46 679 0 0 0 0 0 0 0 1780 717 717 4 + 257 11 JAN 16:00 111910 111910 971 0 0 0 1388 0 300 0 56.48 679 0 0 0 0 0 0 0 1780 692 692 4 + 258 11 JAN 17:00 117581 117581 1020 0 0 0 1441 0 300 0 56.50 679 0 0 0 0 0 0 0 1780 639 639 4 + 259 11 JAN 18:00 114478 114478 993 0 0 0 1412 0 300 0 56.53 679 0 0 0 0 0 0 0 1780 668 668 4 + 260 11 JAN 19:00 109021 109021 945 0 0 0 1361 0 300 0 56.55 679 0 0 0 0 0 0 0 1780 719 719 4 + 261 11 JAN 20:00 102922 102922 892 0 0 0 1304 0 300 0 56.57 679 0 0 0 0 0 0 0 1780 776 776 4 + 262 11 JAN 21:00 94575 94575 820 0 0 0 1226 0 300 0 56.59 679 0 0 0 0 0 0 0 1780 854 854 3 + 263 11 JAN 22:00 82698 82698 716 0 0 0 1115 0 300 0 56.61 679 0 0 0 0 0 0 0 1780 965 965 3 + 264 11 JAN 23:00 67527 67527 584 0 0 0 969 0 300 0 56.64 679 0 0 0 0 0 0 0 1780 1111 1111 3 + 265 12 JAN 00:00 49388 49383 428 0 0 0 775 0 300 0 56.66 679 0 0 0 0 5 0 0 1780 1300 1305 3 + 266 12 JAN 01:00 49474 49383 428 0 0 0 689 0 300 0 56.68 679 0 0 0 0 91 0 0 1780 1300 1391 3 + 267 12 JAN 02:00 49522 49383 428 0 0 0 641 0 300 0 56.70 679 0 0 0 0 139 0 0 1780 1300 1439 3 + 268 12 JAN 03:00 49530 49383 428 0 0 0 633 0 300 0 56.72 679 0 0 0 0 147 0 0 1780 1300 1447 3 + 269 12 JAN 04:00 49504 49383 428 0 0 0 659 0 300 0 56.75 679 0 0 0 0 121 0 0 1780 1300 1421 3 + 270 12 JAN 05:00 49415 49383 428 0 0 0 748 0 300 0 56.77 679 0 0 0 0 32 0 0 1780 1300 1332 3 + 271 12 JAN 06:00 62823 62823 544 0 0 0 920 0 300 0 56.79 679 0 0 0 0 0 0 0 1780 1160 1160 3 + 272 12 JAN 07:00 81735 81735 708 0 0 0 1106 0 300 0 56.81 679 0 0 0 0 0 0 0 1780 974 974 3 + 273 12 JAN 08:00 95752 95752 830 0 0 0 1237 0 300 0 56.84 679 0 0 0 0 0 0 0 1780 843 843 3 + 274 12 JAN 09:00 170603 170603 876 0 0 0 1287 0 300 0 56.86 679 0 0 0 0 0 0 0 1780 793 793 69504 + 275 12 JAN 10:00 104206 104206 903 0 0 0 1316 0 300 0 56.88 679 0 0 0 0 0 0 0 1780 764 764 4 + 276 12 JAN 11:00 104848 104848 909 0 0 0 1322 0 300 0 56.90 679 0 0 0 0 0 0 0 1780 758 758 4 + 277 12 JAN 12:00 103457 103457 897 0 0 0 1309 0 300 0 56.92 679 0 0 0 0 0 0 0 1780 771 771 4 + 278 12 JAN 13:00 107309 107309 930 0 0 0 1345 0 300 0 56.95 679 0 0 0 0 0 0 0 1780 735 735 4 + 279 12 JAN 14:00 109984 109984 954 0 0 0 1370 0 300 0 56.97 679 0 0 0 0 0 0 0 1780 710 710 4 + 280 12 JAN 15:00 113408 113408 984 0 0 0 1402 0 300 0 56.99 679 0 0 0 0 0 0 0 1780 678 678 4 + 281 12 JAN 16:00 123680 123680 1073 0 0 0 1498 0 300 0 57.01 679 0 0 0 0 0 0 0 1780 582 582 4 + 282 12 JAN 17:00 159718 159718 1174 0 0 0 1589 0 300 0 57.03 679 0 0 0 0 0 0 0 1780 491 491 24505 + 283 12 JAN 18:00 135860 135860 1179 0 0 0 1595 0 300 0 57.06 679 0 0 0 0 0 0 0 1780 485 485 5 + 284 12 JAN 19:00 133185 133185 1156 0 0 0 1570 0 300 0 57.08 679 0 0 0 0 0 0 0 1780 510 510 5 + 285 12 JAN 20:00 126765 126765 1100 0 0 0 1510 0 300 0 57.10 679 0 0 0 0 0 0 0 1780 570 570 5 + 286 12 JAN 21:00 116279 116279 1009 0 0 0 1412 0 300 0 57.12 679 0 0 0 0 0 0 0 1780 668 668 5 + 287 12 JAN 22:00 102582 102582 889 0 0 0 1284 0 300 0 57.14 679 0 0 0 0 0 0 0 1780 796 796 4 + 288 12 JAN 23:00 87495 87495 758 0 0 0 1143 0 300 0 57.17 679 0 0 0 0 0 0 0 1780 937 937 4 + 289 13 JAN 00:00 1255354 125354 662 0 0 0 1093 0 300 0 57.19 679 0 0 0 113 0 1.00 100.00 680 0 -113 49004 + 290 13 JAN 01:00 206354 76354 662 0 0 0 993 0 300 0 57.21 679 0 0 0 13 0 1.00 100.00 680 0 -13 4 + 291 13 JAN 02:00 71148 71148 616 0 0 0 942 0 300 0 57.23 679 0 0 0 0 0 0 0 680 38 38 4 + 292 13 JAN 03:00 66901 66901 579 0 0 0 911 0 300 0 57.26 679 0 0 0 0 0 0 0 680 69 69 4 + 293 13 JAN 04:00 67449 67449 584 0 0 0 915 0 300 0 57.28 679 0 0 0 0 0 0 0 680 65 65 4 + 294 13 JAN 05:00 76080 76080 659 0 0 0 978 0 300 0 57.30 679 0 0 0 0 0 0 0 680 2 2 4 + 295 13 JAN 06:00 1546354 76354 662 0 0 0 1127 0 300 0 57.32 679 0 0 0 147 0 1.00 100.00 680 0 -147 4 + 296 13 JAN 07:00 3366354 76354 662 0 0 0 1309 0 300 0 57.34 679 0 0 0 329 0 1.00 100.00 680 0 -329 4 + 297 13 JAN 08:00 4656354 76354 662 0 0 0 1438 0 300 0 57.37 679 0 0 0 458 0 1.00 100.00 680 0 -458 4 + 298 13 JAN 09:00 5086354 76354 662 0 0 0 1481 0 300 0 57.39 679 0 0 0 501 0 1.00 100.00 680 0 -501 4 + 299 13 JAN 10:00 5126354 76354 662 0 0 0 1485 0 300 0 57.41 679 0 0 0 505 0 1.00 100.00 680 0 -505 4 + 300 13 JAN 11:00 4916354 76354 662 0 0 0 1464 0 300 0 57.43 679 0 0 0 484 0 1.00 100.00 680 0 -484 4 + 301 13 JAN 12:00 4646354 76354 662 0 0 0 1437 0 300 0 57.45 679 0 0 0 457 0 1.00 100.00 680 0 -457 4 + 302 13 JAN 13:00 4866354 76354 662 0 0 0 1459 0 300 0 57.48 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 303 13 JAN 14:00 4896354 76354 662 0 0 0 1462 0 300 0 57.50 679 0 0 0 482 0 1.00 100.00 680 0 -482 4 + 304 13 JAN 15:00 4866354 76354 662 0 0 0 1459 0 300 0 57.52 679 0 0 0 479 0 1.00 100.00 680 0 -479 4 + 305 13 JAN 16:00 5526354 76354 662 0 0 0 1525 0 300 0 57.54 679 0 0 0 545 0 1.00 100.00 680 0 -545 4 + 306 13 JAN 17:00 6436354 76354 662 0 0 0 1616 0 300 0 57.57 679 0 0 0 636 0 1.00 100.00 680 0 -636 4 + 307 13 JAN 18:00 6366354 76354 662 0 0 0 1609 0 300 0 57.59 679 0 0 0 629 0 1.00 100.00 680 0 -629 4 + 308 13 JAN 19:00 6046354 76354 662 0 0 0 1577 0 300 0 57.61 679 0 0 0 597 0 1.00 100.00 680 0 -597 4 + 309 13 JAN 20:00 5596354 76354 662 0 0 0 1532 0 300 0 57.63 679 0 0 0 552 0 1.00 100.00 680 0 -552 4 + 310 13 JAN 21:00 4876354 76354 662 0 0 0 1460 0 300 0 57.65 679 0 0 0 480 0 1.00 100.00 680 0 -480 4 + 311 13 JAN 22:00 3746354 76354 662 0 0 0 1347 0 300 0 57.68 679 0 0 0 367 0 1.00 100.00 680 0 -367 4 + 312 13 JAN 23:00 2146354 76354 662 0 0 0 1187 0 300 0 57.70 679 0 0 0 207 0 1.00 100.00 680 0 -207 4 + 313 14 JAN 00:00 151519 151519 711 0 0 0 1075 0 300 0 57.72 679 0 0 0 0 0 0 0 1780 1005 1005 69504 + 314 14 JAN 01:00 71566 71566 620 0 0 0 977 0 300 0 57.74 679 0 0 0 0 0 0 0 1780 1103 1103 4 + 315 14 JAN 02:00 66478 66478 576 0 0 0 924 0 300 0 57.76 679 0 0 0 0 0 0 0 1780 1156 1156 4 + 316 14 JAN 03:00 63502 63502 550 0 0 0 893 0 300 0 57.79 679 0 0 0 0 0 0 0 1780 1187 1187 4 + 317 14 JAN 04:00 63694 63694 552 0 0 0 895 0 300 0 57.81 679 0 0 0 0 0 0 0 1780 1185 1185 4 + 318 14 JAN 05:00 68302 68302 591 0 0 0 943 0 300 0 57.83 679 0 0 0 0 0 0 0 1780 1137 1137 4 + 319 14 JAN 06:00 79665 79665 690 0 0 0 1053 0 300 0 57.85 679 0 0 0 0 0 0 0 1780 1027 1027 4 + 320 14 JAN 07:00 165751 165751 834 0 0 0 1208 0 300 0 57.87 679 0 0 0 0 0 0 0 1780 872 872 69505 + 321 14 JAN 08:00 110803 110803 961 0 0 0 1344 0 300 0 57.90 679 0 0 0 0 0 0 0 1780 736 736 5 + 322 14 JAN 09:00 186831 186831 1018 0 0 0 1405 0 300 0 57.92 679 0 0 0 0 0 0 0 1780 675 675 69506 + 323 14 JAN 10:00 117117 117117 1016 0 0 0 1403 0 300 0 57.94 679 0 0 0 0 0 0 0 1780 677 677 6 + 324 14 JAN 11:00 116047 116047 1007 0 0 0 1393 0 300 0 57.96 679 0 0 0 0 0 0 0 1780 687 687 6 + 325 14 JAN 12:00 114977 114977 998 0 0 0 1383 0 300 0 57.99 679 0 0 0 0 0 0 0 1780 697 697 6 + 326 14 JAN 13:00 118936 118936 1032 0 0 0 1420 0 300 0 58.01 679 0 0 0 0 0 0 0 1780 660 660 6 + 327 14 JAN 14:00 120969 120969 1050 0 0 0 1439 0 300 0 58.03 679 0 0 0 0 0 0 0 1780 641 641 6 + 328 14 JAN 15:00 123537 123537 1072 0 0 0 1463 0 300 0 58.05 679 0 0 0 0 0 0 0 1780 617 617 6 + 329 14 JAN 16:00 134023 134023 1163 0 0 0 1561 0 300 0 58.07 679 0 0 0 0 0 0 0 1780 519 519 6 + 330 14 JAN 17:00 147232 147232 1279 0 0 0 1678 0 300 0 58.10 679 0 0 0 0 0 0 0 1780 402 402 6 + 331 14 JAN 18:00 147917 147917 1285 0 0 0 1683 0 300 0 58.12 679 0 0 0 0 0 0 0 1780 397 397 6 + 332 14 JAN 19:00 142476 142476 1237 0 0 0 1640 0 300 0 58.14 679 0 0 0 0 0 0 0 1780 440 440 6 + 333 14 JAN 20:00 134683 134683 1169 0 0 0 1584 0 300 0 58.16 679 0 0 0 0 0 0 0 1780 496 496 5 + 334 14 JAN 21:00 126997 126997 1102 0 0 0 1529 0 300 0 58.18 679 0 0 0 0 0 0 0 1780 551 551 4 + 335 14 JAN 22:00 115655 115655 1003 0 0 0 1423 0 300 0 58.21 679 0 0 0 0 0 0 0 1780 657 657 4 + 336 14 JAN 23:00 100033 100033 867 0 0 0 1277 0 300 0 58.23 679 0 0 0 0 0 0 0 1780 803 803 4 diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 41955009..fe603a53 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -336,27 +336,32 @@ def test_milp_version() -> None: """ """ number_hours = 168 - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=False, - fast=False, - ) + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) - status = problem.solver.Solve(parameters) + status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL + assert status == problem.solver.OPTIMAL - check_output_values(problem, "milp") + check_output_values(problem, "milp", week) - assert problem.solver.Objective().Value() == pytest.approx(78933841) + if week == 0: + assert problem.solver.Objective().Value() == pytest.approx(78933841) + elif week == 1: + assert problem.solver.Objective().Value() == pytest.approx(102109698) -def check_output_values(problem: OptimizationProblem, mode: str) -> None: +def check_output_values(problem: OptimizationProblem, mode: str, week: int) -> None: output = OutputValues(problem) expected_output_clusters_file = open( @@ -372,56 +377,62 @@ def check_output_values(problem: OptimizationProblem, mode: str) -> None: assert output.component("G1").var("generation").value == [ [ pytest.approx(float(line.strip().split("\t")[4])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] ] ] if mode != "fast": assert output.component("G1").var("nb_on").value == [ [ pytest.approx(float(line.strip().split("\t")[12])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] ] ] assert output.component("G2").var("generation").value == [ [ pytest.approx(float(line.strip().split("\t")[5])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] ] ] if mode != "fast": assert output.component("G2").var("nb_on").value == [ [ pytest.approx(float(line.strip().split("\t")[13])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] ] ] assert output.component("G3").var("generation").value == [ [ pytest.approx(float(line.strip().split("\t")[6])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] ] ] if mode != "fast": assert output.component("G3").var("nb_on").value == [ [ pytest.approx(float(line.strip().split("\t")[14])) - for line in expected_output_clusters[7:] + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] ] ] assert output.component("S").var("spillage").value == [ [ pytest.approx(float(line.strip().split("\t")[20 if mode == "milp" else 21])) - for line in expected_output_general[7:] + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] ] ] assert output.component("U").var("unsupplied_energy").value == [ [ pytest.approx(float(line.strip().split("\t")[19 if mode == "milp" else 20])) - for line in expected_output_general[7:] + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] ] ] @@ -437,60 +448,67 @@ def test_accurate_heuristic() -> None: parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=False, - ) - status = problem_optimization_1.solver.Solve(parameters) - - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units and round it to integer - output_1 = OutputValues(problem_optimization_1) - nb_on_min: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round(np.array(output_1.component(g).var("nb_on").value), 12) - ) - ), - index=[i for i in range(number_hours)], - columns=[0], + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=False, + week=week, ) - n_guide = TimeScenarioSeriesData(nb_on_1) + status = problem_optimization_1.solver.Solve(parameters) + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units and round it to integer + output_1 = OutputValues(problem_optimization_1) + nb_on_min: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round(np.array(output_1.component(g).var("nb_on").value), 12) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) - # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - {g: n_guide}, number_hours, thermal_cluster=g - ) - status = problem_accurate_heuristic.solver.Solve(parameters) + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + {g: n_guide}, number_hours, thermal_cluster=g, week=week + ) + status = problem_accurate_heuristic.solver.Solve(parameters) - assert status == problem_accurate_heuristic.solver.OPTIMAL + assert status == problem_accurate_heuristic.solver.OPTIMAL - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil(np.array(output_heuristic.component(g).var("nb_on").value)) - ), - index=[i for i in range(number_hours)], - columns=[0], - ) - nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) - - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - nb_on_min, number_hours, lp_relaxation=True, fast=False - ) - status = problem_optimization_2.solver.Solve(parameters) + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil(np.array(output_heuristic.component(g).var("nb_on").value)) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) - assert status == problem_optimization_2.solver.OPTIMAL - assert problem_optimization_2.solver.Objective().Value() == 78996726 + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + nb_on_min, number_hours, lp_relaxation=True, fast=False, week=week + ) + status = problem_optimization_2.solver.Solve(parameters) + + assert status == problem_optimization_2.solver.OPTIMAL + if week == 0: + assert problem_optimization_2.solver.Objective().Value() == 78996726 + elif week == 1: + assert ( + problem_optimization_2.solver.Objective().Value() == 102215087 - 69500 + ) - check_output_values(problem_optimization_2, "accurate") + check_output_values(problem_optimization_2, "accurate", week) def test_fast_heuristic() -> None: @@ -504,44 +522,52 @@ def test_fast_heuristic() -> None: parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=True, - ) - status = problem_optimization_1.solver.Solve(parameters) + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=True, + week=week, + ) + status = problem_optimization_1.solver.Solve(parameters) - assert status == problem_optimization_1.solver.OPTIMAL + assert status == problem_optimization_1.solver.OPTIMAL - # Get number of on units - output_1 = OutputValues(problem_optimization_1) + # Get number of on units + output_1 = OutputValues(problem_optimization_1) - # Solve heuristic problem - mingen: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - mingen_heuristic = create_problem_fast_heuristic( - output_1.component(g).var("generation").value, # type:ignore - number_hours, - thermal_cluster=g, - ) + # Solve heuristic problem + mingen: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + mingen_heuristic = create_problem_fast_heuristic( + output_1.component(g).var("generation").value, # type:ignore + number_hours, + thermal_cluster=g, + week=week, + ) - mingen[g] = TimeScenarioSeriesData(mingen_heuristic) + mingen[g] = TimeScenarioSeriesData(mingen_heuristic) - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - mingen, number_hours, lp_relaxation=True, fast=True - ) - status = problem_optimization_2.solver.Solve(parameters) + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + mingen, number_hours, lp_relaxation=True, fast=True, week=week + ) + status = problem_optimization_2.solver.Solve(parameters) - assert status == problem_optimization_2.solver.OPTIMAL + assert status == problem_optimization_2.solver.OPTIMAL - check_output_values(problem_optimization_2, "fast") + check_output_values(problem_optimization_2, "fast", week) - assert problem_optimization_2.solver.Objective().Value() == pytest.approx( - 79277215 - 630089 - ) + if week == 0: + assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + 79277215 - 630089 + ) + elif week == 1: + assert ( + problem_optimization_2.solver.Objective().Value() == 102461792 - 699765 + ) def create_complex_problem( @@ -549,8 +575,66 @@ def create_complex_problem( number_hours: int, lp_relaxation: bool, fast: bool, + week: int, ) -> OptimizationProblem: + database = generate_database(lower_bound, number_hours, week=week) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + if fast: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") + elif lp_relaxation: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") + else: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen1) + network.add_component(gen2) + network.add_component(gen3) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + return problem + + +def generate_database( + lower_bound: Dict[str, AbstractDataStructure], number_hours: int, week: int +) -> DataBase: database = DataBase() database.add_data("G1", "p_max", ConstantData(410)) @@ -578,7 +662,7 @@ def create_complex_problem( database.add_data("G2", "mingen", lower_bound["G2"]) failures_3 = pd.DataFrame( - np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), + np.repeat(get_failures_for_cluster3(week), 24), index=[i for i in range(number_hours)], columns=[0], ) @@ -598,176 +682,13 @@ def create_complex_problem( database.add_data("U", "cost", ConstantData(10000)) database.add_data("S", "cost", ConstantData(1)) + output_file = open("tests/functional/data_complex_case/milp/values-hourly.txt", "r") + output = output_file.readlines() + demand_data = pd.DataFrame( - [ - 672, - 599, - 568, - 548, - 553, - 592, - 672, - 798, - 912, - 985, - 1039, - 1049, - 1030, - 1018, - 1000, - 1001, - 1054, - 1111, - 1071, - 1019, - 987, - 966, - 922, - 831, - 802, - 790, - 810, - 804, - 800, - 826, - 895, - 998, - 1072, - 1103, - 1096, - 1083, - 1057, - 1050, - 1047, - 1036, - 1069, - 1115, - 1092, - 1070, - 1063, - 1051, - 983, - 892, - 749, - 703, - 700, - 700, - 745, - 860, - 1052, - 1229, - 1337, - 1353, - 1323, - 1312, - 1308, - 1361, - 1375, - 1403, - 1452, - 1541, - 1559, - 1528, - 1446, - 1335, - 1205, - 1050, - 920, - 824, - 767, - 744, - 759, - 857, - 1033, - 1169, - 1243, - 1244, - 1232, - 1215, - 1199, - 1253, - 1271, - 1301, - 1361, - 1469, - 1505, - 1471, - 1383, - 1271, - 1172, - 1028, - 922, - 843, - 813, - 809, - 837, - 936, - 1118, - 1278, - 1382, - 1410, - 1400, - 1385, - 1372, - 1425, - 1444, - 1454, - 1503, - 1593, - 1615, - 1584, - 1501, - 1378, - 1250, - 1061, - 852, - 745, - 682, - 631, - 617, - 676, - 830, - 1004, - 1128, - 1163, - 1145, - 1109, - 1083, - 1127, - 1136, - 1157, - 1215, - 1302, - 1285, - 1232, - 1169, - 1112, - 1030, - 950, - 1038, - 893, - 761, - 718, - 718, - 761, - 850, - 1035, - 1204, - 1275, - 1228, - 1186, - 1156, - 1206, - 1234, - 1259, - 1354, - 1469, - 1484, - 1460, - 1404, - 1339, - 1248, - 1085, + data=[ + float(line.strip().split("\t")[10]) + for line in output[168 * week + 7 : 168 * week + 7 + 168] ], index=[i for i in range(number_hours)], columns=[0], @@ -776,63 +697,23 @@ def create_complex_problem( demand_time_scenario_series = TimeScenarioSeriesData(demand_data) database.add_data("D", "demand", demand_time_scenario_series) + return database - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - if fast: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") - elif lp_relaxation: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") - else: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") +def get_failures_for_cluster3(week: int) -> List: + if week == 0: + failures_3 = [1100, 1100, 0, 1100, 1100, 1100, 1100] + elif week == 1: + failures_3 = [1100, 1100, 1100, 1100, 1100, 0, 1100] - network = Network("test") - network.add_node(node) - network.add_component(demand) - network.add_component(gen1) - network.add_component(gen2) - network.add_component(gen3) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - return problem + return failures_3 def create_problem_accurate_heuristic( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, thermal_cluster: str, + week: int, ) -> OptimizationProblem: database = DataBase() @@ -863,7 +744,7 @@ def create_problem_accurate_heuristic( database.add_data("G2", "mingen", lower_bound["G2"]) elif thermal_cluster == "G3": failures_3 = pd.DataFrame( - np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), + np.repeat(get_failures_for_cluster3(week), 24), index=[i for i in range(number_hours)], columns=[0], ) @@ -903,7 +784,7 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], number_hours: int, thermal_cluster: str + lower_bound: List[List[float]], number_hours: int, thermal_cluster: str, week: int ) -> pd.DataFrame: delta = {"G1": 8, "G2": 11, "G3": 9}[thermal_cluster] @@ -913,7 +794,7 @@ def create_problem_fast_heuristic( "G1": np.array(410), "G2": np.array(270), "G3": np.reshape( - np.repeat([1100, 1100, 0, 1100, 1100, 1100, 1100], 24), (168, 1) + np.repeat(get_failures_for_cluster3(week), 24), (number_hours, 1) ), } From dd61b8d794d5874d27d440219cdbbbe661d1f4df Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 6 Jun 2024 12:35:06 +0200 Subject: [PATCH 12/93] Test for 2 scenarios --- .../accurate/{ => 0}/details-hourly.txt | 0 .../accurate/{ => 0}/values-hourly.txt | 0 .../accurate/1/details-hourly.txt | 343 ++++++++++++++++++ .../accurate/1/values-hourly.txt | 343 ++++++++++++++++++ .../fast/{ => 0}/details-hourly.txt | 0 .../fast/{ => 0}/values-hourly.txt | 0 .../fast/1/details-hourly.txt | 343 ++++++++++++++++++ .../fast/1/values-hourly.txt | 343 ++++++++++++++++++ .../milp/{ => 0}/details-hourly.txt | 0 .../milp/{ => 0}/values-hourly.txt | 0 .../milp/1/details-hourly.txt | 343 ++++++++++++++++++ .../milp/1/values-hourly.txt | 343 ++++++++++++++++++ .../functional/test_heuristic_complex_case.py | 331 ++++++++++------- 13 files changed, 2264 insertions(+), 125 deletions(-) rename tests/functional/data_complex_case/accurate/{ => 0}/details-hourly.txt (100%) rename tests/functional/data_complex_case/accurate/{ => 0}/values-hourly.txt (100%) create mode 100644 tests/functional/data_complex_case/accurate/1/details-hourly.txt create mode 100644 tests/functional/data_complex_case/accurate/1/values-hourly.txt rename tests/functional/data_complex_case/fast/{ => 0}/details-hourly.txt (100%) rename tests/functional/data_complex_case/fast/{ => 0}/values-hourly.txt (100%) create mode 100644 tests/functional/data_complex_case/fast/1/details-hourly.txt create mode 100644 tests/functional/data_complex_case/fast/1/values-hourly.txt rename tests/functional/data_complex_case/milp/{ => 0}/details-hourly.txt (100%) rename tests/functional/data_complex_case/milp/{ => 0}/values-hourly.txt (100%) create mode 100644 tests/functional/data_complex_case/milp/1/details-hourly.txt create mode 100644 tests/functional/data_complex_case/milp/1/values-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/details-hourly.txt b/tests/functional/data_complex_case/accurate/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/details-hourly.txt rename to tests/functional/data_complex_case/accurate/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/values-hourly.txt b/tests/functional/data_complex_case/accurate/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/values-hourly.txt rename to tests/functional/data_complex_case/accurate/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/1/details-hourly.txt b/tests/functional/data_complex_case/accurate/1/details-hourly.txt new file mode 100644 index 00000000..d2952f5a --- /dev/null +++ b/tests/functional/data_complex_case/accurate/1/details-hourly.txt @@ -0,0 +1,343 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 336 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 355 0 450 0 1 0 3 0 1 0 3 0 + 2 01 JAN 01:00 285 0 450 0 1 0 3 0 1 0 3 0 + 3 01 JAN 02:00 245 0 450 0 1 0 3 0 1 0 3 0 + 4 01 JAN 03:00 221 0 450 0 1 0 3 0 1 0 3 0 + 5 01 JAN 04:00 225 0 450 0 1 0 3 0 1 0 3 0 + 6 01 JAN 05:00 263 0 450 0 1 0 3 0 1 0 3 0 + 7 01 JAN 06:00 352 0 450 0 1 0 3 0 1 0 3 0 + 8 01 JAN 07:00 410 0 511 0 1 0 3 0 1 0 3 0 + 9 01 JAN 08:00 410 0 604 0 1 0 3 0 1 0 3 0 + 10 01 JAN 09:00 410 0 640 0 1 0 3 0 1 0 3 0 + 11 01 JAN 10:00 410 0 634 0 1 0 3 0 1 0 3 0 + 12 01 JAN 11:00 410 0 623 0 1 0 3 0 1 0 3 0 + 13 01 JAN 12:00 410 0 615 0 1 0 3 0 1 0 3 0 + 14 01 JAN 13:00 410 0 642 0 1 0 3 0 1 0 3 0 + 15 01 JAN 14:00 410 0 662 0 1 0 3 0 1 0 3 0 + 16 01 JAN 15:00 410 0 689 0 1 0 3 0 1 0 3 0 + 17 01 JAN 16:00 410 0 744 0 1 0 3 0 1 0 3 0 + 18 01 JAN 17:00 410 0 830 0 1 0 69504 0 1 0 4 0 + 19 01 JAN 18:00 410 0 862 0 1 0 4 0 1 0 4 0 + 20 01 JAN 19:00 410 0 853 0 1 0 4 0 1 0 4 0 + 21 01 JAN 20:00 410 0 810 0 1 0 4 0 1 0 4 0 + 22 01 JAN 21:00 410 0 754 0 1 0 4 0 1 0 4 0 + 23 01 JAN 22:00 410 0 665 0 1 0 4 0 1 0 4 0 + 24 01 JAN 23:00 357 0 600 0 1 0 4 0 1 0 4 0 + 25 02 JAN 00:00 236 0 600 0 1 0 4 0 1 0 4 0 + 26 02 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 27 02 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 28 02 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 29 02 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 30 02 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 31 02 JAN 06:00 241 0 600 0 1 0 4 0 1 0 4 0 + 32 02 JAN 07:00 352 0 600 0 1 0 4 0 1 0 4 0 + 33 02 JAN 08:00 410 0 624 0 1 0 4 0 1 0 4 0 + 34 02 JAN 09:00 410 0 648 0 1 0 4 0 1 0 4 0 + 35 02 JAN 10:00 410 0 632 0 1 0 4 0 1 0 4 0 + 36 02 JAN 11:00 410 0 621 0 1 0 4 0 1 0 4 0 + 37 02 JAN 12:00 410 0 615 0 1 0 4 0 1 0 4 0 + 38 02 JAN 13:00 410 0 644 0 1 0 4 0 1 0 4 0 + 39 02 JAN 14:00 410 0 662 0 1 0 4 0 1 0 4 0 + 40 02 JAN 15:00 410 0 681 0 1 0 4 0 1 0 4 0 + 41 02 JAN 16:00 410 0 739 0 1 0 4 0 1 0 4 0 + 42 02 JAN 17:00 410 0 819 0 1 0 4 0 1 0 4 0 + 43 02 JAN 18:00 410 0 835 0 1 0 4 0 1 0 4 0 + 44 02 JAN 19:00 410 0 819 0 1 0 4 0 1 0 4 0 + 45 02 JAN 20:00 410 0 777 0 1 0 4 0 1 0 4 0 + 46 02 JAN 21:00 410 0 718 0 1 0 4 0 1 0 4 0 + 47 02 JAN 22:00 410 0 620 0 1 0 4 0 1 0 4 0 + 48 02 JAN 23:00 314 0 600 0 1 0 4 0 1 0 4 0 + 49 03 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 50 03 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 51 03 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 52 03 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 53 03 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 54 03 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 55 03 JAN 06:00 291 0 600 0 1 0 4 0 1 0 4 0 + 56 03 JAN 07:00 410 0 655 0 1 0 4 0 1 0 4 0 + 57 03 JAN 08:00 410 0 756 0 1 0 4 0 1 0 4 0 + 58 03 JAN 09:00 410 0 772 0 1 0 4 0 1 0 4 0 + 59 03 JAN 10:00 410 0 749 0 1 0 4 0 1 0 4 0 + 60 03 JAN 11:00 410 0 724 0 1 0 4 0 1 0 4 0 + 61 03 JAN 12:00 410 0 709 0 1 0 4 0 1 0 4 0 + 62 03 JAN 13:00 410 0 765 0 1 0 4 0 1 0 4 0 + 63 03 JAN 14:00 410 0 796 0 1 0 4 0 1 0 4 0 + 64 03 JAN 15:00 410 0 816 0 1 0 4 0 1 0 4 0 + 65 03 JAN 16:00 410 0 862 0 1 0 4 0 1 0 4 0 + 66 03 JAN 17:00 410 0 960 0 1 0 4 0 1 0 4 0 + 67 03 JAN 18:00 410 0 981 0 1 0 4 0 1 0 4 0 + 68 03 JAN 19:00 410 0 946 0 1 0 4 0 1 0 4 0 + 69 03 JAN 20:00 410 0 857 0 1 0 4 0 1 0 4 0 + 70 03 JAN 21:00 410 0 743 0 1 0 3 0 1 0 3 0 + 71 03 JAN 22:00 410 0 633 0 1 0 3 0 1 0 3 0 + 72 03 JAN 23:00 410 0 479 0 1 0 3 0 1 0 3 0 + 73 04 JAN 00:00 268 0 450 0 1 0 3 0 1 0 3 0 + 74 04 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 75 04 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 76 04 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 77 04 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 78 04 JAN 05:00 217 0 450 0 1 0 3 0 1 0 3 0 + 79 04 JAN 06:00 400 0 450 0 1 0 3 0 1 0 3 0 + 80 04 JAN 07:00 410 0 619 0 1 0 3 0 1 0 3 0 + 81 04 JAN 08:00 410 0 730 0 1 0 3 0 1 0 3 0 + 82 04 JAN 09:00 410 0 755 0 1 0 3 0 1 0 3 0 + 83 04 JAN 10:00 410 0 734 0 1 0 3 0 1 0 3 0 + 84 04 JAN 11:00 410 0 708 0 1 0 3 0 1 0 3 0 + 85 04 JAN 12:00 410 0 678 0 1 0 3 0 1 0 3 0 + 86 04 JAN 13:00 410 0 709 0 1 0 3 0 1 0 3 0 + 87 04 JAN 14:00 410 0 710 0 1 0 3 0 1 0 3 0 + 88 04 JAN 15:00 410 0 719 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 756 0 1 0 3 0 1 0 3 0 + 90 04 JAN 17:00 410 0 837 0 1 0 69504 0 1 0 4 0 + 91 04 JAN 18:00 410 0 829 0 1 0 4 0 1 0 4 0 + 92 04 JAN 19:00 410 0 775 0 1 0 4 0 1 0 4 0 + 93 04 JAN 20:00 410 0 693 0 1 0 4 0 1 0 4 0 + 94 04 JAN 21:00 404 0 600 0 1 0 4 0 1 0 4 0 + 95 04 JAN 22:00 286 0 600 0 1 0 4 0 1 0 4 0 + 96 04 JAN 23:00 180 0 600 0 1 0 4 0 1 0 4 0 + 97 05 JAN 00:00 0 0 600 0 0 0 4 0 0 0 4 0 + 98 05 JAN 01:00 0 0 600 0 0 0 4 0 0 0 4 0 + 99 05 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 100 05 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 + 101 05 JAN 04:00 0 0 600 0 0 0 4 0 0 0 4 0 + 102 05 JAN 05:00 0 0 664 0 0 0 4 0 0 0 4 0 + 103 05 JAN 06:00 0 0 836 0 0 0 4 0 0 0 4 0 + 104 05 JAN 07:00 0 0 1015 0 0 0 4 0 0 0 4 0 + 105 05 JAN 08:00 0 60 1078 0 0 24501 4 0 0 1 4 0 + 106 05 JAN 09:00 0 120 1064 0 0 24502 4 0 0 2 4 0 + 107 05 JAN 10:00 0 120 1067 0 0 2 4 0 0 2 4 0 + 108 05 JAN 11:00 0 120 1059 0 0 2 4 0 0 2 4 0 + 109 05 JAN 12:00 0 180 989 0 0 24503 4 0 0 3 4 0 + 110 05 JAN 13:00 0 180 1033 0 0 3 4 0 0 3 4 0 + 111 05 JAN 14:00 0 180 1038 0 0 3 4 0 0 3 4 0 + 112 05 JAN 15:00 0 180 1038 0 0 3 4 0 0 3 4 0 + 113 05 JAN 16:00 0 180 1087 0 0 3 4 0 0 3 4 0 + 114 05 JAN 17:00 0 241 1100 0 0 3 4 0 0 3 4 0 + 115 05 JAN 18:00 0 231 1100 0 0 3 4 0 0 3 4 0 + 116 05 JAN 19:00 0 195 1100 0 0 3 4 0 0 3 4 0 + 117 05 JAN 20:00 0 135 1100 0 0 2 4 0 0 2 4 0 + 118 05 JAN 21:00 0 120 1023 0 0 2 4 0 0 2 4 0 + 119 05 JAN 22:00 0 120 910 0 0 2 4 0 0 2 4 0 + 120 05 JAN 23:00 0 0 868 0 0 0 4 0 0 0 4 0 + 121 06 JAN 00:00 0 0 665 0 0 0 4 0 0 0 4 0 + 122 06 JAN 01:00 0 0 600 0 0 0 4 0 0 0 4 0 + 123 06 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 124 06 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 + 125 06 JAN 04:00 180 0 600 0 100501 0 4 0 1 0 4 0 + 126 06 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 127 06 JAN 06:00 180 0 600 0 1 0 4 0 1 0 4 0 + 128 06 JAN 07:00 294 0 600 0 1 0 4 0 1 0 4 0 + 129 06 JAN 08:00 410 0 623 0 1 0 4 0 1 0 4 0 + 130 06 JAN 09:00 410 0 682 0 1 0 4 0 1 0 4 0 + 131 06 JAN 10:00 410 0 687 0 1 0 4 0 1 0 4 0 + 132 06 JAN 11:00 410 0 686 0 1 0 4 0 1 0 4 0 + 133 06 JAN 12:00 410 0 679 0 1 0 4 0 1 0 4 0 + 134 06 JAN 13:00 410 0 724 0 1 0 4 0 1 0 4 0 + 135 06 JAN 14:00 410 0 731 0 1 0 4 0 1 0 4 0 + 136 06 JAN 15:00 410 0 738 0 1 0 4 0 1 0 4 0 + 137 06 JAN 16:00 410 0 805 0 1 0 4 0 1 0 4 0 + 138 06 JAN 17:00 410 0 884 0 1 0 4 0 1 0 4 0 + 139 06 JAN 18:00 410 0 843 0 1 0 4 0 1 0 4 0 + 140 06 JAN 19:00 410 0 776 0 1 0 3 0 1 0 3 0 + 141 06 JAN 20:00 410 0 710 0 1 0 3 0 1 0 3 0 + 142 06 JAN 21:00 410 0 639 0 1 0 3 0 1 0 3 0 + 143 06 JAN 22:00 410 0 533 0 1 0 3 0 1 0 3 0 + 144 06 JAN 23:00 336 0 450 0 1 0 3 0 1 0 3 0 + 145 07 JAN 00:00 182 0 450 0 1 0 3 0 1 0 3 0 + 146 07 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 147 07 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 148 07 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 149 07 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 150 07 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 151 07 JAN 06:00 180 0 450 0 1 0 3 0 1 0 3 0 + 152 07 JAN 07:00 314 0 450 0 1 0 3 0 1 0 3 0 + 153 07 JAN 08:00 410 0 478 0 1 0 3 0 1 0 3 0 + 154 07 JAN 09:00 410 0 522 0 1 0 3 0 1 0 3 0 + 155 07 JAN 10:00 410 0 505 0 1 0 3 0 1 0 3 0 + 156 07 JAN 11:00 410 0 485 0 1 0 3 0 1 0 3 0 + 157 07 JAN 12:00 410 0 478 0 1 0 3 0 1 0 3 0 + 158 07 JAN 13:00 410 0 511 0 1 0 3 0 1 0 3 0 + 159 07 JAN 14:00 410 0 534 0 1 0 3 0 1 0 3 0 + 160 07 JAN 15:00 410 0 579 0 1 0 3 0 1 0 3 0 + 161 07 JAN 16:00 410 0 676 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 794 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 802 0 1 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 751 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 670 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 586 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 477 0 1 0 3 0 1 0 3 0 + 168 07 JAN 23:00 291 0 450 0 1 0 3 0 1 0 3 0 + 169 08 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 170 08 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 171 08 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 172 08 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 173 08 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 174 08 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 175 08 JAN 06:00 277 0 450 0 1 0 3 0 1 0 3 0 + 176 08 JAN 07:00 410 0 519 0 1 0 3 0 1 0 3 0 + 177 08 JAN 08:00 410 0 656 0 1 0 3 0 1 0 3 0 + 178 08 JAN 09:00 410 0 709 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 716 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 0 722 0 1 0 3 0 1 0 3 0 + 181 08 JAN 12:00 410 0 711 0 1 0 3 0 1 0 3 0 + 182 08 JAN 13:00 410 0 751 0 1 0 3 0 1 0 3 0 + 183 08 JAN 14:00 410 0 750 0 1 0 3 0 1 0 3 0 + 184 08 JAN 15:00 410 0 739 0 1 0 3 0 1 0 3 0 + 185 08 JAN 16:00 410 0 784 0 1 0 3 0 1 0 3 0 + 186 08 JAN 17:00 410 0 859 0 1 0 69504 0 1 0 4 0 + 187 08 JAN 18:00 410 0 838 0 1 0 4 0 1 0 4 0 + 188 08 JAN 19:00 410 0 784 0 1 0 3 0 1 0 3 0 + 189 08 JAN 20:00 410 0 707 0 1 0 3 0 1 0 3 0 + 190 08 JAN 21:00 410 0 610 0 1 0 3 0 1 0 3 0 + 191 08 JAN 22:00 410 0 505 0 1 0 3 0 1 0 3 0 + 192 08 JAN 23:00 314 0 450 0 1 0 3 0 1 0 3 0 + 193 09 JAN 00:00 198 0 450 0 1 0 3 0 1 0 3 0 + 194 09 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 195 09 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 196 09 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 197 09 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 198 09 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 199 09 JAN 06:00 276 0 450 0 1 0 3 0 1 0 3 0 + 200 09 JAN 07:00 410 0 495 0 1 0 3 0 1 0 3 0 + 201 09 JAN 08:00 410 0 615 0 1 0 3 0 1 0 3 0 + 202 09 JAN 09:00 410 0 652 0 1 0 3 0 1 0 3 0 + 203 09 JAN 10:00 410 0 646 0 1 0 3 0 1 0 3 0 + 204 09 JAN 11:00 410 0 647 0 1 0 3 0 1 0 3 0 + 205 09 JAN 12:00 410 0 641 0 1 0 3 0 1 0 3 0 + 206 09 JAN 13:00 410 0 690 0 1 0 3 0 1 0 3 0 + 207 09 JAN 14:00 410 0 711 0 1 0 3 0 1 0 3 0 + 208 09 JAN 15:00 410 0 725 0 1 0 3 0 1 0 3 0 + 209 09 JAN 16:00 410 0 781 0 1 0 3 0 1 0 3 0 + 210 09 JAN 17:00 410 0 864 0 1 0 69504 0 1 0 4 0 + 211 09 JAN 18:00 410 0 875 0 1 0 4 0 1 0 4 0 + 212 09 JAN 19:00 410 0 855 0 1 0 4 0 1 0 4 0 + 213 09 JAN 20:00 410 0 801 0 1 0 4 0 1 0 4 0 + 214 09 JAN 21:00 410 0 711 0 1 0 4 0 1 0 4 0 + 215 09 JAN 22:00 393 0 600 0 1 0 4 0 1 0 4 0 + 216 09 JAN 23:00 237 0 600 0 1 0 4 0 1 0 4 0 + 217 10 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 218 10 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 219 10 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 220 10 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 221 10 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 222 10 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 223 10 JAN 06:00 267 0 600 0 1 0 4 0 1 0 4 0 + 224 10 JAN 07:00 410 0 616 0 1 0 4 0 1 0 4 0 + 225 10 JAN 08:00 410 0 713 0 1 0 4 0 1 0 4 0 + 226 10 JAN 09:00 410 0 737 0 1 0 4 0 1 0 4 0 + 227 10 JAN 10:00 410 0 713 0 1 0 4 0 1 0 4 0 + 228 10 JAN 11:00 410 0 695 0 1 0 4 0 1 0 4 0 + 229 10 JAN 12:00 410 0 674 0 1 0 4 0 1 0 4 0 + 230 10 JAN 13:00 410 0 709 0 1 0 4 0 1 0 4 0 + 231 10 JAN 14:00 410 0 720 0 1 0 4 0 1 0 4 0 + 232 10 JAN 15:00 410 0 737 0 1 0 4 0 1 0 4 0 + 233 10 JAN 16:00 410 0 796 0 1 0 4 0 1 0 4 0 + 234 10 JAN 17:00 410 0 881 0 1 0 4 0 1 0 4 0 + 235 10 JAN 18:00 410 0 912 0 1 0 4 0 1 0 4 0 + 236 10 JAN 19:00 410 0 908 0 1 0 4 0 1 0 4 0 + 237 10 JAN 20:00 410 0 844 0 1 0 4 0 1 0 4 0 + 238 10 JAN 21:00 410 0 738 0 1 0 4 0 1 0 4 0 + 239 10 JAN 22:00 410 0 613 0 1 0 4 0 1 0 4 0 + 240 10 JAN 23:00 266 0 600 0 1 0 4 0 1 0 4 0 + 241 11 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 242 11 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 243 11 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 244 11 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 245 11 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 246 11 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 247 11 JAN 06:00 320 0 600 0 1 0 4 0 1 0 4 0 + 248 11 JAN 07:00 410 0 674 0 1 0 4 0 1 0 4 0 + 249 11 JAN 08:00 410 0 763 0 1 0 4 0 1 0 4 0 + 250 11 JAN 09:00 410 0 777 0 1 0 4 0 1 0 4 0 + 251 11 JAN 10:00 410 0 752 0 1 0 4 0 1 0 4 0 + 252 11 JAN 11:00 410 0 725 0 1 0 4 0 1 0 4 0 + 253 11 JAN 12:00 410 0 699 0 1 0 4 0 1 0 4 0 + 254 11 JAN 13:00 410 0 738 0 1 0 4 0 1 0 4 0 + 255 11 JAN 14:00 410 0 744 0 1 0 4 0 1 0 4 0 + 256 11 JAN 15:00 410 0 750 0 1 0 4 0 1 0 4 0 + 257 11 JAN 16:00 410 0 811 0 1 0 4 0 1 0 4 0 + 258 11 JAN 17:00 410 0 908 0 1 0 4 0 1 0 4 0 + 259 11 JAN 18:00 410 0 944 0 1 0 4 0 1 0 4 0 + 260 11 JAN 19:00 410 0 928 0 1 0 4 0 1 0 4 0 + 261 11 JAN 20:00 410 0 853 0 1 0 4 0 1 0 4 0 + 262 11 JAN 21:00 410 0 743 0 1 0 4 0 1 0 4 0 + 263 11 JAN 22:00 410 0 623 0 1 0 4 0 1 0 4 0 + 264 11 JAN 23:00 283 0 600 0 1 0 4 0 1 0 4 0 + 265 12 JAN 00:00 0 0 711 0 0 0 4 0 0 0 4 0 + 266 12 JAN 01:00 0 0 627 0 0 0 4 0 0 0 4 0 + 267 12 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 268 12 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 + 269 12 JAN 04:00 0 0 600 0 0 0 4 0 0 0 4 0 + 270 12 JAN 05:00 0 0 685 0 0 0 4 0 0 0 4 0 + 271 12 JAN 06:00 0 0 864 0 0 0 4 0 0 0 4 0 + 272 12 JAN 07:00 0 0 1031 0 0 0 4 0 0 0 4 0 + 273 12 JAN 08:00 0 60 1066 0 0 24501 4 0 0 1 4 0 + 274 12 JAN 09:00 0 60 1076 0 0 1 4 0 0 1 4 0 + 275 12 JAN 10:00 0 60 1048 0 0 1 4 0 0 1 4 0 + 276 12 JAN 11:00 0 60 1024 0 0 1 4 0 0 1 4 0 + 277 12 JAN 12:00 0 180 888 0 0 1 4 0 0 3 4 0 + 278 12 JAN 13:00 0 180 938 0 0 49003 4 0 0 3 4 0 + 279 12 JAN 14:00 0 180 956 0 0 3 4 0 0 3 4 0 + 280 12 JAN 15:00 0 180 974 0 0 3 4 0 0 3 4 0 + 281 12 JAN 16:00 0 180 1032 0 0 3 4 0 0 3 4 0 + 282 12 JAN 17:00 0 204 1100 0 0 3 4 0 0 3 4 0 + 283 12 JAN 18:00 0 235 1100 0 0 3 4 0 0 3 4 0 + 284 12 JAN 19:00 0 219 1100 0 0 3 4 0 0 3 4 0 + 285 12 JAN 20:00 0 180 1064 0 0 3 4 0 0 3 4 0 + 286 12 JAN 21:00 0 180 952 0 0 3 4 0 0 3 4 0 + 287 12 JAN 22:00 0 180 828 0 0 3 4 0 0 3 4 0 + 288 12 JAN 23:00 0 0 851 0 0 3 4 0 0 0 4 0 + 289 13 JAN 00:00 180 0 600 0 100501 1 4 0 1 0 4 0 + 290 13 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 291 13 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 292 13 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 293 13 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 294 13 JAN 05:00 180 0 600 0 1 0 4 0 1 0 4 0 + 295 13 JAN 06:00 194 0 600 0 1 0 4 0 1 0 4 0 + 296 13 JAN 07:00 339 0 600 0 1 0 4 0 1 0 4 0 + 297 13 JAN 08:00 410 0 627 0 1 0 4 0 1 0 4 0 + 298 13 JAN 09:00 410 0 655 0 1 0 4 0 1 0 4 0 + 299 13 JAN 10:00 410 0 634 0 1 0 4 0 1 0 4 0 + 300 13 JAN 11:00 410 0 613 0 1 0 4 0 1 0 4 0 + 301 13 JAN 12:00 406 0 600 0 1 0 4 0 1 0 4 0 + 302 13 JAN 13:00 410 0 634 0 1 0 4 0 1 0 4 0 + 303 13 JAN 14:00 410 0 649 0 1 0 4 0 1 0 4 0 + 304 13 JAN 15:00 410 0 675 0 1 0 4 0 1 0 4 0 + 305 13 JAN 16:00 410 0 755 0 1 0 4 0 1 0 4 0 + 306 13 JAN 17:00 410 0 851 0 1 0 4 0 1 0 4 0 + 307 13 JAN 18:00 410 0 857 0 1 0 4 0 1 0 4 0 + 308 13 JAN 19:00 410 0 810 0 1 0 3 0 1 0 3 0 + 309 13 JAN 20:00 410 0 724 0 1 0 3 0 1 0 3 0 + 310 13 JAN 21:00 410 0 625 0 1 0 3 0 1 0 3 0 + 311 13 JAN 22:00 410 0 504 0 1 0 3 0 1 0 3 0 + 312 13 JAN 23:00 303 0 450 0 1 0 3 0 1 0 3 0 + 313 14 JAN 00:00 180 0 450 0 1 0 3 0 1 0 3 0 + 314 14 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 315 14 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 316 14 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 317 14 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 318 14 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 319 14 JAN 06:00 180 0 450 0 1 0 3 0 1 0 3 0 + 320 14 JAN 07:00 325 0 450 0 1 0 3 0 1 0 3 0 + 321 14 JAN 08:00 410 0 514 0 1 0 3 0 1 0 3 0 + 322 14 JAN 09:00 410 0 589 0 1 0 3 0 1 0 3 0 + 323 14 JAN 10:00 410 0 590 0 1 0 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 596 0 1 0 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 597 0 1 0 3 0 1 0 3 0 + 326 14 JAN 13:00 410 0 644 0 1 0 3 0 1 0 3 0 + 327 14 JAN 14:00 410 0 655 0 1 0 3 0 1 0 3 0 + 328 14 JAN 15:00 410 0 638 0 1 0 3 0 1 0 3 0 + 329 14 JAN 16:00 410 0 716 0 1 0 3 0 1 0 3 0 + 330 14 JAN 17:00 410 0 821 0 1 0 3 0 1 0 3 0 + 331 14 JAN 18:00 410 0 814 0 1 0 3 0 1 0 3 0 + 332 14 JAN 19:00 410 0 764 0 1 0 3 0 1 0 3 0 + 333 14 JAN 20:00 410 0 680 0 1 0 3 0 1 0 3 0 + 334 14 JAN 21:00 410 0 590 0 1 0 3 0 1 0 3 0 + 335 14 JAN 22:00 410 0 509 0 1 0 3 0 1 0 3 0 + 336 14 JAN 23:00 316 0 450 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/data_complex_case/accurate/1/values-hourly.txt b/tests/functional/data_complex_case/accurate/1/values-hourly.txt new file mode 100644 index 00000000..367e3624 --- /dev/null +++ b/tests/functional/data_complex_case/accurate/1/values-hourly.txt @@ -0,0 +1,343 @@ +BA00 area va hourly + VARIABLES BEGIN END + 24 1 336 + +BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 82234 82234 96.00 713 0 0 0 1105 0 300 0 50.01 503 0 0 0 0 0 0 0 1780 975 975 4 + 2 01 JAN 01:00 75514 75514 96.00 655 0 0 0 1035 0 300 0 50.02 503 0 0 0 0 0 0 0 1780 1045 1045 4 + 3 01 JAN 02:00 71674 71674 96.00 622 0 0 0 995 0 300 0 50.04 503 0 0 0 0 0 0 0 1780 1085 1085 4 + 4 01 JAN 03:00 69370 69370 96.00 602 0 0 0 971 0 300 0 50.05 503 0 0 0 0 0 0 0 1780 1109 1109 4 + 5 01 JAN 04:00 69754 69754 96.00 605 0 0 0 975 0 300 0 50.06 503 0 0 0 0 0 0 0 1780 1105 1105 4 + 6 01 JAN 05:00 73402 73402 96.00 637 0 0 0 1013 0 300 0 50.07 503 0 0 0 0 0 0 0 1780 1067 1067 4 + 7 01 JAN 06:00 81946 81946 96.00 710 0 0 0 1102 0 300 0 50.08 503 0 0 0 0 0 0 0 1780 978 978 4 + 8 01 JAN 07:00 94041 94041 107.00 815 0 0 0 1221 0 300 0 50.09 503 0 0 0 0 0 0 0 1780 859 859 4 + 9 01 JAN 08:00 103992 103992 107.00 902 0 0 0 1314 0 300 0 50.11 503 0 0 0 0 0 0 0 1780 766 766 4 + 10 01 JAN 09:00 107844 107844 107.00 935 0 0 0 1350 0 300 0 50.12 503 0 0 0 0 0 0 0 1780 730 730 4 + 11 01 JAN 10:00 107202 107202 107.00 930 0 0 0 1344 0 300 0 50.13 503 0 0 0 0 0 0 0 1780 736 736 4 + 12 01 JAN 11:00 106025 106025 107.00 919 0 0 0 1333 0 300 0 50.14 503 0 0 0 0 0 0 0 1780 747 747 4 + 13 01 JAN 12:00 105169 105169 107.00 912 0 0 0 1325 0 300 0 50.15 503 0 0 0 0 0 0 0 1780 755 755 4 + 14 01 JAN 13:00 108058 108058 107.00 937 0 0 0 1352 0 300 0 50.17 503 0 0 0 0 0 0 0 1780 728 728 4 + 15 01 JAN 14:00 110198 110198 107.00 956 0 0 0 1372 0 300 0 50.18 503 0 0 0 0 0 0 0 1780 708 708 4 + 16 01 JAN 15:00 113087 113087 107.00 981 0 0 0 1399 0 300 0 50.19 503 0 0 0 0 0 0 0 1780 681 681 4 + 17 01 JAN 16:00 118972 118972 107.00 1032 0 0 0 1454 0 300 0 50.20 503 0 0 0 0 0 0 0 1780 626 626 4 + 18 01 JAN 17:00 197675 197675 107.00 1112 0 0 0 1540 0 300 0 50.21 503 0 0 0 0 0 0 0 1780 540 540 69505 + 19 01 JAN 18:00 131599 131599 107.00 1142 0 0 0 1572 0 300 0 50.23 503 0 0 0 0 0 0 0 1780 508 508 5 + 20 01 JAN 19:00 130636 130636 107.00 1134 0 0 0 1563 0 300 0 50.24 503 0 0 0 0 0 0 0 1780 517 517 5 + 21 01 JAN 20:00 126035 126035 107.00 1094 0 0 0 1520 0 300 0 50.25 503 0 0 0 0 0 0 0 1780 560 560 5 + 22 01 JAN 21:00 120043 120043 107.00 1041 0 0 0 1464 0 300 0 50.26 503 0 0 0 0 0 0 0 1780 616 616 5 + 23 01 JAN 22:00 110520 110520 107.00 958 0 0 0 1375 0 300 0 50.27 503 0 0 0 0 0 0 0 1780 705 705 5 + 24 01 JAN 23:00 98477 98477 96.00 854 0 0 0 1257 0 300 0 50.28 503 0 0 0 0 0 0 0 1780 823 823 5 + 25 02 JAN 00:00 86861 86861 96.00 754 0 0 0 1136 0 300 0 50.30 503 0 0 0 0 0 0 0 1780 944 944 5 + 26 02 JAN 01:00 81499 81485 -1.00 708 0 0 0 1066 0 300 0 50.31 503 0 0 0 0 14 0 0 1780 1000 1014 5 + 27 02 JAN 02:00 81534 81485 -1.00 708 0 0 0 1031 0 300 0 50.32 503 0 0 0 0 49 0 0 1780 1000 1049 5 + 28 02 JAN 03:00 81553 81485 -1.00 708 0 0 0 1012 0 300 0 50.33 503 0 0 0 0 68 0 0 1780 1000 1068 5 + 29 02 JAN 04:00 81550 81485 -1.00 708 0 0 0 1015 0 300 0 50.34 503 0 0 0 0 65 0 0 1780 1000 1065 5 + 30 02 JAN 05:00 81513 81485 -1.00 708 0 0 0 1052 0 300 0 50.36 503 0 0 0 0 28 0 0 1780 1000 1028 5 + 31 02 JAN 06:00 87341 87341 96.00 758 0 0 0 1141 0 300 0 50.37 503 0 0 0 0 0 0 0 1780 939 939 5 + 32 02 JAN 07:00 97997 97997 96.00 850 0 0 0 1252 0 300 0 50.38 503 0 0 0 0 0 0 0 1780 828 828 5 + 33 02 JAN 08:00 106133 106133 107.00 920 0 0 0 1334 0 300 0 50.39 503 0 0 0 0 0 0 0 1780 746 746 5 + 34 02 JAN 09:00 108701 108701 107.00 943 0 0 0 1358 0 300 0 50.40 503 0 0 0 0 0 0 0 1780 722 722 5 + 35 02 JAN 10:00 106989 106989 107.00 928 0 0 0 1342 0 300 0 50.41 503 0 0 0 0 0 0 0 1780 738 738 5 + 36 02 JAN 11:00 105812 105812 107.00 917 0 0 0 1331 0 300 0 50.43 503 0 0 0 0 0 0 0 1780 749 749 5 + 37 02 JAN 12:00 105170 105170 107.00 912 0 0 0 1325 0 300 0 50.44 503 0 0 0 0 0 0 0 1780 755 755 5 + 38 02 JAN 13:00 108273 108273 107.00 939 0 0 0 1354 0 300 0 50.45 503 0 0 0 0 0 0 0 1780 726 726 5 + 39 02 JAN 14:00 110199 110199 107.00 956 0 0 0 1372 0 300 0 50.46 503 0 0 0 0 0 0 0 1780 708 708 5 + 40 02 JAN 15:00 112232 112232 107.00 973 0 0 0 1391 0 300 0 50.47 503 0 0 0 0 0 0 0 1780 689 689 5 + 41 02 JAN 16:00 118438 118438 107.00 1027 0 0 0 1449 0 300 0 50.49 503 0 0 0 0 0 0 0 1780 631 631 5 + 42 02 JAN 17:00 126998 126998 107.00 1102 0 0 0 1529 0 300 0 50.50 503 0 0 0 0 0 0 0 1780 551 551 5 + 43 02 JAN 18:00 128710 128710 107.00 1117 0 0 0 1545 0 300 0 50.51 503 0 0 0 0 0 0 0 1780 535 535 5 + 44 02 JAN 19:00 126998 126998 107.00 1102 0 0 0 1529 0 300 0 50.52 503 0 0 0 0 0 0 0 1780 551 551 5 + 45 02 JAN 20:00 122504 122504 107.00 1063 0 0 0 1487 0 300 0 50.53 503 0 0 0 0 0 0 0 1780 593 593 5 + 46 02 JAN 21:00 116191 116191 107.00 1008 0 0 0 1428 0 300 0 50.55 503 0 0 0 0 0 0 0 1780 652 652 5 + 47 02 JAN 22:00 105705 105705 107.00 916 0 0 0 1330 0 300 0 50.56 503 0 0 0 0 0 0 0 1780 750 750 5 + 48 02 JAN 23:00 94349 94349 96.00 819 0 0 0 1214 0 300 0 50.57 503 0 0 0 0 0 0 0 1780 866 866 5 + 49 03 JAN 00:00 81524 81485 -1.00 708 0 0 0 1041 0 300 0 50.58 503 0 0 0 0 39 0 0 1780 1000 1039 5 + 50 03 JAN 01:00 81614 81485 -1.00 708 0 0 0 951 0 300 0 50.59 503 0 0 0 0 129 0 0 1780 1000 1129 5 + 51 03 JAN 02:00 81660 81485 -1.00 708 0 0 0 905 0 300 0 50.60 503 0 0 0 0 175 0 0 1780 1000 1175 5 + 52 03 JAN 03:00 81688 81485 -1.00 708 0 0 0 877 0 300 0 50.62 503 0 0 0 0 203 0 0 1780 1000 1203 5 + 53 03 JAN 04:00 81671 81485 -1.00 708 0 0 0 894 0 300 0 50.63 503 0 0 0 0 186 0 0 1780 1000 1186 5 + 54 03 JAN 05:00 81567 81485 -1.00 708 0 0 0 998 0 300 0 50.64 503 0 0 0 0 82 0 0 1780 1000 1082 5 + 55 03 JAN 06:00 92141 92141 96.00 800 0 0 0 1191 0 300 0 50.65 503 0 0 0 0 0 0 0 1780 889 889 5 + 56 03 JAN 07:00 109450 109450 107.00 949 0 0 0 1365 0 300 0 50.66 503 0 0 0 0 0 0 0 1780 715 715 5 + 57 03 JAN 08:00 120257 120257 107.00 1043 0 0 0 1466 0 300 0 50.68 503 0 0 0 0 0 0 0 1780 614 614 5 + 58 03 JAN 09:00 121969 121969 107.00 1058 0 0 0 1482 0 300 0 50.69 503 0 0 0 0 0 0 0 1780 598 598 5 + 59 03 JAN 10:00 119508 119508 107.00 1037 0 0 0 1459 0 300 0 50.70 503 0 0 0 0 0 0 0 1780 621 621 5 + 60 03 JAN 11:00 116833 116833 107.00 1013 0 0 0 1434 0 300 0 50.71 503 0 0 0 0 0 0 0 1780 646 646 5 + 61 03 JAN 12:00 115228 115228 107.00 999 0 0 0 1419 0 300 0 50.72 503 0 0 0 0 0 0 0 1780 661 661 5 + 62 03 JAN 13:00 121220 121220 107.00 1052 0 0 0 1475 0 300 0 50.73 503 0 0 0 0 0 0 0 1780 605 605 5 + 63 03 JAN 14:00 124537 124537 107.00 1081 0 0 0 1506 0 300 0 50.75 503 0 0 0 0 0 0 0 1780 574 574 5 + 64 03 JAN 15:00 126677 126677 107.00 1099 0 0 0 1526 0 300 0 50.76 503 0 0 0 0 0 0 0 1780 554 554 5 + 65 03 JAN 16:00 131599 131599 107.00 1142 0 0 0 1572 0 300 0 50.77 503 0 0 0 0 0 0 0 1780 508 508 5 + 66 03 JAN 17:00 142085 142085 107.00 1233 0 0 0 1670 0 300 0 50.78 503 0 0 0 0 0 0 0 1780 410 410 5 + 67 03 JAN 18:00 144332 144332 107.00 1253 0 0 0 1691 0 300 0 50.79 503 0 0 0 0 0 0 0 1780 389 389 5 + 68 03 JAN 19:00 140587 140587 107.00 1220 0 0 0 1656 0 300 0 50.81 503 0 0 0 0 0 0 0 1780 424 424 5 + 69 03 JAN 20:00 131064 131064 107.00 1137 0 0 0 1567 0 300 0 50.82 503 0 0 0 0 0 0 0 1780 513 513 5 + 70 03 JAN 21:00 118865 118865 107.00 1031 0 0 0 1453 0 300 0 50.83 503 0 0 0 0 0 0 0 1780 627 627 4 + 71 03 JAN 22:00 107095 107095 107.00 929 0 0 0 1343 0 300 0 50.84 503 0 0 0 0 0 0 0 1780 737 737 4 + 72 03 JAN 23:00 90617 90617 107.00 785 0 0 0 1189 0 300 0 50.85 503 0 0 0 0 0 0 0 1780 891 891 4 + 73 04 JAN 00:00 73882 73882 96.00 641 0 0 0 1018 0 300 0 50.87 503 0 0 0 0 0 0 0 1780 1062 1062 4 + 74 04 JAN 01:00 65443 65434 -1.00 568 0 0 0 921 0 300 0 50.88 503 0 0 0 0 9 0 0 1780 1150 1159 4 + 75 04 JAN 02:00 65483 65434 -1.00 568 0 0 0 881 0 300 0 50.89 503 0 0 0 0 49 0 0 1780 1150 1199 4 + 76 04 JAN 03:00 65499 65434 -1.00 568 0 0 0 865 0 300 0 50.90 503 0 0 0 0 65 0 0 1780 1150 1215 4 + 77 04 JAN 04:00 65485 65434 -1.00 568 0 0 0 879 0 300 0 50.91 503 0 0 0 0 51 0 0 1780 1150 1201 4 + 78 04 JAN 05:00 68986 68986 96.00 599 0 0 0 967 0 300 0 50.92 503 0 0 0 0 0 0 0 1780 1113 1113 4 + 79 04 JAN 06:00 86554 86554 96.00 750 0 0 0 1150 0 300 0 50.94 503 0 0 0 0 0 0 0 1780 930 930 4 + 80 04 JAN 07:00 105597 105597 107.00 916 0 0 0 1329 0 300 0 50.95 503 0 0 0 0 0 0 0 1780 751 751 4 + 81 04 JAN 08:00 117474 117474 107.00 1019 0 0 0 1440 0 300 0 50.96 503 0 0 0 0 0 0 0 1780 640 640 4 + 82 04 JAN 09:00 120149 120149 107.00 1042 0 0 0 1465 0 300 0 50.97 503 0 0 0 0 0 0 0 1780 615 615 4 + 83 04 JAN 10:00 117902 117902 107.00 1023 0 0 0 1444 0 300 0 50.98 503 0 0 0 0 0 0 0 1780 636 636 4 + 84 04 JAN 11:00 115120 115120 107.00 999 0 0 0 1418 0 300 0 51.00 503 0 0 0 0 0 0 0 1780 662 662 4 + 85 04 JAN 12:00 111910 111910 107.00 971 0 0 0 1388 0 300 0 51.01 503 0 0 0 0 0 0 0 1780 692 692 4 + 86 04 JAN 13:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 51.02 503 0 0 0 0 0 0 0 1780 661 661 4 + 87 04 JAN 14:00 115334 115334 107.00 1000 0 0 0 1420 0 300 0 51.03 503 0 0 0 0 0 0 0 1780 660 660 4 + 88 04 JAN 15:00 116297 116297 107.00 1009 0 0 0 1429 0 300 0 51.04 503 0 0 0 0 0 0 0 1780 651 651 4 + 89 04 JAN 16:00 120256 120256 107.00 1043 0 0 0 1466 0 300 0 51.05 503 0 0 0 0 0 0 0 1780 614 614 4 + 90 04 JAN 17:00 198424 198424 107.00 1119 0 0 0 1547 0 300 0 51.07 503 0 0 0 0 0 0 0 1780 533 533 69505 + 91 04 JAN 18:00 128068 128068 107.00 1111 0 0 0 1539 0 300 0 51.08 503 0 0 0 0 0 0 0 1780 541 541 5 + 92 04 JAN 19:00 122290 122290 107.00 1061 0 0 0 1485 0 300 0 51.09 503 0 0 0 0 0 0 0 1780 595 595 5 + 93 04 JAN 20:00 113516 113516 107.00 985 0 0 0 1403 0 300 0 51.10 503 0 0 0 0 0 0 0 1780 677 677 5 + 94 04 JAN 21:00 102989 102989 96.00 893 0 0 0 1304 0 300 0 51.11 503 0 0 0 0 0 0 0 1780 776 776 5 + 95 04 JAN 22:00 91661 91661 96.00 795 0 0 0 1186 0 300 0 51.13 503 0 0 0 0 0 0 0 1780 894 894 5 + 96 04 JAN 23:00 81543 81485 -1.00 708 0 0 0 1022 0 300 0 51.14 503 0 0 0 0 58 0 0 1780 1000 1058 5 + 97 05 JAN 00:00 64230 64204 -1.00 559 0 0 0 874 0 300 0 51.15 503 0 0 0 0 26 0 0 1370 770 796 4 + 98 05 JAN 01:00 64289 64204 -1.00 559 0 0 0 815 0 300 0 51.16 503 0 0 0 0 85 0 0 1370 770 855 4 + 99 05 JAN 02:00 64293 64204 -1.00 559 0 0 0 811 0 300 0 51.17 503 0 0 0 0 89 0 0 1370 770 859 4 + 100 05 JAN 03:00 64280 64204 -1.00 559 0 0 0 824 0 300 0 51.19 503 0 0 0 0 76 0 0 1370 770 846 4 + 101 05 JAN 04:00 64235 64204 -1.00 559 0 0 0 869 0 300 0 51.20 503 0 0 0 0 31 0 0 1370 770 801 4 + 102 05 JAN 05:00 71052 71052 107.00 619 0 0 0 964 0 300 0 51.21 503 0 0 0 0 0 0 0 1370 706 706 4 + 103 05 JAN 06:00 89456 89456 107.00 779 0 0 0 1136 0 300 0 51.22 503 0 0 0 0 0 0 0 1370 534 534 4 + 104 05 JAN 07:00 108609 108609 107.00 946 0 0 0 1315 0 300 0 51.23 503 0 0 0 0 0 0 0 1370 355 355 4 + 105 05 JAN 08:00 148071 148071 107.00 1076 0 0 0 1438 0 300 0 51.24 503 0 0 0 0 0 0 0 1370 232 232 24505 + 106 05 JAN 09:00 154794 154794 107.00 1135 0 0 0 1484 0 300 0 51.26 503 0 0 0 0 0 0 0 1370 186 186 24506 + 107 05 JAN 10:00 130615 130615 107.00 1138 0 0 0 1487 0 300 0 51.27 503 0 0 0 0 0 0 0 1370 183 183 6 + 108 05 JAN 11:00 129759 129759 107.00 1131 0 0 0 1479 0 300 0 51.28 503 0 0 0 0 0 0 0 1370 191 191 6 + 109 05 JAN 12:00 154990 154990 107.00 1137 0 0 0 1469 0 300 0 51.29 503 0 0 0 0 0 0 0 1370 201 201 24507 + 110 05 JAN 13:00 135198 135198 107.00 1178 0 0 0 1513 0 300 0 51.30 503 0 0 0 0 0 0 0 1370 157 157 7 + 111 05 JAN 14:00 135733 135733 107.00 1183 0 0 0 1518 0 300 0 51.32 503 0 0 0 0 0 0 0 1370 152 152 7 + 112 05 JAN 15:00 135733 135733 107.00 1183 0 0 0 1518 0 300 0 51.33 503 0 0 0 0 0 0 0 1370 152 152 7 + 113 05 JAN 16:00 140976 140976 107.00 1228 0 0 0 1567 0 300 0 51.34 503 0 0 0 0 0 0 0 1370 103 103 7 + 114 05 JAN 17:00 150724 150724 137.00 1313 0 0 0 1641 0 300 0 51.35 503 0 0 0 0 0 0 0 1370 29 29 7 + 115 05 JAN 18:00 149354 149354 137.00 1301 0 0 0 1631 0 300 0 51.36 503 0 0 0 0 0 0 0 1370 39 39 7 + 116 05 JAN 19:00 144422 144422 137.00 1258 0 0 0 1595 0 300 0 51.38 503 0 0 0 0 0 0 0 1370 75 75 7 + 117 05 JAN 20:00 136201 136201 137.00 1187 0 0 0 1535 0 300 0 51.39 503 0 0 0 0 0 0 0 1370 135 135 6 + 118 05 JAN 21:00 125907 125907 107.00 1097 0 0 0 1443 0 300 0 51.40 503 0 0 0 0 0 0 0 1370 227 227 6 + 119 05 JAN 22:00 113816 113816 107.00 992 0 0 0 1330 0 300 0 51.41 503 0 0 0 0 0 0 0 1370 340 340 6 + 120 05 JAN 23:00 92880 92880 107.00 809 0 0 0 1168 0 300 0 51.42 503 0 0 0 0 0 0 0 1370 502 502 4 + 121 06 JAN 00:00 71159 71159 107.00 620 0 0 0 965 0 300 0 51.43 503 0 0 0 0 0 0 0 1780 1115 1115 4 + 122 06 JAN 01:00 64232 64204 -1.00 559 0 0 0 872 0 300 0 51.45 503 0 0 0 0 28 0 0 1780 1180 1208 4 + 123 06 JAN 02:00 64295 64204 -1.00 559 0 0 0 809 0 300 0 51.46 503 0 0 0 0 91 0 0 1780 1180 1271 4 + 124 06 JAN 03:00 64331 64204 -1.00 559 0 0 0 773 0 300 0 51.47 503 0 0 0 0 127 0 0 1780 1180 1307 4 + 125 06 JAN 04:00 182278 181985 -1.00 708 0 0 0 787 0 300 0 51.48 503 0 0 0 0 293 0 0 1780 1000 1293 100505 + 126 06 JAN 05:00 81702 81485 -1.00 708 0 0 0 863 0 300 0 51.49 503 0 0 0 0 217 0 0 1780 1000 1217 5 + 127 06 JAN 06:00 81550 81485 -1.00 708 0 0 0 1015 0 300 0 51.51 503 0 0 0 0 65 0 0 1780 1000 1065 5 + 128 06 JAN 07:00 92429 92429 96.00 802 0 0 0 1194 0 300 0 51.52 503 0 0 0 0 0 0 0 1780 886 886 5 + 129 06 JAN 08:00 106026 106026 107.00 919 0 0 0 1333 0 300 0 51.53 503 0 0 0 0 0 0 0 1780 747 747 5 + 130 06 JAN 09:00 112339 112339 107.00 974 0 0 0 1392 0 300 0 51.54 503 0 0 0 0 0 0 0 1780 688 688 5 + 131 06 JAN 10:00 112874 112874 107.00 979 0 0 0 1397 0 300 0 51.55 503 0 0 0 0 0 0 0 1780 683 683 5 + 132 06 JAN 11:00 112767 112767 107.00 978 0 0 0 1396 0 300 0 51.56 503 0 0 0 0 0 0 0 1780 684 684 5 + 133 06 JAN 12:00 112018 112018 107.00 971 0 0 0 1389 0 300 0 51.58 503 0 0 0 0 0 0 0 1780 691 691 5 + 134 06 JAN 13:00 116833 116833 107.00 1013 0 0 0 1434 0 300 0 51.59 503 0 0 0 0 0 0 0 1780 646 646 5 + 135 06 JAN 14:00 117582 117582 107.00 1020 0 0 0 1441 0 300 0 51.60 503 0 0 0 0 0 0 0 1780 639 639 5 + 136 06 JAN 15:00 118331 118331 107.00 1026 0 0 0 1448 0 300 0 51.61 503 0 0 0 0 0 0 0 1780 632 632 5 + 137 06 JAN 16:00 125500 125500 107.00 1089 0 0 0 1515 0 300 0 51.62 503 0 0 0 0 0 0 0 1780 565 565 5 + 138 06 JAN 17:00 133953 133953 107.00 1163 0 0 0 1594 0 300 0 51.64 503 0 0 0 0 0 0 0 1780 486 486 5 + 139 06 JAN 18:00 129566 129566 107.00 1124 0 0 0 1553 0 300 0 51.65 503 0 0 0 0 0 0 0 1780 527 527 5 + 140 06 JAN 19:00 122396 122396 107.00 1062 0 0 0 1486 0 300 0 51.66 503 0 0 0 0 0 0 0 1780 594 594 4 + 141 06 JAN 20:00 115334 115334 107.00 1000 0 0 0 1420 0 300 0 51.67 503 0 0 0 0 0 0 0 1780 660 660 4 + 142 06 JAN 21:00 107737 107737 107.00 934 0 0 0 1349 0 300 0 51.68 503 0 0 0 0 0 0 0 1780 731 731 4 + 143 06 JAN 22:00 96395 96395 107.00 835 0 0 0 1243 0 300 0 51.70 503 0 0 0 0 0 0 0 1780 837 837 4 + 144 06 JAN 23:00 80410 80410 96.00 697 0 0 0 1086 0 300 0 51.71 503 0 0 0 0 0 0 0 1780 994 994 4 + 145 07 JAN 00:00 65626 65626 96.00 570 0 0 0 932 0 300 0 51.72 503 0 0 0 0 0 0 0 1780 1148 1148 4 + 146 07 JAN 01:00 65525 65434 -1.00 568 0 0 0 839 0 300 0 51.73 503 0 0 0 0 91 0 0 1780 1150 1241 4 + 147 07 JAN 02:00 65570 65434 -1.00 568 0 0 0 794 0 300 0 51.74 503 0 0 0 0 136 0 0 1780 1150 1286 4 + 148 07 JAN 03:00 65593 65434 -1.00 568 0 0 0 771 0 300 0 51.75 503 0 0 0 0 159 0 0 1780 1150 1309 4 + 149 07 JAN 04:00 65592 65434 -1.00 568 0 0 0 772 0 300 0 51.77 503 0 0 0 0 158 0 0 1780 1150 1308 4 + 150 07 JAN 05:00 65548 65434 -1.00 568 0 0 0 816 0 300 0 51.78 503 0 0 0 0 114 0 0 1780 1150 1264 4 + 151 07 JAN 06:00 65447 65434 -1.00 568 0 0 0 917 0 300 0 51.79 503 0 0 0 0 13 0 0 1780 1150 1163 4 + 152 07 JAN 07:00 78298 78298 96.00 679 0 0 0 1064 0 300 0 51.80 503 0 0 0 0 0 0 0 1780 1016 1016 4 + 153 07 JAN 08:00 90510 90510 107.00 784 0 0 0 1188 0 300 0 51.81 503 0 0 0 0 0 0 0 1780 892 892 4 + 154 07 JAN 09:00 95218 95218 107.00 825 0 0 0 1232 0 300 0 51.83 503 0 0 0 0 0 0 0 1780 848 848 4 + 155 07 JAN 10:00 93399 93399 107.00 809 0 0 0 1215 0 300 0 51.84 503 0 0 0 0 0 0 0 1780 865 865 4 + 156 07 JAN 11:00 91259 91259 107.00 791 0 0 0 1195 0 300 0 51.85 503 0 0 0 0 0 0 0 1780 885 885 4 + 157 07 JAN 12:00 90510 90510 107.00 784 0 0 0 1188 0 300 0 51.86 503 0 0 0 0 0 0 0 1780 892 892 4 + 158 07 JAN 13:00 94041 94041 107.00 815 0 0 0 1221 0 300 0 51.87 503 0 0 0 0 0 0 0 1780 859 859 4 + 159 07 JAN 14:00 96502 96502 107.00 836 0 0 0 1244 0 300 0 51.88 503 0 0 0 0 0 0 0 1780 836 836 4 + 160 07 JAN 15:00 101317 101317 107.00 878 0 0 0 1289 0 300 0 51.90 503 0 0 0 0 0 0 0 1780 791 791 4 + 161 07 JAN 16:00 111696 111696 107.00 969 0 0 0 1386 0 300 0 51.91 503 0 0 0 0 0 0 0 1780 694 694 4 + 162 07 JAN 17:00 124322 124322 107.00 1079 0 0 0 1504 0 300 0 51.92 503 0 0 0 0 0 0 0 1780 576 576 4 + 163 07 JAN 18:00 125178 125178 107.00 1086 0 0 0 1512 0 300 0 51.93 503 0 0 0 0 0 0 0 1780 568 568 4 + 164 07 JAN 19:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 51.94 503 0 0 0 0 0 0 0 1780 619 619 4 + 165 07 JAN 20:00 111054 111054 107.00 963 0 0 0 1380 0 300 0 51.96 503 0 0 0 0 0 0 0 1780 700 700 4 + 166 07 JAN 21:00 102066 102066 107.00 885 0 0 0 1296 0 300 0 51.97 503 0 0 0 0 0 0 0 1780 784 784 4 + 167 07 JAN 22:00 90403 90403 107.00 783 0 0 0 1187 0 300 0 51.98 503 0 0 0 0 0 0 0 1780 893 893 4 + 168 07 JAN 23:00 76090 76090 96.00 660 0 0 0 1041 0 300 0 51.99 503 0 0 0 0 0 0 0 1780 1039 1039 4 + 169 08 JAN 00:00 65469 65434 -1.00 568 0 0 0 895 0 300 0 52.00 460 0 0 0 0 35 0 0 1780 1150 1185 4 + 170 08 JAN 01:00 65578 65434 -1.00 568 0 0 0 786 0 300 0 52.01 460 0 0 0 0 144 0 0 1780 1150 1294 4 + 171 08 JAN 02:00 65631 65434 -1.00 568 0 0 0 733 0 300 0 52.02 460 0 0 0 0 197 0 0 1780 1150 1347 4 + 172 08 JAN 03:00 65654 65434 -1.00 568 0 0 0 710 0 300 0 52.03 460 0 0 0 0 220 0 0 1780 1150 1370 4 + 173 08 JAN 04:00 65630 65434 -1.00 568 0 0 0 734 0 300 0 52.04 460 0 0 0 0 196 0 0 1780 1150 1346 4 + 174 08 JAN 05:00 65526 65434 -1.00 568 0 0 0 838 0 300 0 52.05 460 0 0 0 0 92 0 0 1780 1150 1242 4 + 175 08 JAN 06:00 74746 74746 96.00 648 0 0 0 1027 0 300 0 52.06 460 0 0 0 0 0 0 0 1780 1053 1053 4 + 176 08 JAN 07:00 94897 94897 107.00 822 0 0 0 1229 0 300 0 52.07 460 0 0 0 0 0 0 0 1780 851 851 4 + 177 08 JAN 08:00 109556 109556 107.00 950 0 0 0 1366 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 714 714 4 + 178 08 JAN 09:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 661 661 4 + 179 08 JAN 10:00 115976 115976 107.00 1006 0 0 0 1426 0 300 0 52.09 460 0 0 0 0 0 0 0 1780 654 654 4 + 180 08 JAN 11:00 116618 116618 107.00 1012 0 0 0 1432 0 300 0 52.10 460 0 0 0 0 0 0 0 1780 648 648 4 + 181 08 JAN 12:00 115441 115441 107.00 1001 0 0 0 1421 0 300 0 52.11 460 0 0 0 0 0 0 0 1780 659 659 4 + 182 08 JAN 13:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 52.12 460 0 0 0 0 0 0 0 1780 619 619 4 + 183 08 JAN 14:00 119614 119614 107.00 1038 0 0 0 1460 0 300 0 52.13 460 0 0 0 0 0 0 0 1780 620 620 4 + 184 08 JAN 15:00 118437 118437 107.00 1027 0 0 0 1449 0 300 0 52.14 460 0 0 0 0 0 0 0 1780 631 631 4 + 185 08 JAN 16:00 123252 123252 107.00 1069 0 0 0 1494 0 300 0 52.15 460 0 0 0 0 0 0 0 1780 586 586 4 + 186 08 JAN 17:00 200778 200778 107.00 1139 0 0 0 1569 0 300 0 52.16 460 0 0 0 0 0 0 0 1780 511 511 69505 + 187 08 JAN 18:00 129031 129031 107.00 1120 0 0 0 1548 0 300 0 52.17 460 0 0 0 0 0 0 0 1780 532 532 5 + 188 08 JAN 19:00 123252 123252 107.00 1069 0 0 0 1494 0 300 0 52.18 460 0 0 0 0 0 0 0 1780 586 586 4 + 189 08 JAN 20:00 115013 115013 107.00 998 0 0 0 1417 0 300 0 52.19 460 0 0 0 0 0 0 0 1780 663 663 4 + 190 08 JAN 21:00 104634 104634 107.00 907 0 0 0 1320 0 300 0 52.20 460 0 0 0 0 0 0 0 1780 760 760 4 + 191 08 JAN 22:00 93399 93399 107.00 809 0 0 0 1215 0 300 0 52.21 460 0 0 0 0 0 0 0 1780 865 865 4 + 192 08 JAN 23:00 78298 78298 96.00 679 0 0 0 1064 0 300 0 52.22 460 0 0 0 0 0 0 0 1780 1016 1016 4 + 193 09 JAN 00:00 67162 67162 96.00 583 0 0 0 948 0 300 0 52.22 460 0 0 0 0 0 0 0 1780 1132 1132 4 + 194 09 JAN 01:00 65515 65434 -1.00 568 0 0 0 849 0 300 0 52.23 460 0 0 0 0 81 0 0 1780 1150 1231 4 + 195 09 JAN 02:00 65579 65434 -1.00 568 0 0 0 785 0 300 0 52.24 460 0 0 0 0 145 0 0 1780 1150 1295 4 + 196 09 JAN 03:00 65614 65434 -1.00 568 0 0 0 750 0 300 0 52.25 460 0 0 0 0 180 0 0 1780 1150 1330 4 + 197 09 JAN 04:00 65603 65434 -1.00 568 0 0 0 761 0 300 0 52.26 460 0 0 0 0 169 0 0 1780 1150 1319 4 + 198 09 JAN 05:00 65516 65434 -1.00 568 0 0 0 848 0 300 0 52.27 460 0 0 0 0 82 0 0 1780 1150 1232 4 + 199 09 JAN 06:00 74650 74650 96.00 647 0 0 0 1026 0 300 0 52.28 460 0 0 0 0 0 0 0 1780 1054 1054 4 + 200 09 JAN 07:00 92329 92329 107.00 800 0 0 0 1205 0 300 0 52.29 460 0 0 0 0 0 0 0 1780 875 875 4 + 201 09 JAN 08:00 105169 105169 107.00 912 0 0 0 1325 0 300 0 52.30 460 0 0 0 0 0 0 0 1780 755 755 4 + 202 09 JAN 09:00 109128 109128 107.00 946 0 0 0 1362 0 300 0 52.31 460 0 0 0 0 0 0 0 1780 718 718 4 + 203 09 JAN 10:00 108486 108486 107.00 941 0 0 0 1356 0 300 0 52.32 460 0 0 0 0 0 0 0 1780 724 724 4 + 204 09 JAN 11:00 108593 108593 107.00 942 0 0 0 1357 0 300 0 52.33 460 0 0 0 0 0 0 0 1780 723 723 4 + 205 09 JAN 12:00 107951 107951 107.00 936 0 0 0 1351 0 300 0 52.34 460 0 0 0 0 0 0 0 1780 729 729 4 + 206 09 JAN 13:00 113194 113194 107.00 982 0 0 0 1400 0 300 0 52.35 460 0 0 0 0 0 0 0 1780 680 680 4 + 207 09 JAN 14:00 115441 115441 107.00 1001 0 0 0 1421 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 659 659 4 + 208 09 JAN 15:00 116939 116939 107.00 1014 0 0 0 1435 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 645 645 4 + 209 09 JAN 16:00 122931 122931 107.00 1067 0 0 0 1491 0 300 0 52.37 460 0 0 0 0 0 0 0 1780 589 589 4 + 210 09 JAN 17:00 201313 201313 107.00 1144 0 0 0 1574 0 300 0 52.38 460 0 0 0 0 0 0 0 1780 506 506 69505 + 211 09 JAN 18:00 132990 132990 107.00 1154 0 0 0 1585 0 300 0 52.39 460 0 0 0 0 0 0 0 1780 495 495 5 + 212 09 JAN 19:00 130850 130850 107.00 1136 0 0 0 1565 0 300 0 52.40 460 0 0 0 0 0 0 0 1780 515 515 5 + 213 09 JAN 20:00 125072 125072 107.00 1085 0 0 0 1511 0 300 0 52.41 460 0 0 0 0 0 0 0 1780 569 569 5 + 214 09 JAN 21:00 115442 115442 107.00 1001 0 0 0 1421 0 300 0 52.42 460 0 0 0 0 0 0 0 1780 659 659 5 + 215 09 JAN 22:00 101933 101933 96.00 884 0 0 0 1293 0 300 0 52.43 460 0 0 0 0 0 0 0 1780 787 787 5 + 216 09 JAN 23:00 86957 86957 96.00 755 0 0 0 1137 0 300 0 52.44 460 0 0 0 0 0 0 0 1780 943 943 5 + 217 10 JAN 00:00 81535 81485 -1.00 708 0 0 0 1030 0 300 0 52.45 460 0 0 0 0 50 0 0 1780 1000 1050 5 + 218 10 JAN 01:00 81619 81485 -1.00 708 0 0 0 946 0 300 0 52.46 460 0 0 0 0 134 0 0 1780 1000 1134 5 + 219 10 JAN 02:00 81660 81485 -1.00 708 0 0 0 905 0 300 0 52.47 460 0 0 0 0 175 0 0 1780 1000 1175 5 + 220 10 JAN 03:00 81674 81485 -1.00 708 0 0 0 891 0 300 0 52.48 460 0 0 0 0 189 0 0 1780 1000 1189 5 + 221 10 JAN 04:00 81654 81485 -1.00 708 0 0 0 911 0 300 0 52.49 460 0 0 0 0 169 0 0 1780 1000 1169 5 + 222 10 JAN 05:00 81567 81485 -1.00 708 0 0 0 998 0 300 0 52.49 460 0 0 0 0 82 0 0 1780 1000 1082 5 + 223 10 JAN 06:00 89837 89837 96.00 780 0 0 0 1167 0 300 0 52.50 460 0 0 0 0 0 0 0 1780 913 913 5 + 224 10 JAN 07:00 105277 105277 107.00 913 0 0 0 1326 0 300 0 52.51 460 0 0 0 0 0 0 0 1780 754 754 5 + 225 10 JAN 08:00 115656 115656 107.00 1003 0 0 0 1423 0 300 0 52.52 460 0 0 0 0 0 0 0 1780 657 657 5 + 226 10 JAN 09:00 118224 118224 107.00 1026 0 0 0 1447 0 300 0 52.53 460 0 0 0 0 0 0 0 1780 633 633 5 + 227 10 JAN 10:00 115656 115656 107.00 1003 0 0 0 1423 0 300 0 52.54 460 0 0 0 0 0 0 0 1780 657 657 5 + 228 10 JAN 11:00 113730 113730 107.00 986 0 0 0 1405 0 300 0 52.55 460 0 0 0 0 0 0 0 1780 675 675 5 + 229 10 JAN 12:00 111483 111483 107.00 967 0 0 0 1384 0 300 0 52.56 460 0 0 0 0 0 0 0 1780 696 696 5 + 230 10 JAN 13:00 115228 115228 107.00 999 0 0 0 1419 0 300 0 52.57 460 0 0 0 0 0 0 0 1780 661 661 5 + 231 10 JAN 14:00 116405 116405 107.00 1010 0 0 0 1430 0 300 0 52.58 460 0 0 0 0 0 0 0 1780 650 650 5 + 232 10 JAN 15:00 118224 118224 107.00 1026 0 0 0 1447 0 300 0 52.59 460 0 0 0 0 0 0 0 1780 633 633 5 + 233 10 JAN 16:00 124537 124537 107.00 1081 0 0 0 1506 0 300 0 52.60 460 0 0 0 0 0 0 0 1780 574 574 5 + 234 10 JAN 17:00 133632 133632 107.00 1160 0 0 0 1591 0 300 0 52.61 460 0 0 0 0 0 0 0 1780 489 489 5 + 235 10 JAN 18:00 136949 136949 107.00 1189 0 0 0 1622 0 300 0 52.62 460 0 0 0 0 0 0 0 1780 458 458 5 + 236 10 JAN 19:00 136521 136521 107.00 1185 0 0 0 1618 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 462 462 5 + 237 10 JAN 20:00 129673 129673 107.00 1125 0 0 0 1554 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 526 526 5 + 238 10 JAN 21:00 118331 118331 107.00 1026 0 0 0 1448 0 300 0 52.64 460 0 0 0 0 0 0 0 1780 632 632 5 + 239 10 JAN 22:00 104956 104956 107.00 910 0 0 0 1323 0 300 0 52.65 460 0 0 0 0 0 0 0 1780 757 757 5 + 240 10 JAN 23:00 89741 89741 96.00 779 0 0 0 1166 0 300 0 52.66 460 0 0 0 0 0 0 0 1780 914 914 5 + 241 11 JAN 00:00 81524 81485 -1.00 708 0 0 0 1041 0 300 0 52.67 460 0 0 0 0 39 0 0 1780 1000 1039 5 + 242 11 JAN 01:00 81607 81485 -1.00 708 0 0 0 958 0 300 0 52.68 460 0 0 0 0 122 0 0 1780 1000 1122 5 + 243 11 JAN 02:00 81650 81485 -1.00 708 0 0 0 915 0 300 0 52.69 460 0 0 0 0 165 0 0 1780 1000 1165 5 + 244 11 JAN 03:00 81665 81485 -1.00 708 0 0 0 900 0 300 0 52.70 460 0 0 0 0 180 0 0 1780 1000 1180 5 + 245 11 JAN 04:00 81641 81485 -1.00 708 0 0 0 924 0 300 0 52.71 460 0 0 0 0 156 0 0 1780 1000 1156 5 + 246 11 JAN 05:00 81536 81485 -1.00 708 0 0 0 1029 0 300 0 52.72 460 0 0 0 0 51 0 0 1780 1000 1051 5 + 247 11 JAN 06:00 94925 94925 96.00 824 0 0 0 1220 0 300 0 52.73 460 0 0 0 0 0 0 0 1780 860 860 5 + 248 11 JAN 07:00 111483 111483 107.00 967 0 0 0 1384 0 300 0 52.74 460 0 0 0 0 0 0 0 1780 696 696 5 + 249 11 JAN 08:00 121006 121006 107.00 1050 0 0 0 1473 0 300 0 52.75 460 0 0 0 0 0 0 0 1780 607 607 5 + 250 11 JAN 09:00 122504 122504 107.00 1063 0 0 0 1487 0 300 0 52.76 460 0 0 0 0 0 0 0 1780 593 593 5 + 251 11 JAN 10:00 119829 119829 107.00 1040 0 0 0 1462 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 618 618 5 + 252 11 JAN 11:00 116940 116940 107.00 1014 0 0 0 1435 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 645 645 5 + 253 11 JAN 12:00 114158 114158 107.00 990 0 0 0 1409 0 300 0 52.78 460 0 0 0 0 0 0 0 1780 671 671 5 + 254 11 JAN 13:00 118331 118331 107.00 1026 0 0 0 1448 0 300 0 52.79 460 0 0 0 0 0 0 0 1780 632 632 5 + 255 11 JAN 14:00 118973 118973 107.00 1032 0 0 0 1454 0 300 0 52.80 460 0 0 0 0 0 0 0 1780 626 626 5 + 256 11 JAN 15:00 119615 119615 107.00 1038 0 0 0 1460 0 300 0 52.81 460 0 0 0 0 0 0 0 1780 620 620 5 + 257 11 JAN 16:00 126142 126142 107.00 1095 0 0 0 1521 0 300 0 52.82 460 0 0 0 0 0 0 0 1780 559 559 5 + 258 11 JAN 17:00 136521 136521 107.00 1185 0 0 0 1618 0 300 0 52.83 460 0 0 0 0 0 0 0 1780 462 462 5 + 259 11 JAN 18:00 140373 140373 107.00 1218 0 0 0 1654 0 300 0 52.84 460 0 0 0 0 0 0 0 1780 426 426 5 + 260 11 JAN 19:00 138661 138661 107.00 1204 0 0 0 1638 0 300 0 52.85 460 0 0 0 0 0 0 0 1780 442 442 5 + 261 11 JAN 20:00 130636 130636 107.00 1134 0 0 0 1563 0 300 0 52.86 460 0 0 0 0 0 0 0 1780 517 517 5 + 262 11 JAN 21:00 118866 118866 107.00 1031 0 0 0 1453 0 300 0 52.87 460 0 0 0 0 0 0 0 1780 627 627 5 + 263 11 JAN 22:00 106026 106026 107.00 919 0 0 0 1333 0 300 0 52.88 460 0 0 0 0 0 0 0 1780 747 747 5 + 264 11 JAN 23:00 91373 91373 96.00 793 0 0 0 1183 0 300 0 52.89 460 0 0 0 0 0 0 0 1780 897 897 5 + 265 12 JAN 00:00 76081 76081 107.00 663 0 0 0 1011 0 300 0 52.90 460 0 0 0 0 0 0 0 1370 659 659 4 + 266 12 JAN 01:00 67093 67093 107.00 584 0 0 0 927 0 300 0 52.91 460 0 0 0 0 0 0 0 1370 743 743 4 + 267 12 JAN 02:00 64218 64204 -1.00 559 0 0 0 886 0 300 0 52.91 460 0 0 0 0 14 0 0 1370 770 784 4 + 268 12 JAN 03:00 64234 64204 -1.00 559 0 0 0 870 0 300 0 52.92 460 0 0 0 0 30 0 0 1370 770 800 4 + 269 12 JAN 04:00 64213 64204 -1.00 559 0 0 0 891 0 300 0 52.93 460 0 0 0 0 9 0 0 1370 770 779 4 + 270 12 JAN 05:00 73299 73299 107.00 638 0 0 0 985 0 300 0 52.94 460 0 0 0 0 0 0 0 1370 685 685 4 + 271 12 JAN 06:00 92452 92452 107.00 805 0 0 0 1164 0 300 0 52.95 460 0 0 0 0 0 0 0 1370 506 506 4 + 272 12 JAN 07:00 110321 110321 107.00 961 0 0 0 1331 0 300 0 52.96 460 0 0 0 0 0 0 0 1370 339 339 4 + 273 12 JAN 08:00 146787 146787 107.00 1065 0 0 0 1426 0 300 0 52.97 460 0 0 0 0 0 0 0 1370 244 244 24505 + 274 12 JAN 09:00 123357 123357 107.00 1075 0 0 0 1436 0 300 0 52.98 460 0 0 0 0 0 0 0 1370 234 234 5 + 275 12 JAN 10:00 120361 120361 107.00 1048 0 0 0 1408 0 300 0 52.99 460 0 0 0 0 0 0 0 1370 262 262 5 + 276 12 JAN 11:00 117793 117793 107.00 1026 0 0 0 1384 0 300 0 53.00 460 0 0 0 0 0 0 0 1370 286 286 5 + 277 12 JAN 12:00 116081 116081 107.00 1011 0 0 0 1368 0 300 0 53.01 460 0 0 0 0 0 0 0 1370 302 302 5 + 278 12 JAN 13:00 174033 174033 107.00 1089 0 0 0 1418 0 300 0 53.02 460 0 0 0 0 0 0 0 1370 252 252 49007 + 279 12 JAN 14:00 126959 126959 107.00 1106 0 0 0 1436 0 300 0 53.03 460 0 0 0 0 0 0 0 1370 234 234 7 + 280 12 JAN 15:00 128885 128885 107.00 1123 0 0 0 1454 0 300 0 53.04 460 0 0 0 0 0 0 0 1370 216 216 7 + 281 12 JAN 16:00 135091 135091 107.00 1177 0 0 0 1512 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 158 158 7 + 282 12 JAN 17:00 145655 145655 137.00 1269 0 0 0 1604 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 66 66 7 + 283 12 JAN 18:00 149902 149902 137.00 1306 0 0 0 1635 0 300 0 53.06 460 0 0 0 0 0 0 0 1370 35 35 7 + 284 12 JAN 19:00 147710 147710 137.00 1287 0 0 0 1619 0 300 0 53.07 460 0 0 0 0 0 0 0 1370 51 51 7 + 285 12 JAN 20:00 138515 138515 107.00 1207 0 0 0 1544 0 300 0 53.08 460 0 0 0 0 0 0 0 1370 126 126 7 + 286 12 JAN 21:00 126531 126531 107.00 1103 0 0 0 1432 0 300 0 53.09 460 0 0 0 0 0 0 0 1370 238 238 7 + 287 12 JAN 22:00 113263 113263 107.00 987 0 0 0 1308 0 300 0 53.10 460 0 0 0 0 0 0 0 1370 362 362 7 + 288 12 JAN 23:00 96464 96464 107.00 841 0 0 0 1151 0 300 0 53.11 460 0 0 0 0 0 0 0 1370 519 519 7 + 289 13 JAN 00:00 190316 190206 -1.00 780 0 0 0 1030 0 300 0 53.12 460 0 0 0 0 50 0 0 1780 940 1050 100506 + 290 13 JAN 01:00 81627 81485 -1.00 708 0 0 0 938 0 300 0 53.13 460 0 0 0 0 142 0 0 1780 1000 1142 5 + 291 13 JAN 02:00 81674 81485 -1.00 708 0 0 0 891 0 300 0 53.14 460 0 0 0 0 189 0 0 1780 1000 1189 5 + 292 13 JAN 03:00 81693 81485 -1.00 708 0 0 0 872 0 300 0 53.15 460 0 0 0 0 208 0 0 1780 1000 1208 5 + 293 13 JAN 04:00 81681 81485 -1.00 708 0 0 0 884 0 300 0 53.16 460 0 0 0 0 196 0 0 1780 1000 1196 5 + 294 13 JAN 05:00 81613 81485 -1.00 708 0 0 0 952 0 300 0 53.17 460 0 0 0 0 128 0 0 1780 1000 1128 5 + 295 13 JAN 06:00 82829 82829 96.00 719 0 0 0 1094 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 986 986 5 + 296 13 JAN 07:00 96749 96749 96.00 839 0 0 0 1239 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 841 841 5 + 297 13 JAN 08:00 106454 106454 107.00 923 0 0 0 1337 0 300 0 53.19 460 0 0 0 0 0 0 0 1780 743 743 5 + 298 13 JAN 09:00 109450 109450 107.00 949 0 0 0 1365 0 300 0 53.20 460 0 0 0 0 0 0 0 1780 715 715 5 + 299 13 JAN 10:00 107203 107203 107.00 930 0 0 0 1344 0 300 0 53.21 460 0 0 0 0 0 0 0 1780 736 736 5 + 300 13 JAN 11:00 104956 104956 107.00 910 0 0 0 1323 0 300 0 53.22 460 0 0 0 0 0 0 0 1780 757 757 5 + 301 13 JAN 12:00 103181 103181 96.00 895 0 0 0 1306 0 300 0 53.23 460 0 0 0 0 0 0 0 1780 774 774 5 + 302 13 JAN 13:00 107203 107203 107.00 930 0 0 0 1344 0 300 0 53.24 460 0 0 0 0 0 0 0 1780 736 736 5 + 303 13 JAN 14:00 108808 108808 107.00 944 0 0 0 1359 0 300 0 53.25 460 0 0 0 0 0 0 0 1780 721 721 5 + 304 13 JAN 15:00 111590 111590 107.00 968 0 0 0 1385 0 300 0 53.26 460 0 0 0 0 0 0 0 1780 695 695 5 + 305 13 JAN 16:00 120150 120150 107.00 1042 0 0 0 1465 0 300 0 53.27 460 0 0 0 0 0 0 0 1780 615 615 5 + 306 13 JAN 17:00 130422 130422 107.00 1132 0 0 0 1561 0 300 0 53.28 460 0 0 0 0 0 0 0 1780 519 519 5 + 307 13 JAN 18:00 131064 131064 107.00 1137 0 0 0 1567 0 300 0 53.29 460 0 0 0 0 0 0 0 1780 513 513 5 + 308 13 JAN 19:00 126034 126034 107.00 1094 0 0 0 1520 0 300 0 53.30 460 0 0 0 0 0 0 0 1780 560 560 4 + 309 13 JAN 20:00 116832 116832 107.00 1013 0 0 0 1434 0 300 0 53.31 460 0 0 0 0 0 0 0 1780 646 646 4 + 310 13 JAN 21:00 106239 106239 107.00 921 0 0 0 1335 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 745 745 4 + 311 13 JAN 22:00 93292 93292 107.00 808 0 0 0 1214 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 866 866 4 + 312 13 JAN 23:00 77242 77242 96.00 670 0 0 0 1053 0 300 0 53.33 460 0 0 0 0 0 0 0 1780 1027 1027 4 + 313 14 JAN 00:00 65465 65434 -1.00 568 0 0 0 899 0 300 0 53.34 460 0 0 0 0 31 0 0 1780 1150 1181 4 + 314 14 JAN 01:00 65565 65434 -1.00 568 0 0 0 799 0 300 0 53.35 460 0 0 0 0 131 0 0 1780 1150 1281 4 + 315 14 JAN 02:00 65621 65434 -1.00 568 0 0 0 743 0 300 0 53.36 460 0 0 0 0 187 0 0 1780 1150 1337 4 + 316 14 JAN 03:00 65648 65434 -1.00 568 0 0 0 716 0 300 0 53.37 460 0 0 0 0 214 0 0 1780 1150 1364 4 + 317 14 JAN 04:00 65638 65434 -1.00 568 0 0 0 726 0 300 0 53.38 460 0 0 0 0 204 0 0 1780 1150 1354 4 + 318 14 JAN 05:00 65581 65434 -1.00 568 0 0 0 783 0 300 0 53.39 460 0 0 0 0 147 0 0 1780 1150 1297 4 + 319 14 JAN 06:00 65459 65434 -1.00 568 0 0 0 905 0 300 0 53.40 460 0 0 0 0 25 0 0 1780 1150 1175 4 + 320 14 JAN 07:00 79354 79354 96.00 688 0 0 0 1075 0 300 0 53.41 460 0 0 0 0 0 0 0 1780 1005 1005 4 + 321 14 JAN 08:00 94362 94362 107.00 818 0 0 0 1224 0 300 0 53.42 460 0 0 0 0 0 0 0 1780 856 856 4 + 322 14 JAN 09:00 102387 102387 107.00 888 0 0 0 1299 0 300 0 53.43 460 0 0 0 0 0 0 0 1780 781 781 4 + 323 14 JAN 10:00 102494 102494 107.00 889 0 0 0 1300 0 300 0 53.44 460 0 0 0 0 0 0 0 1780 780 780 4 + 324 14 JAN 11:00 103136 103136 107.00 894 0 0 0 1306 0 300 0 53.45 460 0 0 0 0 0 0 0 1780 774 774 4 + 325 14 JAN 12:00 103243 103243 107.00 895 0 0 0 1307 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 773 773 4 + 326 14 JAN 13:00 108272 108272 107.00 939 0 0 0 1354 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 726 726 4 + 327 14 JAN 14:00 109449 109449 107.00 949 0 0 0 1365 0 300 0 53.47 460 0 0 0 0 0 0 0 1780 715 715 4 + 328 14 JAN 15:00 107630 107630 107.00 933 0 0 0 1348 0 300 0 53.48 460 0 0 0 0 0 0 0 1780 732 732 4 + 329 14 JAN 16:00 115976 115976 107.00 1006 0 0 0 1426 0 300 0 53.49 460 0 0 0 0 0 0 0 1780 654 654 4 + 330 14 JAN 17:00 127211 127211 107.00 1104 0 0 0 1531 0 300 0 53.50 460 0 0 0 0 0 0 0 1780 549 549 4 + 331 14 JAN 18:00 126462 126462 107.00 1097 0 0 0 1524 0 300 0 53.51 460 0 0 0 0 0 0 0 1780 556 556 4 + 332 14 JAN 19:00 121112 121112 107.00 1051 0 0 0 1474 0 300 0 53.52 460 0 0 0 0 0 0 0 1780 606 606 4 + 333 14 JAN 20:00 112124 112124 107.00 972 0 0 0 1390 0 300 0 53.53 460 0 0 0 0 0 0 0 1780 690 690 4 + 334 14 JAN 21:00 102494 102494 107.00 889 0 0 0 1300 0 300 0 53.54 460 0 0 0 0 0 0 0 1780 780 780 4 + 335 14 JAN 22:00 93827 93827 107.00 813 0 0 0 1219 0 300 0 53.55 460 0 0 0 0 0 0 0 1780 861 861 4 + 336 14 JAN 23:00 78490 78490 96.00 680 0 0 0 1066 0 300 0 53.56 460 0 0 0 0 0 0 0 1780 1014 1014 4 diff --git a/tests/functional/data_complex_case/fast/details-hourly.txt b/tests/functional/data_complex_case/fast/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/details-hourly.txt rename to tests/functional/data_complex_case/fast/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/fast/values-hourly.txt b/tests/functional/data_complex_case/fast/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/values-hourly.txt rename to tests/functional/data_complex_case/fast/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/fast/1/details-hourly.txt b/tests/functional/data_complex_case/fast/1/details-hourly.txt new file mode 100644 index 00000000..89be6830 --- /dev/null +++ b/tests/functional/data_complex_case/fast/1/details-hourly.txt @@ -0,0 +1,343 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 336 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 410 0 395 0 1 0 2 0 1 0 2 0 + 2 01 JAN 01:00 410 0 325 0 1 0 2 0 1 0 2 0 + 3 01 JAN 02:00 395 0 300 0 1 0 2 0 1 0 2 0 + 4 01 JAN 03:00 371 0 300 0 1 0 2 0 1 0 2 0 + 5 01 JAN 04:00 375 0 300 0 1 0 2 0 1 0 2 0 + 6 01 JAN 05:00 410 0 303 0 1 0 2 0 1 0 2 0 + 7 01 JAN 06:00 410 0 392 0 1 0 2 0 1 0 2 0 + 8 01 JAN 07:00 410 0 511 0 1 0 69503 0 1 0 3 0 + 9 01 JAN 08:00 410 0 604 0 1 0 3 0 1 0 3 0 + 10 01 JAN 09:00 410 0 640 0 1 0 3 0 1 0 3 0 + 11 01 JAN 10:00 410 0 634 0 1 0 3 0 1 0 3 0 + 12 01 JAN 11:00 410 0 623 0 1 0 3 0 1 0 3 0 + 13 01 JAN 12:00 410 0 615 0 1 0 3 0 1 0 3 0 + 14 01 JAN 13:00 410 0 642 0 1 0 3 0 1 0 3 0 + 15 01 JAN 14:00 410 0 662 0 1 0 3 0 1 0 3 0 + 16 01 JAN 15:00 410 0 689 0 1 0 3 0 1 0 3 0 + 17 01 JAN 16:00 410 0 744 0 1 0 69504 0 1 0 4 0 + 18 01 JAN 17:00 410 0 830 0 1 0 4 0 1 0 4 0 + 19 01 JAN 18:00 410 0 862 0 1 0 4 0 1 0 4 0 + 20 01 JAN 19:00 410 0 853 0 1 0 4 0 1 0 4 0 + 21 01 JAN 20:00 410 0 810 0 1 0 4 0 1 0 4 0 + 22 01 JAN 21:00 410 0 754 0 1 0 4 0 1 0 4 0 + 23 01 JAN 22:00 410 0 665 0 1 0 4 0 1 0 4 0 + 24 01 JAN 23:00 357 0 600 0 1 0 4 0 1 0 4 0 + 25 02 JAN 00:00 236 0 600 0 1 0 4 0 1 0 4 0 + 26 02 JAN 01:00 316 0 450 0 1 0 3 0 1 0 3 0 + 27 02 JAN 02:00 281 0 450 0 1 0 3 0 1 0 3 0 + 28 02 JAN 03:00 262 0 450 0 1 0 3 0 1 0 3 0 + 29 02 JAN 04:00 265 0 450 0 1 0 3 0 1 0 3 0 + 30 02 JAN 05:00 302 0 450 0 1 0 3 0 1 0 3 0 + 31 02 JAN 06:00 391 0 450 0 1 0 3 0 1 0 3 0 + 32 02 JAN 07:00 410 0 542 0 1 0 3 0 1 0 3 0 + 33 02 JAN 08:00 410 0 624 0 1 0 3 0 1 0 3 0 + 34 02 JAN 09:00 410 0 648 0 1 0 3 0 1 0 3 0 + 35 02 JAN 10:00 410 0 632 0 1 0 69504 0 1 0 4 0 + 36 02 JAN 11:00 410 0 621 0 1 0 4 0 1 0 4 0 + 37 02 JAN 12:00 410 0 615 0 1 0 4 0 1 0 4 0 + 38 02 JAN 13:00 410 0 644 0 1 0 4 0 1 0 4 0 + 39 02 JAN 14:00 410 0 662 0 1 0 4 0 1 0 4 0 + 40 02 JAN 15:00 410 0 681 0 1 0 4 0 1 0 4 0 + 41 02 JAN 16:00 410 0 739 0 1 0 4 0 1 0 4 0 + 42 02 JAN 17:00 410 0 819 0 1 0 4 0 1 0 4 0 + 43 02 JAN 18:00 410 0 835 0 1 0 4 0 1 0 4 0 + 44 02 JAN 19:00 410 0 819 0 1 0 3 0 1 0 3 0 + 45 02 JAN 20:00 410 0 777 0 1 0 3 0 1 0 3 0 + 46 02 JAN 21:00 410 0 718 0 1 0 3 0 1 0 3 0 + 47 02 JAN 22:00 410 0 620 0 1 0 3 0 1 0 3 0 + 48 02 JAN 23:00 410 0 504 0 1 0 3 0 1 0 3 0 + 49 03 JAN 00:00 291 0 450 0 1 0 3 0 1 0 3 0 + 50 03 JAN 01:00 201 0 450 0 1 0 3 0 1 0 3 0 + 51 03 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 52 03 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 53 03 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 54 03 JAN 05:00 248 0 450 0 1 0 3 0 1 0 3 0 + 55 03 JAN 06:00 410 0 481 0 1 0 3 0 1 0 3 0 + 56 03 JAN 07:00 410 0 655 0 1 0 3 0 1 0 3 0 + 57 03 JAN 08:00 410 0 756 0 1 0 3 0 1 0 3 0 + 58 03 JAN 09:00 410 0 772 0 1 0 3 0 1 0 3 0 + 59 03 JAN 10:00 410 0 749 0 1 0 3 0 1 0 3 0 + 60 03 JAN 11:00 410 0 724 0 1 0 3 0 1 0 3 0 + 61 03 JAN 12:00 410 0 709 0 1 0 3 0 1 0 3 0 + 62 03 JAN 13:00 410 0 765 0 1 0 69504 0 1 0 4 0 + 63 03 JAN 14:00 410 0 796 0 1 0 4 0 1 0 4 0 + 64 03 JAN 15:00 410 0 816 0 1 0 4 0 1 0 4 0 + 65 03 JAN 16:00 410 0 862 0 1 0 4 0 1 0 4 0 + 66 03 JAN 17:00 410 0 960 0 1 0 4 0 1 0 4 0 + 67 03 JAN 18:00 410 0 981 0 1 0 4 0 1 0 4 0 + 68 03 JAN 19:00 410 0 946 0 1 0 4 0 1 0 4 0 + 69 03 JAN 20:00 410 0 857 0 1 0 4 0 1 0 4 0 + 70 03 JAN 21:00 410 0 743 0 1 0 4 0 1 0 4 0 + 71 03 JAN 22:00 410 0 633 0 1 0 3 0 1 0 3 0 + 72 03 JAN 23:00 410 0 479 0 1 0 3 0 1 0 3 0 + 73 04 JAN 00:00 268 0 450 0 1 0 3 0 1 0 3 0 + 74 04 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 75 04 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 76 04 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 77 04 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 78 04 JAN 05:00 217 0 450 0 1 0 3 0 1 0 3 0 + 79 04 JAN 06:00 400 0 450 0 1 0 3 0 1 0 3 0 + 80 04 JAN 07:00 410 0 619 0 1 0 3 0 1 0 3 0 + 81 04 JAN 08:00 410 0 730 0 1 0 3 0 1 0 3 0 + 82 04 JAN 09:00 410 0 755 0 1 0 3 0 1 0 3 0 + 83 04 JAN 10:00 410 0 734 0 1 0 3 0 1 0 3 0 + 84 04 JAN 11:00 410 0 708 0 1 0 3 0 1 0 3 0 + 85 04 JAN 12:00 410 0 678 0 1 0 3 0 1 0 3 0 + 86 04 JAN 13:00 410 0 709 0 1 0 3 0 1 0 3 0 + 87 04 JAN 14:00 410 0 710 0 1 0 3 0 1 0 3 0 + 88 04 JAN 15:00 410 0 719 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 756 0 1 0 69504 0 1 0 4 0 + 90 04 JAN 17:00 410 0 837 0 1 0 4 0 1 0 4 0 + 91 04 JAN 18:00 410 0 829 0 1 0 4 0 1 0 4 0 + 92 04 JAN 19:00 410 0 775 0 1 0 4 0 1 0 4 0 + 93 04 JAN 20:00 410 0 693 0 1 0 4 0 1 0 4 0 + 94 04 JAN 21:00 404 0 600 0 1 0 4 0 1 0 4 0 + 95 04 JAN 22:00 286 0 600 0 1 0 4 0 1 0 4 0 + 96 04 JAN 23:00 180 0 600 0 1 0 4 0 1 0 4 0 + 97 05 JAN 00:00 0 60 600 0 0 24501 4 0 0 1 4 0 + 98 05 JAN 01:00 0 60 600 0 0 1 4 0 0 1 4 0 + 99 05 JAN 02:00 0 60 600 0 0 1 4 0 0 1 4 0 + 100 05 JAN 03:00 0 60 600 0 0 1 4 0 0 1 4 0 + 101 05 JAN 04:00 0 60 600 0 0 1 4 0 0 1 4 0 + 102 05 JAN 05:00 0 60 604 0 0 1 4 0 0 1 4 0 + 103 05 JAN 06:00 0 60 776 0 0 1 4 0 0 1 4 0 + 104 05 JAN 07:00 0 60 955 0 0 1 4 0 0 1 4 0 + 105 05 JAN 08:00 0 60 1078 0 0 1 4 0 0 1 4 0 + 106 05 JAN 09:00 0 84 1100 0 0 1 4 0 0 1 4 0 + 107 05 JAN 10:00 0 87 1100 0 0 1 4 0 0 1 4 0 + 108 05 JAN 11:00 0 180 999 0 0 49003 4 0 0 3 4 0 + 109 05 JAN 12:00 0 180 989 0 0 3 4 0 0 3 4 0 + 110 05 JAN 13:00 0 180 1033 0 0 3 4 0 0 3 4 0 + 111 05 JAN 14:00 0 180 1038 0 0 3 4 0 0 3 4 0 + 112 05 JAN 15:00 0 180 1038 0 0 3 4 0 0 3 4 0 + 113 05 JAN 16:00 0 180 1087 0 0 3 4 0 0 3 4 0 + 114 05 JAN 17:00 0 241 1100 0 0 3 4 0 0 3 4 0 + 115 05 JAN 18:00 0 231 1100 0 0 3 4 0 0 3 4 0 + 116 05 JAN 19:00 0 195 1100 0 0 3 4 0 0 3 4 0 + 117 05 JAN 20:00 0 180 1055 0 0 3 4 0 0 3 4 0 + 118 05 JAN 21:00 0 180 963 0 0 3 4 0 0 3 4 0 + 119 05 JAN 22:00 0 0 1030 0 0 0 4 0 0 0 4 0 + 120 05 JAN 23:00 0 0 868 0 0 0 4 0 0 0 4 0 + 121 06 JAN 00:00 180 0 600 0 100501 0 4 0 1 0 4 0 + 122 06 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 123 06 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 124 06 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 125 06 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 126 06 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 127 06 JAN 06:00 265 0 450 0 1 0 3 0 1 0 3 0 + 128 06 JAN 07:00 410 0 484 0 1 0 3 0 1 0 3 0 + 129 06 JAN 08:00 410 0 623 0 1 0 3 0 1 0 3 0 + 130 06 JAN 09:00 410 0 682 0 1 0 3 0 1 0 3 0 + 131 06 JAN 10:00 410 0 687 0 1 0 3 0 1 0 3 0 + 132 06 JAN 11:00 410 0 686 0 1 0 3 0 1 0 3 0 + 133 06 JAN 12:00 410 0 679 0 1 0 3 0 1 0 3 0 + 134 06 JAN 13:00 410 0 724 0 1 0 69504 0 1 0 4 0 + 135 06 JAN 14:00 410 0 731 0 1 0 4 0 1 0 4 0 + 136 06 JAN 15:00 410 0 738 0 1 0 4 0 1 0 4 0 + 137 06 JAN 16:00 410 0 805 0 1 0 4 0 1 0 4 0 + 138 06 JAN 17:00 410 0 884 0 1 0 4 0 1 0 4 0 + 139 06 JAN 18:00 410 0 843 0 1 0 4 0 1 0 4 0 + 140 06 JAN 19:00 410 0 776 0 1 0 4 0 1 0 4 0 + 141 06 JAN 20:00 410 0 710 0 1 0 4 0 1 0 4 0 + 142 06 JAN 21:00 410 0 639 0 1 0 4 0 1 0 4 0 + 143 06 JAN 22:00 410 0 533 0 1 0 2 0 1 0 2 0 + 144 06 JAN 23:00 410 0 376 0 1 0 2 0 1 0 2 0 + 145 07 JAN 00:00 332 0 300 0 1 0 2 0 1 0 2 0 + 146 07 JAN 01:00 239 0 300 0 1 0 2 0 1 0 2 0 + 147 07 JAN 02:00 194 0 300 0 1 0 2 0 1 0 2 0 + 148 07 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 149 07 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 150 07 JAN 05:00 216 0 300 0 1 0 2 0 1 0 2 0 + 151 07 JAN 06:00 317 0 300 0 1 0 2 0 1 0 2 0 + 152 07 JAN 07:00 314 0 450 0 1 0 69503 0 1 0 3 0 + 153 07 JAN 08:00 410 0 478 0 1 0 3 0 1 0 3 0 + 154 07 JAN 09:00 410 0 522 0 1 0 3 0 1 0 3 0 + 155 07 JAN 10:00 410 0 505 0 1 0 3 0 1 0 3 0 + 156 07 JAN 11:00 410 0 485 0 1 0 3 0 1 0 3 0 + 157 07 JAN 12:00 410 0 478 0 1 0 3 0 1 0 3 0 + 158 07 JAN 13:00 410 0 511 0 1 0 3 0 1 0 3 0 + 159 07 JAN 14:00 410 0 534 0 1 0 3 0 1 0 3 0 + 160 07 JAN 15:00 410 0 579 0 1 0 3 0 1 0 3 0 + 161 07 JAN 16:00 410 0 676 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 794 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 802 0 1 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 751 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 670 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 586 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 477 0 1 0 2 0 1 0 2 0 + 168 07 JAN 23:00 410 0 331 0 1 0 2 0 1 0 2 0 + 169 08 JAN 00:00 295 0 300 0 1 0 2 0 1 0 2 0 + 170 08 JAN 01:00 186 0 300 0 1 0 2 0 1 0 2 0 + 171 08 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 172 08 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 173 08 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 174 08 JAN 05:00 238 0 300 0 1 0 2 0 1 0 2 0 + 175 08 JAN 06:00 410 0 317 0 1 0 2 0 1 0 2 0 + 176 08 JAN 07:00 410 0 519 0 1 0 2 0 1 0 2 0 + 177 08 JAN 08:00 410 0 656 0 1 0 69503 0 1 0 3 0 + 178 08 JAN 09:00 410 0 709 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 716 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 0 722 0 1 0 3 0 1 0 3 0 + 181 08 JAN 12:00 410 0 711 0 1 0 3 0 1 0 3 0 + 182 08 JAN 13:00 410 0 751 0 1 0 3 0 1 0 3 0 + 183 08 JAN 14:00 410 0 750 0 1 0 3 0 1 0 3 0 + 184 08 JAN 15:00 410 0 739 0 1 0 3 0 1 0 3 0 + 185 08 JAN 16:00 410 0 784 0 1 0 3 0 1 0 3 0 + 186 08 JAN 17:00 410 0 859 0 1 0 69504 0 1 0 4 0 + 187 08 JAN 18:00 410 0 838 0 1 0 4 0 1 0 4 0 + 188 08 JAN 19:00 410 0 784 0 1 0 4 0 1 0 4 0 + 189 08 JAN 20:00 410 0 707 0 1 0 4 0 1 0 4 0 + 190 08 JAN 21:00 410 0 610 0 1 0 4 0 1 0 4 0 + 191 08 JAN 22:00 315 0 600 0 1 0 4 0 1 0 4 0 + 192 08 JAN 23:00 180 0 600 0 1 0 4 0 1 0 4 0 + 193 09 JAN 00:00 180 0 600 0 1 0 4 0 1 0 4 0 + 194 09 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 195 09 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 196 09 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 197 09 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 198 09 JAN 05:00 180 0 450 0 1 0 3 0 1 0 3 0 + 199 09 JAN 06:00 276 0 450 0 1 0 3 0 1 0 3 0 + 200 09 JAN 07:00 410 0 495 0 1 0 3 0 1 0 3 0 + 201 09 JAN 08:00 410 0 615 0 1 0 3 0 1 0 3 0 + 202 09 JAN 09:00 410 0 652 0 1 0 3 0 1 0 3 0 + 203 09 JAN 10:00 410 0 646 0 1 0 3 0 1 0 3 0 + 204 09 JAN 11:00 410 0 647 0 1 0 69504 0 1 0 4 0 + 205 09 JAN 12:00 410 0 641 0 1 0 4 0 1 0 4 0 + 206 09 JAN 13:00 410 0 690 0 1 0 4 0 1 0 4 0 + 207 09 JAN 14:00 410 0 711 0 1 0 4 0 1 0 4 0 + 208 09 JAN 15:00 410 0 725 0 1 0 4 0 1 0 4 0 + 209 09 JAN 16:00 410 0 781 0 1 0 4 0 1 0 4 0 + 210 09 JAN 17:00 410 0 864 0 1 0 4 0 1 0 4 0 + 211 09 JAN 18:00 410 0 875 0 1 0 4 0 1 0 4 0 + 212 09 JAN 19:00 410 0 855 0 1 0 4 0 1 0 4 0 + 213 09 JAN 20:00 410 0 801 0 1 0 3 0 1 0 3 0 + 214 09 JAN 21:00 410 0 711 0 1 0 3 0 1 0 3 0 + 215 09 JAN 22:00 410 0 583 0 1 0 3 0 1 0 3 0 + 216 09 JAN 23:00 387 0 450 0 1 0 3 0 1 0 3 0 + 217 10 JAN 00:00 280 0 450 0 1 0 3 0 1 0 3 0 + 218 10 JAN 01:00 196 0 450 0 1 0 3 0 1 0 3 0 + 219 10 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 220 10 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 221 10 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 222 10 JAN 05:00 248 0 450 0 1 0 3 0 1 0 3 0 + 223 10 JAN 06:00 410 0 457 0 1 0 3 0 1 0 3 0 + 224 10 JAN 07:00 410 0 616 0 1 0 3 0 1 0 3 0 + 225 10 JAN 08:00 410 0 713 0 1 0 3 0 1 0 3 0 + 226 10 JAN 09:00 410 0 737 0 1 0 3 0 1 0 3 0 + 227 10 JAN 10:00 410 0 713 0 1 0 3 0 1 0 3 0 + 228 10 JAN 11:00 410 0 695 0 1 0 3 0 1 0 3 0 + 229 10 JAN 12:00 410 0 674 0 1 0 3 0 1 0 3 0 + 230 10 JAN 13:00 410 0 709 0 1 0 3 0 1 0 3 0 + 231 10 JAN 14:00 410 0 720 0 1 0 69504 0 1 0 4 0 + 232 10 JAN 15:00 410 0 737 0 1 0 4 0 1 0 4 0 + 233 10 JAN 16:00 410 0 796 0 1 0 4 0 1 0 4 0 + 234 10 JAN 17:00 410 0 881 0 1 0 4 0 1 0 4 0 + 235 10 JAN 18:00 410 0 912 0 1 0 4 0 1 0 4 0 + 236 10 JAN 19:00 410 0 908 0 1 0 4 0 1 0 4 0 + 237 10 JAN 20:00 410 0 844 0 1 0 4 0 1 0 4 0 + 238 10 JAN 21:00 410 0 738 0 1 0 4 0 1 0 4 0 + 239 10 JAN 22:00 410 0 613 0 1 0 4 0 1 0 4 0 + 240 10 JAN 23:00 410 0 456 0 1 0 3 0 1 0 3 0 + 241 11 JAN 00:00 291 0 450 0 1 0 3 0 1 0 3 0 + 242 11 JAN 01:00 208 0 450 0 1 0 3 0 1 0 3 0 + 243 11 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 244 11 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 245 11 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 246 11 JAN 05:00 279 0 450 0 1 0 3 0 1 0 3 0 + 247 11 JAN 06:00 410 0 510 0 1 0 3 0 1 0 3 0 + 248 11 JAN 07:00 410 0 674 0 1 0 3 0 1 0 3 0 + 249 11 JAN 08:00 410 0 763 0 1 0 3 0 1 0 3 0 + 250 11 JAN 09:00 410 0 777 0 1 0 3 0 1 0 3 0 + 251 11 JAN 10:00 410 0 752 0 1 0 3 0 1 0 3 0 + 252 11 JAN 11:00 410 0 725 0 1 0 3 0 1 0 3 0 + 253 11 JAN 12:00 410 0 699 0 1 0 3 0 1 0 3 0 + 254 11 JAN 13:00 410 0 738 0 1 0 3 0 1 0 3 0 + 255 11 JAN 14:00 410 0 744 0 1 0 3 0 1 0 3 0 + 256 11 JAN 15:00 410 0 750 0 1 0 3 0 1 0 3 0 + 257 11 JAN 16:00 410 0 811 0 1 0 3 0 1 0 3 0 + 258 11 JAN 17:00 410 0 908 0 1 0 69504 0 1 0 4 0 + 259 11 JAN 18:00 410 0 944 0 1 0 4 0 1 0 4 0 + 260 11 JAN 19:00 410 0 928 0 1 0 4 0 1 0 4 0 + 261 11 JAN 20:00 410 0 853 0 1 0 4 0 1 0 4 0 + 262 11 JAN 21:00 410 0 743 0 1 0 4 0 1 0 4 0 + 263 11 JAN 22:00 410 0 623 0 1 0 4 0 1 0 4 0 + 264 11 JAN 23:00 283 0 600 0 1 0 4 0 1 0 4 0 + 265 12 JAN 00:00 0 0 711 0 0 0 4 0 0 0 4 0 + 266 12 JAN 01:00 0 0 627 0 0 0 4 0 0 0 4 0 + 267 12 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 268 12 JAN 03:00 0 60 600 0 0 24501 4 0 0 1 4 0 + 269 12 JAN 04:00 0 60 600 0 0 1 4 0 0 1 4 0 + 270 12 JAN 05:00 0 60 625 0 0 1 4 0 0 1 4 0 + 271 12 JAN 06:00 0 60 804 0 0 1 4 0 0 1 4 0 + 272 12 JAN 07:00 0 60 971 0 0 1 4 0 0 1 4 0 + 273 12 JAN 08:00 0 60 1066 0 0 1 4 0 0 1 4 0 + 274 12 JAN 09:00 0 60 1076 0 0 1 4 0 0 1 4 0 + 275 12 JAN 10:00 0 60 1048 0 0 1 4 0 0 1 4 0 + 276 12 JAN 11:00 0 60 1024 0 0 1 4 0 0 1 4 0 + 277 12 JAN 12:00 0 60 1008 0 0 1 4 0 0 1 4 0 + 278 12 JAN 13:00 0 60 1058 0 0 1 4 0 0 1 4 0 + 279 12 JAN 14:00 0 180 956 0 0 49003 4 0 0 3 4 0 + 280 12 JAN 15:00 0 180 974 0 0 3 4 0 0 3 4 0 + 281 12 JAN 16:00 0 180 1032 0 0 3 4 0 0 3 4 0 + 282 12 JAN 17:00 0 204 1100 0 0 3 4 0 0 3 4 0 + 283 12 JAN 18:00 0 235 1100 0 0 3 4 0 0 3 4 0 + 284 12 JAN 19:00 0 219 1100 0 0 3 4 0 0 3 4 0 + 285 12 JAN 20:00 0 180 1064 0 0 3 4 0 0 3 4 0 + 286 12 JAN 21:00 0 180 952 0 0 3 4 0 0 3 4 0 + 287 12 JAN 22:00 0 180 828 0 0 3 4 0 0 3 4 0 + 288 12 JAN 23:00 0 180 671 0 0 3 4 0 0 3 4 0 + 289 13 JAN 00:00 180 180 600 0 100501 3 4 0 1 3 4 0 + 290 13 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 + 291 13 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 + 292 13 JAN 03:00 180 0 600 0 1 0 4 0 1 0 4 0 + 293 13 JAN 04:00 180 0 600 0 1 0 4 0 1 0 4 0 + 294 13 JAN 05:00 202 0 450 0 1 0 3 0 1 0 3 0 + 295 13 JAN 06:00 344 0 450 0 1 0 3 0 1 0 3 0 + 296 13 JAN 07:00 410 0 529 0 1 0 3 0 1 0 3 0 + 297 13 JAN 08:00 410 0 627 0 1 0 3 0 1 0 3 0 + 298 13 JAN 09:00 410 0 655 0 1 0 3 0 1 0 3 0 + 299 13 JAN 10:00 410 0 634 0 1 0 3 0 1 0 3 0 + 300 13 JAN 11:00 410 0 613 0 1 0 3 0 1 0 3 0 + 301 13 JAN 12:00 410 0 596 0 1 0 3 0 1 0 3 0 + 302 13 JAN 13:00 410 0 634 0 1 0 3 0 1 0 3 0 + 303 13 JAN 14:00 410 0 649 0 1 0 69504 0 1 0 4 0 + 304 13 JAN 15:00 410 0 675 0 1 0 4 0 1 0 4 0 + 305 13 JAN 16:00 410 0 755 0 1 0 4 0 1 0 4 0 + 306 13 JAN 17:00 410 0 851 0 1 0 4 0 1 0 4 0 + 307 13 JAN 18:00 410 0 857 0 1 0 4 0 1 0 4 0 + 308 13 JAN 19:00 410 0 810 0 1 0 4 0 1 0 4 0 + 309 13 JAN 20:00 410 0 724 0 1 0 4 0 1 0 4 0 + 310 13 JAN 21:00 410 0 625 0 1 0 4 0 1 0 4 0 + 311 13 JAN 22:00 314 0 600 0 1 0 4 0 1 0 4 0 + 312 13 JAN 23:00 410 0 343 0 1 0 2 0 1 0 2 0 + 313 14 JAN 00:00 299 0 300 0 1 0 2 0 1 0 2 0 + 314 14 JAN 01:00 199 0 300 0 1 0 2 0 1 0 2 0 + 315 14 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 316 14 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 317 14 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 318 14 JAN 05:00 183 0 300 0 1 0 2 0 1 0 2 0 + 319 14 JAN 06:00 305 0 300 0 1 0 2 0 1 0 2 0 + 320 14 JAN 07:00 410 0 365 0 1 0 2 0 1 0 2 0 + 321 14 JAN 08:00 410 0 514 0 1 0 69503 0 1 0 3 0 + 322 14 JAN 09:00 410 0 589 0 1 0 3 0 1 0 3 0 + 323 14 JAN 10:00 410 0 590 0 1 0 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 596 0 1 0 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 597 0 1 0 3 0 1 0 3 0 + 326 14 JAN 13:00 410 0 644 0 1 0 3 0 1 0 3 0 + 327 14 JAN 14:00 410 0 655 0 1 0 3 0 1 0 3 0 + 328 14 JAN 15:00 410 0 638 0 1 0 3 0 1 0 3 0 + 329 14 JAN 16:00 410 0 716 0 1 0 3 0 1 0 3 0 + 330 14 JAN 17:00 410 0 821 0 1 0 3 0 1 0 3 0 + 331 14 JAN 18:00 410 0 814 0 1 0 3 0 1 0 3 0 + 332 14 JAN 19:00 410 0 764 0 1 0 3 0 1 0 3 0 + 333 14 JAN 20:00 410 0 680 0 1 0 3 0 1 0 3 0 + 334 14 JAN 21:00 410 0 590 0 1 0 3 0 1 0 3 0 + 335 14 JAN 22:00 410 0 509 0 1 0 3 0 1 0 3 0 + 336 14 JAN 23:00 410 0 356 0 1 0 2 0 1 0 2 0 diff --git a/tests/functional/data_complex_case/fast/1/values-hourly.txt b/tests/functional/data_complex_case/fast/1/values-hourly.txt new file mode 100644 index 00000000..0730bb19 --- /dev/null +++ b/tests/functional/data_complex_case/fast/1/values-hourly.txt @@ -0,0 +1,343 @@ +BA00 area va hourly + VARIABLES BEGIN END + 24 1 336 + +BA00 hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 81628 81628 107.00 707 0 0 0 1105 0 300 0 50.01 503 0 0 0 0 0 0 0 1780 975 975 3 + 2 01 JAN 01:00 74138 74138 107.00 642 0 0 0 1035 0 300 0 50.02 503 0 0 0 0 0 0 0 1780 1045 1045 3 + 3 01 JAN 02:00 70023 70023 96.00 606 0 0 0 995 0 300 0 50.04 503 0 0 0 0 0 0 0 1780 1085 1085 3 + 4 01 JAN 03:00 67719 67719 96.00 586 0 0 0 971 0 300 0 50.05 503 0 0 0 0 0 0 0 1780 1109 1109 3 + 5 01 JAN 04:00 68103 68103 96.00 589 0 0 0 975 0 300 0 50.06 503 0 0 0 0 0 0 0 1780 1105 1105 3 + 6 01 JAN 05:00 71784 71784 107.00 621 0 0 0 1013 0 300 0 50.07 503 0 0 0 0 0 0 0 1780 1067 1067 3 + 7 01 JAN 06:00 81307 81307 107.00 704 0 0 0 1102 0 300 0 50.08 503 0 0 0 0 0 0 0 1780 978 978 3 + 8 01 JAN 07:00 163541 163541 107.00 815 0 0 0 1221 0 300 0 50.09 503 0 0 0 0 0 0 0 1780 859 859 69504 + 9 01 JAN 08:00 103992 103992 107.00 902 0 0 0 1314 0 300 0 50.11 503 0 0 0 0 0 0 0 1780 766 766 4 + 10 01 JAN 09:00 107844 107844 107.00 935 0 0 0 1350 0 300 0 50.12 503 0 0 0 0 0 0 0 1780 730 730 4 + 11 01 JAN 10:00 107202 107202 107.00 930 0 0 0 1344 0 300 0 50.13 503 0 0 0 0 0 0 0 1780 736 736 4 + 12 01 JAN 11:00 106025 106025 107.00 919 0 0 0 1333 0 300 0 50.14 503 0 0 0 0 0 0 0 1780 747 747 4 + 13 01 JAN 12:00 105169 105169 107.00 912 0 0 0 1325 0 300 0 50.15 503 0 0 0 0 0 0 0 1780 755 755 4 + 14 01 JAN 13:00 108058 108058 107.00 937 0 0 0 1352 0 300 0 50.17 503 0 0 0 0 0 0 0 1780 728 728 4 + 15 01 JAN 14:00 110198 110198 107.00 956 0 0 0 1372 0 300 0 50.18 503 0 0 0 0 0 0 0 1780 708 708 4 + 16 01 JAN 15:00 113087 113087 107.00 981 0 0 0 1399 0 300 0 50.19 503 0 0 0 0 0 0 0 1780 681 681 4 + 17 01 JAN 16:00 188473 188473 107.00 1032 0 0 0 1454 0 300 0 50.20 503 0 0 0 0 0 0 0 1780 626 626 69505 + 18 01 JAN 17:00 128175 128175 107.00 1112 0 0 0 1540 0 300 0 50.21 503 0 0 0 0 0 0 0 1780 540 540 5 + 19 01 JAN 18:00 131599 131599 107.00 1142 0 0 0 1572 0 300 0 50.23 503 0 0 0 0 0 0 0 1780 508 508 5 + 20 01 JAN 19:00 130636 130636 107.00 1134 0 0 0 1563 0 300 0 50.24 503 0 0 0 0 0 0 0 1780 517 517 5 + 21 01 JAN 20:00 126035 126035 107.00 1094 0 0 0 1520 0 300 0 50.25 503 0 0 0 0 0 0 0 1780 560 560 5 + 22 01 JAN 21:00 120043 120043 107.00 1041 0 0 0 1464 0 300 0 50.26 503 0 0 0 0 0 0 0 1780 616 616 5 + 23 01 JAN 22:00 110520 110520 107.00 958 0 0 0 1375 0 300 0 50.27 503 0 0 0 0 0 0 0 1780 705 705 5 + 24 01 JAN 23:00 98477 98477 96.00 854 0 0 0 1257 0 300 0 50.28 503 0 0 0 0 0 0 0 1780 823 823 5 + 25 02 JAN 00:00 86861 86861 96.00 754 0 0 0 1136 0 300 0 50.30 503 0 0 0 0 0 0 0 1780 944 944 5 + 26 02 JAN 01:00 78490 78490 96.00 680 0 0 0 1066 0 300 0 50.31 503 0 0 0 0 0 0 0 1780 1014 1014 4 + 27 02 JAN 02:00 75130 75130 96.00 652 0 0 0 1031 0 300 0 50.32 503 0 0 0 0 0 0 0 1780 1049 1049 4 + 28 02 JAN 03:00 73306 73306 96.00 636 0 0 0 1012 0 300 0 50.33 503 0 0 0 0 0 0 0 1780 1068 1068 4 + 29 02 JAN 04:00 73594 73594 96.00 638 0 0 0 1015 0 300 0 50.34 503 0 0 0 0 0 0 0 1780 1065 1065 4 + 30 02 JAN 05:00 77146 77146 96.00 669 0 0 0 1052 0 300 0 50.36 503 0 0 0 0 0 0 0 1780 1028 1028 4 + 31 02 JAN 06:00 85690 85690 96.00 742 0 0 0 1141 0 300 0 50.37 503 0 0 0 0 0 0 0 1780 939 939 4 + 32 02 JAN 07:00 97358 97358 107.00 844 0 0 0 1252 0 300 0 50.38 503 0 0 0 0 0 0 0 1780 828 828 4 + 33 02 JAN 08:00 106132 106132 107.00 920 0 0 0 1334 0 300 0 50.39 503 0 0 0 0 0 0 0 1780 746 746 4 + 34 02 JAN 09:00 108700 108700 107.00 943 0 0 0 1358 0 300 0 50.40 503 0 0 0 0 0 0 0 1780 722 722 4 + 35 02 JAN 10:00 176489 176489 107.00 928 0 0 0 1342 0 300 0 50.41 503 0 0 0 0 0 0 0 1780 738 738 69505 + 36 02 JAN 11:00 105812 105812 107.00 917 0 0 0 1331 0 300 0 50.43 503 0 0 0 0 0 0 0 1780 749 749 5 + 37 02 JAN 12:00 105170 105170 107.00 912 0 0 0 1325 0 300 0 50.44 503 0 0 0 0 0 0 0 1780 755 755 5 + 38 02 JAN 13:00 108273 108273 107.00 939 0 0 0 1354 0 300 0 50.45 503 0 0 0 0 0 0 0 1780 726 726 5 + 39 02 JAN 14:00 110199 110199 107.00 956 0 0 0 1372 0 300 0 50.46 503 0 0 0 0 0 0 0 1780 708 708 5 + 40 02 JAN 15:00 112232 112232 107.00 973 0 0 0 1391 0 300 0 50.47 503 0 0 0 0 0 0 0 1780 689 689 5 + 41 02 JAN 16:00 118438 118438 107.00 1027 0 0 0 1449 0 300 0 50.49 503 0 0 0 0 0 0 0 1780 631 631 5 + 42 02 JAN 17:00 126998 126998 107.00 1102 0 0 0 1529 0 300 0 50.50 503 0 0 0 0 0 0 0 1780 551 551 5 + 43 02 JAN 18:00 128710 128710 107.00 1117 0 0 0 1545 0 300 0 50.51 503 0 0 0 0 0 0 0 1780 535 535 5 + 44 02 JAN 19:00 126997 126997 107.00 1102 0 0 0 1529 0 300 0 50.52 503 0 0 0 0 0 0 0 1780 551 551 4 + 45 02 JAN 20:00 122503 122503 107.00 1063 0 0 0 1487 0 300 0 50.53 503 0 0 0 0 0 0 0 1780 593 593 4 + 46 02 JAN 21:00 116190 116190 107.00 1008 0 0 0 1428 0 300 0 50.55 503 0 0 0 0 0 0 0 1780 652 652 4 + 47 02 JAN 22:00 105704 105704 107.00 916 0 0 0 1330 0 300 0 50.56 503 0 0 0 0 0 0 0 1780 750 750 4 + 48 02 JAN 23:00 93292 93292 107.00 808 0 0 0 1214 0 300 0 50.57 503 0 0 0 0 0 0 0 1780 866 866 4 + 49 03 JAN 00:00 76090 76090 96.00 660 0 0 0 1041 0 300 0 50.58 503 0 0 0 0 0 0 0 1780 1039 1039 4 + 50 03 JAN 01:00 67450 67450 96.00 585 0 0 0 951 0 300 0 50.59 503 0 0 0 0 0 0 0 1780 1129 1129 4 + 51 03 JAN 02:00 65459 65434 -1.00 568 0 0 0 905 0 300 0 50.60 503 0 0 0 0 25 0 0 1780 1150 1175 4 + 52 03 JAN 03:00 65487 65434 -1.00 568 0 0 0 877 0 300 0 50.62 503 0 0 0 0 53 0 0 1780 1150 1203 4 + 53 03 JAN 04:00 65470 65434 -1.00 568 0 0 0 894 0 300 0 50.63 503 0 0 0 0 36 0 0 1780 1150 1186 4 + 54 03 JAN 05:00 71962 71962 96.00 624 0 0 0 998 0 300 0 50.64 503 0 0 0 0 0 0 0 1780 1082 1082 4 + 55 03 JAN 06:00 90831 90831 107.00 787 0 0 0 1191 0 300 0 50.65 503 0 0 0 0 0 0 0 1780 889 889 4 + 56 03 JAN 07:00 109449 109449 107.00 949 0 0 0 1365 0 300 0 50.66 503 0 0 0 0 0 0 0 1780 715 715 4 + 57 03 JAN 08:00 120256 120256 107.00 1043 0 0 0 1466 0 300 0 50.68 503 0 0 0 0 0 0 0 1780 614 614 4 + 58 03 JAN 09:00 121968 121968 107.00 1058 0 0 0 1482 0 300 0 50.69 503 0 0 0 0 0 0 0 1780 598 598 4 + 59 03 JAN 10:00 119507 119507 107.00 1037 0 0 0 1459 0 300 0 50.70 503 0 0 0 0 0 0 0 1780 621 621 4 + 60 03 JAN 11:00 116832 116832 107.00 1013 0 0 0 1434 0 300 0 50.71 503 0 0 0 0 0 0 0 1780 646 646 4 + 61 03 JAN 12:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 50.72 503 0 0 0 0 0 0 0 1780 661 661 4 + 62 03 JAN 13:00 190720 190720 107.00 1052 0 0 0 1475 0 300 0 50.73 503 0 0 0 0 0 0 0 1780 605 605 69505 + 63 03 JAN 14:00 124537 124537 107.00 1081 0 0 0 1506 0 300 0 50.75 503 0 0 0 0 0 0 0 1780 574 574 5 + 64 03 JAN 15:00 126677 126677 107.00 1099 0 0 0 1526 0 300 0 50.76 503 0 0 0 0 0 0 0 1780 554 554 5 + 65 03 JAN 16:00 131599 131599 107.00 1142 0 0 0 1572 0 300 0 50.77 503 0 0 0 0 0 0 0 1780 508 508 5 + 66 03 JAN 17:00 142085 142085 107.00 1233 0 0 0 1670 0 300 0 50.78 503 0 0 0 0 0 0 0 1780 410 410 5 + 67 03 JAN 18:00 144332 144332 107.00 1253 0 0 0 1691 0 300 0 50.79 503 0 0 0 0 0 0 0 1780 389 389 5 + 68 03 JAN 19:00 140587 140587 107.00 1220 0 0 0 1656 0 300 0 50.81 503 0 0 0 0 0 0 0 1780 424 424 5 + 69 03 JAN 20:00 131064 131064 107.00 1137 0 0 0 1567 0 300 0 50.82 503 0 0 0 0 0 0 0 1780 513 513 5 + 70 03 JAN 21:00 118866 118866 107.00 1031 0 0 0 1453 0 300 0 50.83 503 0 0 0 0 0 0 0 1780 627 627 5 + 71 03 JAN 22:00 107095 107095 107.00 929 0 0 0 1343 0 300 0 50.84 503 0 0 0 0 0 0 0 1780 737 737 4 + 72 03 JAN 23:00 90617 90617 107.00 785 0 0 0 1189 0 300 0 50.85 503 0 0 0 0 0 0 0 1780 891 891 4 + 73 04 JAN 00:00 73882 73882 96.00 641 0 0 0 1018 0 300 0 50.87 503 0 0 0 0 0 0 0 1780 1062 1062 4 + 74 04 JAN 01:00 65443 65434 -1.00 568 0 0 0 921 0 300 0 50.88 503 0 0 0 0 9 0 0 1780 1150 1159 4 + 75 04 JAN 02:00 65483 65434 -1.00 568 0 0 0 881 0 300 0 50.89 503 0 0 0 0 49 0 0 1780 1150 1199 4 + 76 04 JAN 03:00 65499 65434 -1.00 568 0 0 0 865 0 300 0 50.90 503 0 0 0 0 65 0 0 1780 1150 1215 4 + 77 04 JAN 04:00 65485 65434 -1.00 568 0 0 0 879 0 300 0 50.91 503 0 0 0 0 51 0 0 1780 1150 1201 4 + 78 04 JAN 05:00 68986 68986 96.00 599 0 0 0 967 0 300 0 50.92 503 0 0 0 0 0 0 0 1780 1113 1113 4 + 79 04 JAN 06:00 86554 86554 96.00 750 0 0 0 1150 0 300 0 50.94 503 0 0 0 0 0 0 0 1780 930 930 4 + 80 04 JAN 07:00 105597 105597 107.00 916 0 0 0 1329 0 300 0 50.95 503 0 0 0 0 0 0 0 1780 751 751 4 + 81 04 JAN 08:00 117474 117474 107.00 1019 0 0 0 1440 0 300 0 50.96 503 0 0 0 0 0 0 0 1780 640 640 4 + 82 04 JAN 09:00 120149 120149 107.00 1042 0 0 0 1465 0 300 0 50.97 503 0 0 0 0 0 0 0 1780 615 615 4 + 83 04 JAN 10:00 117902 117902 107.00 1023 0 0 0 1444 0 300 0 50.98 503 0 0 0 0 0 0 0 1780 636 636 4 + 84 04 JAN 11:00 115120 115120 107.00 999 0 0 0 1418 0 300 0 51.00 503 0 0 0 0 0 0 0 1780 662 662 4 + 85 04 JAN 12:00 111910 111910 107.00 971 0 0 0 1388 0 300 0 51.01 503 0 0 0 0 0 0 0 1780 692 692 4 + 86 04 JAN 13:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 51.02 503 0 0 0 0 0 0 0 1780 661 661 4 + 87 04 JAN 14:00 115334 115334 107.00 1000 0 0 0 1420 0 300 0 51.03 503 0 0 0 0 0 0 0 1780 660 660 4 + 88 04 JAN 15:00 116297 116297 107.00 1009 0 0 0 1429 0 300 0 51.04 503 0 0 0 0 0 0 0 1780 651 651 4 + 89 04 JAN 16:00 189757 189757 107.00 1043 0 0 0 1466 0 300 0 51.05 503 0 0 0 0 0 0 0 1780 614 614 69505 + 90 04 JAN 17:00 128924 128924 107.00 1119 0 0 0 1547 0 300 0 51.07 503 0 0 0 0 0 0 0 1780 533 533 5 + 91 04 JAN 18:00 128068 128068 107.00 1111 0 0 0 1539 0 300 0 51.08 503 0 0 0 0 0 0 0 1780 541 541 5 + 92 04 JAN 19:00 122290 122290 107.00 1061 0 0 0 1485 0 300 0 51.09 503 0 0 0 0 0 0 0 1780 595 595 5 + 93 04 JAN 20:00 113516 113516 107.00 985 0 0 0 1403 0 300 0 51.10 503 0 0 0 0 0 0 0 1780 677 677 5 + 94 04 JAN 21:00 102989 102989 96.00 893 0 0 0 1304 0 300 0 51.11 503 0 0 0 0 0 0 0 1780 776 776 5 + 95 04 JAN 22:00 91661 91661 96.00 795 0 0 0 1186 0 300 0 51.13 503 0 0 0 0 0 0 0 1780 894 894 5 + 96 04 JAN 23:00 81543 81485 -1.00 708 0 0 0 1022 0 300 0 51.14 503 0 0 0 0 58 0 0 1780 1000 1058 5 + 97 05 JAN 00:00 97011 96925 -1.00 631 0 0 0 874 0 300 0 51.15 503 0 0 0 0 86 0 0 1370 710 796 24505 + 98 05 JAN 01:00 72570 72425 -1.00 631 0 0 0 815 0 300 0 51.16 503 0 0 0 0 145 0 0 1370 710 855 5 + 99 05 JAN 02:00 72574 72425 -1.00 631 0 0 0 811 0 300 0 51.17 503 0 0 0 0 149 0 0 1370 710 859 5 + 100 05 JAN 03:00 72561 72425 -1.00 631 0 0 0 824 0 300 0 51.19 503 0 0 0 0 136 0 0 1370 710 846 5 + 101 05 JAN 04:00 72516 72425 -1.00 631 0 0 0 869 0 300 0 51.20 503 0 0 0 0 91 0 0 1370 710 801 5 + 102 05 JAN 05:00 72853 72853 107.00 635 0 0 0 964 0 300 0 51.21 503 0 0 0 0 0 0 0 1370 706 706 5 + 103 05 JAN 06:00 91257 91257 107.00 795 0 0 0 1136 0 300 0 51.22 503 0 0 0 0 0 0 0 1370 534 534 5 + 104 05 JAN 07:00 110410 110410 107.00 962 0 0 0 1315 0 300 0 51.23 503 0 0 0 0 0 0 0 1370 355 355 5 + 105 05 JAN 08:00 123571 123571 107.00 1076 0 0 0 1438 0 300 0 51.24 503 0 0 0 0 0 0 0 1370 232 232 5 + 106 05 JAN 09:00 129213 129213 137.00 1126 0 0 0 1484 0 300 0 51.26 503 0 0 0 0 0 0 0 1370 186 186 5 + 107 05 JAN 10:00 129624 129624 137.00 1129 0 0 0 1487 0 300 0 51.27 503 0 0 0 0 0 0 0 1370 183 183 5 + 108 05 JAN 11:00 180560 180560 107.00 1146 0 0 0 1479 0 300 0 51.28 503 0 0 0 0 0 0 0 1370 191 191 49007 + 109 05 JAN 12:00 130490 130490 107.00 1137 0 0 0 1469 0 300 0 51.29 503 0 0 0 0 0 0 0 1370 201 201 7 + 110 05 JAN 13:00 135198 135198 107.00 1178 0 0 0 1513 0 300 0 51.30 503 0 0 0 0 0 0 0 1370 157 157 7 + 111 05 JAN 14:00 135733 135733 107.00 1183 0 0 0 1518 0 300 0 51.32 503 0 0 0 0 0 0 0 1370 152 152 7 + 112 05 JAN 15:00 135733 135733 107.00 1183 0 0 0 1518 0 300 0 51.33 503 0 0 0 0 0 0 0 1370 152 152 7 + 113 05 JAN 16:00 140976 140976 107.00 1228 0 0 0 1567 0 300 0 51.34 503 0 0 0 0 0 0 0 1370 103 103 7 + 114 05 JAN 17:00 150724 150724 137.00 1313 0 0 0 1641 0 300 0 51.35 503 0 0 0 0 0 0 0 1370 29 29 7 + 115 05 JAN 18:00 149354 149354 137.00 1301 0 0 0 1631 0 300 0 51.36 503 0 0 0 0 0 0 0 1370 39 39 7 + 116 05 JAN 19:00 144422 144422 137.00 1258 0 0 0 1595 0 300 0 51.38 503 0 0 0 0 0 0 0 1370 75 75 7 + 117 05 JAN 20:00 137552 137552 107.00 1199 0 0 0 1535 0 300 0 51.39 503 0 0 0 0 0 0 0 1370 135 135 7 + 118 05 JAN 21:00 127708 127708 107.00 1113 0 0 0 1443 0 300 0 51.40 503 0 0 0 0 0 0 0 1370 227 227 7 + 119 05 JAN 22:00 110214 110214 107.00 960 0 0 0 1330 0 300 0 51.41 503 0 0 0 0 0 0 0 1370 340 340 4 + 120 05 JAN 23:00 92880 92880 107.00 809 0 0 0 1168 0 300 0 51.42 503 0 0 0 0 0 0 0 1370 502 502 4 + 121 06 JAN 00:00 182100 181985 -1.00 708 0 0 0 965 0 300 0 51.43 503 0 0 0 0 115 0 0 1780 1000 1115 100505 + 122 06 JAN 01:00 81693 81485 -1.00 708 0 0 0 872 0 300 0 51.45 503 0 0 0 0 208 0 0 1780 1000 1208 5 + 123 06 JAN 02:00 81756 81485 -1.00 708 0 0 0 809 0 300 0 51.46 503 0 0 0 0 271 0 0 1780 1000 1271 5 + 124 06 JAN 03:00 81792 81485 -1.00 708 0 0 0 773 0 300 0 51.47 503 0 0 0 0 307 0 0 1780 1000 1307 5 + 125 06 JAN 04:00 65577 65434 -1.00 568 0 0 0 787 0 300 0 51.48 503 0 0 0 0 143 0 0 1780 1150 1293 4 + 126 06 JAN 05:00 65501 65434 -1.00 568 0 0 0 863 0 300 0 51.49 503 0 0 0 0 67 0 0 1780 1150 1217 4 + 127 06 JAN 06:00 73594 73594 96.00 638 0 0 0 1015 0 300 0 51.51 503 0 0 0 0 0 0 0 1780 1065 1065 4 + 128 06 JAN 07:00 91152 91152 107.00 790 0 0 0 1194 0 300 0 51.52 503 0 0 0 0 0 0 0 1780 886 886 4 + 129 06 JAN 08:00 106025 106025 107.00 919 0 0 0 1333 0 300 0 51.53 503 0 0 0 0 0 0 0 1780 747 747 4 + 130 06 JAN 09:00 112338 112338 107.00 974 0 0 0 1392 0 300 0 51.54 503 0 0 0 0 0 0 0 1780 688 688 4 + 131 06 JAN 10:00 112873 112873 107.00 979 0 0 0 1397 0 300 0 51.55 503 0 0 0 0 0 0 0 1780 683 683 4 + 132 06 JAN 11:00 112766 112766 107.00 978 0 0 0 1396 0 300 0 51.56 503 0 0 0 0 0 0 0 1780 684 684 4 + 133 06 JAN 12:00 112017 112017 107.00 971 0 0 0 1389 0 300 0 51.58 503 0 0 0 0 0 0 0 1780 691 691 4 + 134 06 JAN 13:00 186333 186333 107.00 1013 0 0 0 1434 0 300 0 51.59 503 0 0 0 0 0 0 0 1780 646 646 69505 + 135 06 JAN 14:00 117582 117582 107.00 1020 0 0 0 1441 0 300 0 51.60 503 0 0 0 0 0 0 0 1780 639 639 5 + 136 06 JAN 15:00 118331 118331 107.00 1026 0 0 0 1448 0 300 0 51.61 503 0 0 0 0 0 0 0 1780 632 632 5 + 137 06 JAN 16:00 125500 125500 107.00 1089 0 0 0 1515 0 300 0 51.62 503 0 0 0 0 0 0 0 1780 565 565 5 + 138 06 JAN 17:00 133953 133953 107.00 1163 0 0 0 1594 0 300 0 51.64 503 0 0 0 0 0 0 0 1780 486 486 5 + 139 06 JAN 18:00 129566 129566 107.00 1124 0 0 0 1553 0 300 0 51.65 503 0 0 0 0 0 0 0 1780 527 527 5 + 140 06 JAN 19:00 122397 122397 107.00 1062 0 0 0 1486 0 300 0 51.66 503 0 0 0 0 0 0 0 1780 594 594 5 + 141 06 JAN 20:00 115335 115335 107.00 1000 0 0 0 1420 0 300 0 51.67 503 0 0 0 0 0 0 0 1780 660 660 5 + 142 06 JAN 21:00 107738 107738 107.00 934 0 0 0 1349 0 300 0 51.68 503 0 0 0 0 0 0 0 1780 731 731 5 + 143 06 JAN 22:00 96394 96394 107.00 835 0 0 0 1243 0 300 0 51.70 503 0 0 0 0 0 0 0 1780 837 837 3 + 144 06 JAN 23:00 79595 79595 107.00 689 0 0 0 1086 0 300 0 51.71 503 0 0 0 0 0 0 0 1780 994 994 3 + 145 07 JAN 00:00 63975 63975 96.00 554 0 0 0 932 0 300 0 51.72 503 0 0 0 0 0 0 0 1780 1148 1148 3 + 146 07 JAN 01:00 55047 55047 96.00 477 0 0 0 839 0 300 0 51.73 503 0 0 0 0 0 0 0 1780 1241 1241 3 + 147 07 JAN 02:00 50727 50727 96.00 440 0 0 0 794 0 300 0 51.74 503 0 0 0 0 0 0 0 1780 1286 1286 3 + 148 07 JAN 03:00 49392 49383 -1.00 428 0 0 0 771 0 300 0 51.75 503 0 0 0 0 9 0 0 1780 1300 1309 3 + 149 07 JAN 04:00 49391 49383 -1.00 428 0 0 0 772 0 300 0 51.77 503 0 0 0 0 8 0 0 1780 1300 1308 3 + 150 07 JAN 05:00 52839 52839 96.00 458 0 0 0 816 0 300 0 51.78 503 0 0 0 0 0 0 0 1780 1264 1264 3 + 151 07 JAN 06:00 62535 62535 96.00 541 0 0 0 917 0 300 0 51.79 503 0 0 0 0 0 0 0 1780 1163 1163 3 + 152 07 JAN 07:00 147798 147798 96.00 679 0 0 0 1064 0 300 0 51.80 503 0 0 0 0 0 0 0 1780 1016 1016 69504 + 153 07 JAN 08:00 90510 90510 107.00 784 0 0 0 1188 0 300 0 51.81 503 0 0 0 0 0 0 0 1780 892 892 4 + 154 07 JAN 09:00 95218 95218 107.00 825 0 0 0 1232 0 300 0 51.83 503 0 0 0 0 0 0 0 1780 848 848 4 + 155 07 JAN 10:00 93399 93399 107.00 809 0 0 0 1215 0 300 0 51.84 503 0 0 0 0 0 0 0 1780 865 865 4 + 156 07 JAN 11:00 91259 91259 107.00 791 0 0 0 1195 0 300 0 51.85 503 0 0 0 0 0 0 0 1780 885 885 4 + 157 07 JAN 12:00 90510 90510 107.00 784 0 0 0 1188 0 300 0 51.86 503 0 0 0 0 0 0 0 1780 892 892 4 + 158 07 JAN 13:00 94041 94041 107.00 815 0 0 0 1221 0 300 0 51.87 503 0 0 0 0 0 0 0 1780 859 859 4 + 159 07 JAN 14:00 96502 96502 107.00 836 0 0 0 1244 0 300 0 51.88 503 0 0 0 0 0 0 0 1780 836 836 4 + 160 07 JAN 15:00 101317 101317 107.00 878 0 0 0 1289 0 300 0 51.90 503 0 0 0 0 0 0 0 1780 791 791 4 + 161 07 JAN 16:00 111696 111696 107.00 969 0 0 0 1386 0 300 0 51.91 503 0 0 0 0 0 0 0 1780 694 694 4 + 162 07 JAN 17:00 124322 124322 107.00 1079 0 0 0 1504 0 300 0 51.92 503 0 0 0 0 0 0 0 1780 576 576 4 + 163 07 JAN 18:00 125178 125178 107.00 1086 0 0 0 1512 0 300 0 51.93 503 0 0 0 0 0 0 0 1780 568 568 4 + 164 07 JAN 19:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 51.94 503 0 0 0 0 0 0 0 1780 619 619 4 + 165 07 JAN 20:00 111054 111054 107.00 963 0 0 0 1380 0 300 0 51.96 503 0 0 0 0 0 0 0 1780 700 700 4 + 166 07 JAN 21:00 102066 102066 107.00 885 0 0 0 1296 0 300 0 51.97 503 0 0 0 0 0 0 0 1780 784 784 4 + 167 07 JAN 22:00 90402 90402 107.00 783 0 0 0 1187 0 300 0 51.98 503 0 0 0 0 0 0 0 1780 893 893 3 + 168 07 JAN 23:00 74780 74780 107.00 647 0 0 0 1041 0 300 0 51.99 503 0 0 0 0 0 0 0 1780 1039 1039 3 + 169 08 JAN 00:00 60423 60423 96.00 523 0 0 0 895 0 300 0 52.00 460 0 0 0 0 0 0 0 1780 1185 1185 3 + 170 08 JAN 01:00 49959 49959 96.00 433 0 0 0 786 0 300 0 52.01 460 0 0 0 0 0 0 0 1780 1294 1294 3 + 171 08 JAN 02:00 49430 49383 -1.00 428 0 0 0 733 0 300 0 52.02 460 0 0 0 0 47 0 0 1780 1300 1347 3 + 172 08 JAN 03:00 49453 49383 -1.00 428 0 0 0 710 0 300 0 52.03 460 0 0 0 0 70 0 0 1780 1300 1370 3 + 173 08 JAN 04:00 49429 49383 -1.00 428 0 0 0 734 0 300 0 52.04 460 0 0 0 0 46 0 0 1780 1300 1346 3 + 174 08 JAN 05:00 54951 54951 96.00 476 0 0 0 838 0 300 0 52.05 460 0 0 0 0 0 0 0 1780 1242 1242 3 + 175 08 JAN 06:00 73282 73282 107.00 634 0 0 0 1027 0 300 0 52.06 460 0 0 0 0 0 0 0 1780 1053 1053 3 + 176 08 JAN 07:00 94896 94896 107.00 822 0 0 0 1229 0 300 0 52.07 460 0 0 0 0 0 0 0 1780 851 851 3 + 177 08 JAN 08:00 179056 179056 107.00 950 0 0 0 1366 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 714 714 69504 + 178 08 JAN 09:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 661 661 4 + 179 08 JAN 10:00 115976 115976 107.00 1006 0 0 0 1426 0 300 0 52.09 460 0 0 0 0 0 0 0 1780 654 654 4 + 180 08 JAN 11:00 116618 116618 107.00 1012 0 0 0 1432 0 300 0 52.10 460 0 0 0 0 0 0 0 1780 648 648 4 + 181 08 JAN 12:00 115441 115441 107.00 1001 0 0 0 1421 0 300 0 52.11 460 0 0 0 0 0 0 0 1780 659 659 4 + 182 08 JAN 13:00 119721 119721 107.00 1039 0 0 0 1461 0 300 0 52.12 460 0 0 0 0 0 0 0 1780 619 619 4 + 183 08 JAN 14:00 119614 119614 107.00 1038 0 0 0 1460 0 300 0 52.13 460 0 0 0 0 0 0 0 1780 620 620 4 + 184 08 JAN 15:00 118437 118437 107.00 1027 0 0 0 1449 0 300 0 52.14 460 0 0 0 0 0 0 0 1780 631 631 4 + 185 08 JAN 16:00 123252 123252 107.00 1069 0 0 0 1494 0 300 0 52.15 460 0 0 0 0 0 0 0 1780 586 586 4 + 186 08 JAN 17:00 200778 200778 107.00 1139 0 0 0 1569 0 300 0 52.16 460 0 0 0 0 0 0 0 1780 511 511 69505 + 187 08 JAN 18:00 129031 129031 107.00 1120 0 0 0 1548 0 300 0 52.17 460 0 0 0 0 0 0 0 1780 532 532 5 + 188 08 JAN 19:00 123253 123253 107.00 1069 0 0 0 1494 0 300 0 52.18 460 0 0 0 0 0 0 0 1780 586 586 5 + 189 08 JAN 20:00 115014 115014 107.00 998 0 0 0 1417 0 300 0 52.19 460 0 0 0 0 0 0 0 1780 663 663 5 + 190 08 JAN 21:00 104635 104635 107.00 907 0 0 0 1320 0 300 0 52.20 460 0 0 0 0 0 0 0 1780 760 760 5 + 191 08 JAN 22:00 94445 94445 96.00 819 0 0 0 1215 0 300 0 52.21 460 0 0 0 0 0 0 0 1780 865 865 5 + 192 08 JAN 23:00 81501 81485 -1.00 708 0 0 0 1064 0 300 0 52.22 460 0 0 0 0 16 0 0 1780 1000 1016 5 + 193 09 JAN 00:00 81617 81485 -1.00 708 0 0 0 948 0 300 0 52.22 460 0 0 0 0 132 0 0 1780 1000 1132 5 + 194 09 JAN 01:00 81716 81485 -1.00 708 0 0 0 849 0 300 0 52.23 460 0 0 0 0 231 0 0 1780 1000 1231 5 + 195 09 JAN 02:00 65579 65434 -1.00 568 0 0 0 785 0 300 0 52.24 460 0 0 0 0 145 0 0 1780 1150 1295 4 + 196 09 JAN 03:00 65614 65434 -1.00 568 0 0 0 750 0 300 0 52.25 460 0 0 0 0 180 0 0 1780 1150 1330 4 + 197 09 JAN 04:00 65603 65434 -1.00 568 0 0 0 761 0 300 0 52.26 460 0 0 0 0 169 0 0 1780 1150 1319 4 + 198 09 JAN 05:00 65516 65434 -1.00 568 0 0 0 848 0 300 0 52.27 460 0 0 0 0 82 0 0 1780 1150 1232 4 + 199 09 JAN 06:00 74650 74650 96.00 647 0 0 0 1026 0 300 0 52.28 460 0 0 0 0 0 0 0 1780 1054 1054 4 + 200 09 JAN 07:00 92329 92329 107.00 800 0 0 0 1205 0 300 0 52.29 460 0 0 0 0 0 0 0 1780 875 875 4 + 201 09 JAN 08:00 105169 105169 107.00 912 0 0 0 1325 0 300 0 52.30 460 0 0 0 0 0 0 0 1780 755 755 4 + 202 09 JAN 09:00 109128 109128 107.00 946 0 0 0 1362 0 300 0 52.31 460 0 0 0 0 0 0 0 1780 718 718 4 + 203 09 JAN 10:00 108486 108486 107.00 941 0 0 0 1356 0 300 0 52.32 460 0 0 0 0 0 0 0 1780 724 724 4 + 204 09 JAN 11:00 178094 178094 107.00 942 0 0 0 1357 0 300 0 52.33 460 0 0 0 0 0 0 0 1780 723 723 69505 + 205 09 JAN 12:00 107952 107952 107.00 936 0 0 0 1351 0 300 0 52.34 460 0 0 0 0 0 0 0 1780 729 729 5 + 206 09 JAN 13:00 113195 113195 107.00 982 0 0 0 1400 0 300 0 52.35 460 0 0 0 0 0 0 0 1780 680 680 5 + 207 09 JAN 14:00 115442 115442 107.00 1001 0 0 0 1421 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 659 659 5 + 208 09 JAN 15:00 116940 116940 107.00 1014 0 0 0 1435 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 645 645 5 + 209 09 JAN 16:00 122932 122932 107.00 1067 0 0 0 1491 0 300 0 52.37 460 0 0 0 0 0 0 0 1780 589 589 5 + 210 09 JAN 17:00 131813 131813 107.00 1144 0 0 0 1574 0 300 0 52.38 460 0 0 0 0 0 0 0 1780 506 506 5 + 211 09 JAN 18:00 132990 132990 107.00 1154 0 0 0 1585 0 300 0 52.39 460 0 0 0 0 0 0 0 1780 495 495 5 + 212 09 JAN 19:00 130850 130850 107.00 1136 0 0 0 1565 0 300 0 52.40 460 0 0 0 0 0 0 0 1780 515 515 5 + 213 09 JAN 20:00 125071 125071 107.00 1085 0 0 0 1511 0 300 0 52.41 460 0 0 0 0 0 0 0 1780 569 569 4 + 214 09 JAN 21:00 115441 115441 107.00 1001 0 0 0 1421 0 300 0 52.42 460 0 0 0 0 0 0 0 1780 659 659 4 + 215 09 JAN 22:00 101745 101745 107.00 882 0 0 0 1293 0 300 0 52.43 460 0 0 0 0 0 0 0 1780 787 787 4 + 216 09 JAN 23:00 85306 85306 96.00 739 0 0 0 1137 0 300 0 52.44 460 0 0 0 0 0 0 0 1780 943 943 4 + 217 10 JAN 00:00 75034 75034 96.00 651 0 0 0 1030 0 300 0 52.45 460 0 0 0 0 0 0 0 1780 1050 1050 4 + 218 10 JAN 01:00 66970 66970 96.00 581 0 0 0 946 0 300 0 52.46 460 0 0 0 0 0 0 0 1780 1134 1134 4 + 219 10 JAN 02:00 65459 65434 -1.00 568 0 0 0 905 0 300 0 52.47 460 0 0 0 0 25 0 0 1780 1150 1175 4 + 220 10 JAN 03:00 65473 65434 -1.00 568 0 0 0 891 0 300 0 52.48 460 0 0 0 0 39 0 0 1780 1150 1189 4 + 221 10 JAN 04:00 65453 65434 -1.00 568 0 0 0 911 0 300 0 52.49 460 0 0 0 0 19 0 0 1780 1150 1169 4 + 222 10 JAN 05:00 71962 71962 96.00 624 0 0 0 998 0 300 0 52.49 460 0 0 0 0 0 0 0 1780 1082 1082 4 + 223 10 JAN 06:00 88263 88263 107.00 765 0 0 0 1167 0 300 0 52.50 460 0 0 0 0 0 0 0 1780 913 913 4 + 224 10 JAN 07:00 105276 105276 107.00 913 0 0 0 1326 0 300 0 52.51 460 0 0 0 0 0 0 0 1780 754 754 4 + 225 10 JAN 08:00 115655 115655 107.00 1003 0 0 0 1423 0 300 0 52.52 460 0 0 0 0 0 0 0 1780 657 657 4 + 226 10 JAN 09:00 118223 118223 107.00 1026 0 0 0 1447 0 300 0 52.53 460 0 0 0 0 0 0 0 1780 633 633 4 + 227 10 JAN 10:00 115655 115655 107.00 1003 0 0 0 1423 0 300 0 52.54 460 0 0 0 0 0 0 0 1780 657 657 4 + 228 10 JAN 11:00 113729 113729 107.00 986 0 0 0 1405 0 300 0 52.55 460 0 0 0 0 0 0 0 1780 675 675 4 + 229 10 JAN 12:00 111482 111482 107.00 967 0 0 0 1384 0 300 0 52.56 460 0 0 0 0 0 0 0 1780 696 696 4 + 230 10 JAN 13:00 115227 115227 107.00 999 0 0 0 1419 0 300 0 52.57 460 0 0 0 0 0 0 0 1780 661 661 4 + 231 10 JAN 14:00 185905 185905 107.00 1010 0 0 0 1430 0 300 0 52.58 460 0 0 0 0 0 0 0 1780 650 650 69505 + 232 10 JAN 15:00 118224 118224 107.00 1026 0 0 0 1447 0 300 0 52.59 460 0 0 0 0 0 0 0 1780 633 633 5 + 233 10 JAN 16:00 124537 124537 107.00 1081 0 0 0 1506 0 300 0 52.60 460 0 0 0 0 0 0 0 1780 574 574 5 + 234 10 JAN 17:00 133632 133632 107.00 1160 0 0 0 1591 0 300 0 52.61 460 0 0 0 0 0 0 0 1780 489 489 5 + 235 10 JAN 18:00 136949 136949 107.00 1189 0 0 0 1622 0 300 0 52.62 460 0 0 0 0 0 0 0 1780 458 458 5 + 236 10 JAN 19:00 136521 136521 107.00 1185 0 0 0 1618 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 462 462 5 + 237 10 JAN 20:00 129673 129673 107.00 1125 0 0 0 1554 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 526 526 5 + 238 10 JAN 21:00 118331 118331 107.00 1026 0 0 0 1448 0 300 0 52.64 460 0 0 0 0 0 0 0 1780 632 632 5 + 239 10 JAN 22:00 104956 104956 107.00 910 0 0 0 1323 0 300 0 52.65 460 0 0 0 0 0 0 0 1780 757 757 5 + 240 10 JAN 23:00 88156 88156 107.00 764 0 0 0 1166 0 300 0 52.66 460 0 0 0 0 0 0 0 1780 914 914 4 + 241 11 JAN 00:00 76090 76090 96.00 660 0 0 0 1041 0 300 0 52.67 460 0 0 0 0 0 0 0 1780 1039 1039 4 + 242 11 JAN 01:00 68122 68122 96.00 591 0 0 0 958 0 300 0 52.68 460 0 0 0 0 0 0 0 1780 1122 1122 4 + 243 11 JAN 02:00 65449 65434 -1.00 568 0 0 0 915 0 300 0 52.69 460 0 0 0 0 15 0 0 1780 1150 1165 4 + 244 11 JAN 03:00 65464 65434 -1.00 568 0 0 0 900 0 300 0 52.70 460 0 0 0 0 30 0 0 1780 1150 1180 4 + 245 11 JAN 04:00 65440 65434 -1.00 568 0 0 0 924 0 300 0 52.71 460 0 0 0 0 6 0 0 1780 1150 1156 4 + 246 11 JAN 05:00 74938 74938 96.00 650 0 0 0 1029 0 300 0 52.72 460 0 0 0 0 0 0 0 1780 1051 1051 4 + 247 11 JAN 06:00 93934 93934 107.00 814 0 0 0 1220 0 300 0 52.73 460 0 0 0 0 0 0 0 1780 860 860 4 + 248 11 JAN 07:00 111482 111482 107.00 967 0 0 0 1384 0 300 0 52.74 460 0 0 0 0 0 0 0 1780 696 696 4 + 249 11 JAN 08:00 121005 121005 107.00 1050 0 0 0 1473 0 300 0 52.75 460 0 0 0 0 0 0 0 1780 607 607 4 + 250 11 JAN 09:00 122503 122503 107.00 1063 0 0 0 1487 0 300 0 52.76 460 0 0 0 0 0 0 0 1780 593 593 4 + 251 11 JAN 10:00 119828 119828 107.00 1040 0 0 0 1462 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 618 618 4 + 252 11 JAN 11:00 116939 116939 107.00 1014 0 0 0 1435 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 645 645 4 + 253 11 JAN 12:00 114157 114157 107.00 990 0 0 0 1409 0 300 0 52.78 460 0 0 0 0 0 0 0 1780 671 671 4 + 254 11 JAN 13:00 118330 118330 107.00 1026 0 0 0 1448 0 300 0 52.79 460 0 0 0 0 0 0 0 1780 632 632 4 + 255 11 JAN 14:00 118972 118972 107.00 1032 0 0 0 1454 0 300 0 52.80 460 0 0 0 0 0 0 0 1780 626 626 4 + 256 11 JAN 15:00 119614 119614 107.00 1038 0 0 0 1460 0 300 0 52.81 460 0 0 0 0 0 0 0 1780 620 620 4 + 257 11 JAN 16:00 126141 126141 107.00 1095 0 0 0 1521 0 300 0 52.82 460 0 0 0 0 0 0 0 1780 559 559 4 + 258 11 JAN 17:00 206021 206021 107.00 1185 0 0 0 1618 0 300 0 52.83 460 0 0 0 0 0 0 0 1780 462 462 69505 + 259 11 JAN 18:00 140373 140373 107.00 1218 0 0 0 1654 0 300 0 52.84 460 0 0 0 0 0 0 0 1780 426 426 5 + 260 11 JAN 19:00 138661 138661 107.00 1204 0 0 0 1638 0 300 0 52.85 460 0 0 0 0 0 0 0 1780 442 442 5 + 261 11 JAN 20:00 130636 130636 107.00 1134 0 0 0 1563 0 300 0 52.86 460 0 0 0 0 0 0 0 1780 517 517 5 + 262 11 JAN 21:00 118866 118866 107.00 1031 0 0 0 1453 0 300 0 52.87 460 0 0 0 0 0 0 0 1780 627 627 5 + 263 11 JAN 22:00 106026 106026 107.00 919 0 0 0 1333 0 300 0 52.88 460 0 0 0 0 0 0 0 1780 747 747 5 + 264 11 JAN 23:00 91373 91373 96.00 793 0 0 0 1183 0 300 0 52.89 460 0 0 0 0 0 0 0 1780 897 897 5 + 265 12 JAN 00:00 76081 76081 107.00 663 0 0 0 1011 0 300 0 52.90 460 0 0 0 0 0 0 0 1370 659 659 4 + 266 12 JAN 01:00 67093 67093 107.00 584 0 0 0 927 0 300 0 52.91 460 0 0 0 0 0 0 0 1370 743 743 4 + 267 12 JAN 02:00 64218 64204 -1.00 559 0 0 0 886 0 300 0 52.91 460 0 0 0 0 14 0 0 1370 770 784 4 + 268 12 JAN 03:00 97015 96925 -1.00 631 0 0 0 870 0 300 0 52.92 460 0 0 0 0 90 0 0 1370 710 800 24505 + 269 12 JAN 04:00 72494 72425 -1.00 631 0 0 0 891 0 300 0 52.93 460 0 0 0 0 69 0 0 1370 710 779 5 + 270 12 JAN 05:00 75100 75100 107.00 654 0 0 0 985 0 300 0 52.94 460 0 0 0 0 0 0 0 1370 685 685 5 + 271 12 JAN 06:00 94253 94253 107.00 821 0 0 0 1164 0 300 0 52.95 460 0 0 0 0 0 0 0 1370 506 506 5 + 272 12 JAN 07:00 112122 112122 107.00 977 0 0 0 1331 0 300 0 52.96 460 0 0 0 0 0 0 0 1370 339 339 5 + 273 12 JAN 08:00 122287 122287 107.00 1065 0 0 0 1426 0 300 0 52.97 460 0 0 0 0 0 0 0 1370 244 244 5 + 274 12 JAN 09:00 123357 123357 107.00 1075 0 0 0 1436 0 300 0 52.98 460 0 0 0 0 0 0 0 1370 234 234 5 + 275 12 JAN 10:00 120361 120361 107.00 1048 0 0 0 1408 0 300 0 52.99 460 0 0 0 0 0 0 0 1370 262 262 5 + 276 12 JAN 11:00 117793 117793 107.00 1026 0 0 0 1384 0 300 0 53.00 460 0 0 0 0 0 0 0 1370 286 286 5 + 277 12 JAN 12:00 116081 116081 107.00 1011 0 0 0 1368 0 300 0 53.01 460 0 0 0 0 0 0 0 1370 302 302 5 + 278 12 JAN 13:00 121431 121431 107.00 1058 0 0 0 1418 0 300 0 53.02 460 0 0 0 0 0 0 0 1370 252 252 5 + 279 12 JAN 14:00 175959 175959 107.00 1106 0 0 0 1436 0 300 0 53.03 460 0 0 0 0 0 0 0 1370 234 234 49007 + 280 12 JAN 15:00 128885 128885 107.00 1123 0 0 0 1454 0 300 0 53.04 460 0 0 0 0 0 0 0 1370 216 216 7 + 281 12 JAN 16:00 135091 135091 107.00 1177 0 0 0 1512 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 158 158 7 + 282 12 JAN 17:00 145655 145655 137.00 1269 0 0 0 1604 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 66 66 7 + 283 12 JAN 18:00 149902 149902 137.00 1306 0 0 0 1635 0 300 0 53.06 460 0 0 0 0 0 0 0 1370 35 35 7 + 284 12 JAN 19:00 147710 147710 137.00 1287 0 0 0 1619 0 300 0 53.07 460 0 0 0 0 0 0 0 1370 51 51 7 + 285 12 JAN 20:00 138515 138515 107.00 1207 0 0 0 1544 0 300 0 53.08 460 0 0 0 0 0 0 0 1370 126 126 7 + 286 12 JAN 21:00 126531 126531 107.00 1103 0 0 0 1432 0 300 0 53.09 460 0 0 0 0 0 0 0 1370 238 238 7 + 287 12 JAN 22:00 113263 113263 107.00 987 0 0 0 1308 0 300 0 53.10 460 0 0 0 0 0 0 0 1370 362 362 7 + 288 12 JAN 23:00 96464 96464 107.00 841 0 0 0 1151 0 300 0 53.11 460 0 0 0 0 0 0 0 1370 519 519 7 + 289 13 JAN 00:00 206878 206648 -1.00 923 0 0 0 1030 0 300 0 53.12 460 0 0 0 0 230 0 0 1780 820 1050 100508 + 290 13 JAN 01:00 81627 81485 -1.00 708 0 0 0 938 0 300 0 53.13 460 0 0 0 0 142 0 0 1780 1000 1142 5 + 291 13 JAN 02:00 81674 81485 -1.00 708 0 0 0 891 0 300 0 53.14 460 0 0 0 0 189 0 0 1780 1000 1189 5 + 292 13 JAN 03:00 81693 81485 -1.00 708 0 0 0 872 0 300 0 53.15 460 0 0 0 0 208 0 0 1780 1000 1208 5 + 293 13 JAN 04:00 81681 81485 -1.00 708 0 0 0 884 0 300 0 53.16 460 0 0 0 0 196 0 0 1780 1000 1196 5 + 294 13 JAN 05:00 67546 67546 96.00 586 0 0 0 952 0 300 0 53.17 460 0 0 0 0 0 0 0 1780 1128 1128 4 + 295 13 JAN 06:00 81178 81178 96.00 704 0 0 0 1094 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 986 986 4 + 296 13 JAN 07:00 95967 95967 107.00 832 0 0 0 1239 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 841 841 4 + 297 13 JAN 08:00 106453 106453 107.00 923 0 0 0 1337 0 300 0 53.19 460 0 0 0 0 0 0 0 1780 743 743 4 + 298 13 JAN 09:00 109449 109449 107.00 949 0 0 0 1365 0 300 0 53.20 460 0 0 0 0 0 0 0 1780 715 715 4 + 299 13 JAN 10:00 107202 107202 107.00 930 0 0 0 1344 0 300 0 53.21 460 0 0 0 0 0 0 0 1780 736 736 4 + 300 13 JAN 11:00 104955 104955 107.00 910 0 0 0 1323 0 300 0 53.22 460 0 0 0 0 0 0 0 1780 757 757 4 + 301 13 JAN 12:00 103136 103136 107.00 894 0 0 0 1306 0 300 0 53.23 460 0 0 0 0 0 0 0 1780 774 774 4 + 302 13 JAN 13:00 107202 107202 107.00 930 0 0 0 1344 0 300 0 53.24 460 0 0 0 0 0 0 0 1780 736 736 4 + 303 13 JAN 14:00 178308 178308 107.00 944 0 0 0 1359 0 300 0 53.25 460 0 0 0 0 0 0 0 1780 721 721 69505 + 304 13 JAN 15:00 111590 111590 107.00 968 0 0 0 1385 0 300 0 53.26 460 0 0 0 0 0 0 0 1780 695 695 5 + 305 13 JAN 16:00 120150 120150 107.00 1042 0 0 0 1465 0 300 0 53.27 460 0 0 0 0 0 0 0 1780 615 615 5 + 306 13 JAN 17:00 130422 130422 107.00 1132 0 0 0 1561 0 300 0 53.28 460 0 0 0 0 0 0 0 1780 519 519 5 + 307 13 JAN 18:00 131064 131064 107.00 1137 0 0 0 1567 0 300 0 53.29 460 0 0 0 0 0 0 0 1780 513 513 5 + 308 13 JAN 19:00 126035 126035 107.00 1094 0 0 0 1520 0 300 0 53.30 460 0 0 0 0 0 0 0 1780 560 560 5 + 309 13 JAN 20:00 116833 116833 107.00 1013 0 0 0 1434 0 300 0 53.31 460 0 0 0 0 0 0 0 1780 646 646 5 + 310 13 JAN 21:00 106240 106240 107.00 921 0 0 0 1335 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 745 745 5 + 311 13 JAN 22:00 94349 94349 96.00 819 0 0 0 1214 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 866 866 5 + 312 13 JAN 23:00 76064 76064 107.00 658 0 0 0 1053 0 300 0 53.33 460 0 0 0 0 0 0 0 1780 1027 1027 3 + 313 14 JAN 00:00 60807 60807 96.00 527 0 0 0 899 0 300 0 53.34 460 0 0 0 0 0 0 0 1780 1181 1181 3 + 314 14 JAN 01:00 51207 51207 96.00 444 0 0 0 799 0 300 0 53.35 460 0 0 0 0 0 0 0 1780 1281 1281 3 + 315 14 JAN 02:00 49420 49383 -1.00 428 0 0 0 743 0 300 0 53.36 460 0 0 0 0 37 0 0 1780 1300 1337 3 + 316 14 JAN 03:00 49447 49383 -1.00 428 0 0 0 716 0 300 0 53.37 460 0 0 0 0 64 0 0 1780 1300 1364 3 + 317 14 JAN 04:00 49437 49383 -1.00 428 0 0 0 726 0 300 0 53.38 460 0 0 0 0 54 0 0 1780 1300 1354 3 + 318 14 JAN 05:00 49671 49671 96.00 431 0 0 0 783 0 300 0 53.39 460 0 0 0 0 0 0 0 1780 1297 1297 3 + 319 14 JAN 06:00 61383 61383 96.00 532 0 0 0 905 0 300 0 53.40 460 0 0 0 0 0 0 0 1780 1175 1175 3 + 320 14 JAN 07:00 78418 78418 107.00 679 0 0 0 1075 0 300 0 53.41 460 0 0 0 0 0 0 0 1780 1005 1005 3 + 321 14 JAN 08:00 163862 163862 107.00 818 0 0 0 1224 0 300 0 53.42 460 0 0 0 0 0 0 0 1780 856 856 69504 + 322 14 JAN 09:00 102387 102387 107.00 888 0 0 0 1299 0 300 0 53.43 460 0 0 0 0 0 0 0 1780 781 781 4 + 323 14 JAN 10:00 102494 102494 107.00 889 0 0 0 1300 0 300 0 53.44 460 0 0 0 0 0 0 0 1780 780 780 4 + 324 14 JAN 11:00 103136 103136 107.00 894 0 0 0 1306 0 300 0 53.45 460 0 0 0 0 0 0 0 1780 774 774 4 + 325 14 JAN 12:00 103243 103243 107.00 895 0 0 0 1307 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 773 773 4 + 326 14 JAN 13:00 108272 108272 107.00 939 0 0 0 1354 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 726 726 4 + 327 14 JAN 14:00 109449 109449 107.00 949 0 0 0 1365 0 300 0 53.47 460 0 0 0 0 0 0 0 1780 715 715 4 + 328 14 JAN 15:00 107630 107630 107.00 933 0 0 0 1348 0 300 0 53.48 460 0 0 0 0 0 0 0 1780 732 732 4 + 329 14 JAN 16:00 115976 115976 107.00 1006 0 0 0 1426 0 300 0 53.49 460 0 0 0 0 0 0 0 1780 654 654 4 + 330 14 JAN 17:00 127211 127211 107.00 1104 0 0 0 1531 0 300 0 53.50 460 0 0 0 0 0 0 0 1780 549 549 4 + 331 14 JAN 18:00 126462 126462 107.00 1097 0 0 0 1524 0 300 0 53.51 460 0 0 0 0 0 0 0 1780 556 556 4 + 332 14 JAN 19:00 121112 121112 107.00 1051 0 0 0 1474 0 300 0 53.52 460 0 0 0 0 0 0 0 1780 606 606 4 + 333 14 JAN 20:00 112124 112124 107.00 972 0 0 0 1390 0 300 0 53.53 460 0 0 0 0 0 0 0 1780 690 690 4 + 334 14 JAN 21:00 102494 102494 107.00 889 0 0 0 1300 0 300 0 53.54 460 0 0 0 0 0 0 0 1780 780 780 4 + 335 14 JAN 22:00 93827 93827 107.00 813 0 0 0 1219 0 300 0 53.55 460 0 0 0 0 0 0 0 1780 861 861 4 + 336 14 JAN 23:00 77455 77455 107.00 670 0 0 0 1066 0 300 0 53.56 460 0 0 0 0 0 0 0 1780 1014 1014 3 diff --git a/tests/functional/data_complex_case/milp/details-hourly.txt b/tests/functional/data_complex_case/milp/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/details-hourly.txt rename to tests/functional/data_complex_case/milp/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/milp/values-hourly.txt b/tests/functional/data_complex_case/milp/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/values-hourly.txt rename to tests/functional/data_complex_case/milp/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/milp/1/details-hourly.txt b/tests/functional/data_complex_case/milp/1/details-hourly.txt new file mode 100644 index 00000000..ee3bdc19 --- /dev/null +++ b/tests/functional/data_complex_case/milp/1/details-hourly.txt @@ -0,0 +1,343 @@ +BA00 area de hourly + VARIABLES BEGIN END + 12 1 336 + +BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cluster_3 Pondage_turb + MWh MWh MWh MWh NP Cost - Euro NP Cost - Euro NP Cost - Euro NP Cost - Euro NODU NODU NODU NODU + index day month hour + 1 01 JAN 00:00 355 0 450 0 1 0 3 0 1 0 3 0 + 2 01 JAN 01:00 285 0 450 0 1 0 3 0 1 0 3 0 + 3 01 JAN 02:00 245 0 450 0 1 0 3 0 1 0 3 0 + 4 01 JAN 03:00 221 0 450 0 1 0 3 0 1 0 3 0 + 5 01 JAN 04:00 225 0 450 0 1 0 3 0 1 0 3 0 + 6 01 JAN 05:00 263 0 450 0 1 0 3 0 1 0 3 0 + 7 01 JAN 06:00 352 0 450 0 1 0 3 0 1 0 3 0 + 8 01 JAN 07:00 410 0 511 0 1 0 3 0 1 0 3 0 + 9 01 JAN 08:00 410 0 604 0 1 0 3 0 1 0 3 0 + 10 01 JAN 09:00 410 0 640 0 1 0 3 0 1 0 3 0 + 11 01 JAN 10:00 410 0 634 0 1 0 3 0 1 0 3 0 + 12 01 JAN 11:00 410 0 623 0 1 0 3 0 1 0 3 0 + 13 01 JAN 12:00 410 0 615 0 1 0 3 0 1 0 3 0 + 14 01 JAN 13:00 410 0 642 0 1 0 3 0 1 0 3 0 + 15 01 JAN 14:00 410 0 662 0 1 0 3 0 1 0 3 0 + 16 01 JAN 15:00 410 0 689 0 1 0 3 0 1 0 3 0 + 17 01 JAN 16:00 410 0 744 0 1 0 3 0 1 0 3 0 + 18 01 JAN 17:00 410 60 770 0 1 24501 3 0 1 1 3 0 + 19 01 JAN 18:00 410 60 802 0 1 1 3 0 1 1 3 0 + 20 01 JAN 19:00 410 60 793 0 1 1 3 0 1 1 3 0 + 21 01 JAN 20:00 410 60 750 0 1 1 3 0 1 1 3 0 + 22 01 JAN 21:00 410 60 694 0 1 1 3 0 1 1 3 0 + 23 01 JAN 22:00 410 60 605 0 1 1 3 0 1 1 3 0 + 24 01 JAN 23:00 410 60 487 0 1 1 3 0 1 1 3 0 + 25 02 JAN 00:00 326 60 450 0 1 1 3 0 1 1 3 0 + 26 02 JAN 01:00 256 60 450 0 1 1 3 0 1 1 3 0 + 27 02 JAN 02:00 221 60 450 0 1 1 3 0 1 1 3 0 + 28 02 JAN 03:00 202 60 450 0 1 1 3 0 1 1 3 0 + 29 02 JAN 04:00 205 60 450 0 1 1 3 0 1 1 3 0 + 30 02 JAN 05:00 242 60 450 0 1 1 3 0 1 1 3 0 + 31 02 JAN 06:00 331 60 450 0 1 1 3 0 1 1 3 0 + 32 02 JAN 07:00 410 60 482 0 1 1 3 0 1 1 3 0 + 33 02 JAN 08:00 410 60 564 0 1 1 3 0 1 1 3 0 + 34 02 JAN 09:00 410 60 588 0 1 1 3 0 1 1 3 0 + 35 02 JAN 10:00 410 60 572 0 1 1 3 0 1 1 3 0 + 36 02 JAN 11:00 410 60 561 0 1 1 3 0 1 1 3 0 + 37 02 JAN 12:00 410 60 555 0 1 1 3 0 1 1 3 0 + 38 02 JAN 13:00 410 60 584 0 1 1 3 0 1 1 3 0 + 39 02 JAN 14:00 410 60 602 0 1 1 3 0 1 1 3 0 + 40 02 JAN 15:00 410 60 621 0 1 1 3 0 1 1 3 0 + 41 02 JAN 16:00 410 60 679 0 1 1 3 0 1 1 3 0 + 42 02 JAN 17:00 410 60 759 0 1 1 3 0 1 1 3 0 + 43 02 JAN 18:00 410 60 775 0 1 1 3 0 1 1 3 0 + 44 02 JAN 19:00 410 0 819 0 1 0 3 0 1 0 3 0 + 45 02 JAN 20:00 410 0 777 0 1 0 3 0 1 0 3 0 + 46 02 JAN 21:00 410 0 718 0 1 0 3 0 1 0 3 0 + 47 02 JAN 22:00 410 0 620 0 1 0 3 0 1 0 3 0 + 48 02 JAN 23:00 410 0 504 0 1 0 3 0 1 0 3 0 + 49 03 JAN 00:00 291 0 450 0 1 0 3 0 1 0 3 0 + 50 03 JAN 01:00 201 0 450 0 1 0 3 0 1 0 3 0 + 51 03 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 52 03 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 53 03 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 54 03 JAN 05:00 248 0 450 0 1 0 3 0 1 0 3 0 + 55 03 JAN 06:00 410 0 481 0 1 0 3 0 1 0 3 0 + 56 03 JAN 07:00 410 0 655 0 1 0 3 0 1 0 3 0 + 57 03 JAN 08:00 410 0 756 0 1 0 3 0 1 0 3 0 + 58 03 JAN 09:00 410 0 772 0 1 0 3 0 1 0 3 0 + 59 03 JAN 10:00 410 0 749 0 1 0 3 0 1 0 3 0 + 60 03 JAN 11:00 410 0 724 0 1 0 3 0 1 0 3 0 + 61 03 JAN 12:00 410 0 709 0 1 0 3 0 1 0 3 0 + 62 03 JAN 13:00 410 0 765 0 1 0 3 0 1 0 3 0 + 63 03 JAN 14:00 410 0 796 0 1 0 3 0 1 0 3 0 + 64 03 JAN 15:00 410 0 816 0 1 0 3 0 1 0 3 0 + 65 03 JAN 16:00 410 0 862 0 1 0 69504 0 1 0 4 0 + 66 03 JAN 17:00 410 0 960 0 1 0 4 0 1 0 4 0 + 67 03 JAN 18:00 410 0 981 0 1 0 4 0 1 0 4 0 + 68 03 JAN 19:00 410 0 946 0 1 0 4 0 1 0 4 0 + 69 03 JAN 20:00 410 0 857 0 1 0 4 0 1 0 4 0 + 70 03 JAN 21:00 410 0 743 0 1 0 3 0 1 0 3 0 + 71 03 JAN 22:00 410 0 633 0 1 0 3 0 1 0 3 0 + 72 03 JAN 23:00 410 0 479 0 1 0 3 0 1 0 3 0 + 73 04 JAN 00:00 268 0 450 0 1 0 3 0 1 0 3 0 + 74 04 JAN 01:00 180 0 450 0 1 0 3 0 1 0 3 0 + 75 04 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 76 04 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 77 04 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 78 04 JAN 05:00 217 0 450 0 1 0 3 0 1 0 3 0 + 79 04 JAN 06:00 400 0 450 0 1 0 3 0 1 0 3 0 + 80 04 JAN 07:00 410 0 619 0 1 0 3 0 1 0 3 0 + 81 04 JAN 08:00 410 0 730 0 1 0 3 0 1 0 3 0 + 82 04 JAN 09:00 410 0 755 0 1 0 3 0 1 0 3 0 + 83 04 JAN 10:00 410 0 734 0 1 0 3 0 1 0 3 0 + 84 04 JAN 11:00 410 0 708 0 1 0 3 0 1 0 3 0 + 85 04 JAN 12:00 410 0 678 0 1 0 3 0 1 0 3 0 + 86 04 JAN 13:00 410 0 709 0 1 0 3 0 1 0 3 0 + 87 04 JAN 14:00 410 0 710 0 1 0 3 0 1 0 3 0 + 88 04 JAN 15:00 410 0 719 0 1 0 3 0 1 0 3 0 + 89 04 JAN 16:00 410 0 756 0 1 0 3 0 1 0 3 0 + 90 04 JAN 17:00 410 60 777 0 1 24501 3 0 1 1 3 0 + 91 04 JAN 18:00 410 60 769 0 1 1 3 0 1 1 3 0 + 92 04 JAN 19:00 410 60 715 0 1 1 3 0 1 1 3 0 + 93 04 JAN 20:00 410 60 633 0 1 1 3 0 1 1 3 0 + 94 04 JAN 21:00 410 60 534 0 1 1 3 0 1 1 3 0 + 95 04 JAN 22:00 376 60 450 0 1 1 3 0 1 1 3 0 + 96 04 JAN 23:00 212 60 450 0 1 1 3 0 1 1 3 0 + 97 05 JAN 00:00 0 60 514 0 0 1 3 0 0 1 3 0 + 98 05 JAN 01:00 0 60 455 0 0 1 3 0 0 1 3 0 + 99 05 JAN 02:00 0 60 451 0 0 1 3 0 0 1 3 0 + 100 05 JAN 03:00 0 60 464 0 0 1 3 0 0 1 3 0 + 101 05 JAN 04:00 0 60 509 0 0 1 3 0 0 1 3 0 + 102 05 JAN 05:00 0 60 604 0 0 1 3 0 0 1 3 0 + 103 05 JAN 06:00 0 60 776 0 0 1 3 0 0 1 3 0 + 104 05 JAN 07:00 0 60 955 0 0 1 69504 0 0 1 4 0 + 105 05 JAN 08:00 0 60 1078 0 0 1 4 0 0 1 4 0 + 106 05 JAN 09:00 0 84 1100 0 0 1 4 0 0 1 4 0 + 107 05 JAN 10:00 0 120 1067 0 0 24502 4 0 0 2 4 0 + 108 05 JAN 11:00 0 120 1059 0 0 2 4 0 0 2 4 0 + 109 05 JAN 12:00 0 120 1049 0 0 2 4 0 0 2 4 0 + 110 05 JAN 13:00 0 120 1093 0 0 2 4 0 0 2 4 0 + 111 05 JAN 14:00 0 120 1098 0 0 2 4 0 0 2 4 0 + 112 05 JAN 15:00 0 120 1098 0 0 2 4 0 0 2 4 0 + 113 05 JAN 16:00 0 167 1100 0 0 2 4 0 0 2 4 0 + 114 05 JAN 17:00 0 241 1100 0 0 24503 4 0 0 3 4 0 + 115 05 JAN 18:00 0 231 1100 0 0 3 4 0 0 3 4 0 + 116 05 JAN 19:00 0 195 1100 0 0 3 4 0 0 3 4 0 + 117 05 JAN 20:00 0 135 1100 0 0 2 4 0 0 2 4 0 + 118 05 JAN 21:00 0 60 1083 0 0 1 4 0 0 1 4 0 + 119 05 JAN 22:00 0 60 970 0 0 1 4 0 0 1 4 0 + 120 05 JAN 23:00 0 60 808 0 0 1 3 0 0 1 3 0 + 121 06 JAN 00:00 0 60 605 0 0 1 3 0 0 1 3 0 + 122 06 JAN 01:00 0 60 512 0 0 1 3 0 0 1 3 0 + 123 06 JAN 02:00 0 60 450 0 0 1 3 0 0 1 3 0 + 124 06 JAN 03:00 0 60 450 0 0 1 3 0 0 1 3 0 + 125 06 JAN 04:00 0 60 450 0 0 1 3 0 0 1 3 0 + 126 06 JAN 05:00 0 60 503 0 0 1 3 0 0 1 3 0 + 127 06 JAN 06:00 205 60 450 0 100501 1 3 0 1 1 3 0 + 128 06 JAN 07:00 384 60 450 0 1 1 3 0 1 1 3 0 + 129 06 JAN 08:00 410 60 563 0 1 1 3 0 1 1 3 0 + 130 06 JAN 09:00 410 60 622 0 1 1 3 0 1 1 3 0 + 131 06 JAN 10:00 410 60 627 0 1 1 3 0 1 1 3 0 + 132 06 JAN 11:00 410 60 626 0 1 1 3 0 1 1 3 0 + 133 06 JAN 12:00 410 60 619 0 1 1 3 0 1 1 3 0 + 134 06 JAN 13:00 410 60 664 0 1 1 3 0 1 1 3 0 + 135 06 JAN 14:00 410 60 671 0 1 1 3 0 1 1 3 0 + 136 06 JAN 15:00 410 60 678 0 1 1 3 0 1 1 3 0 + 137 06 JAN 16:00 410 60 745 0 1 1 3 0 1 1 3 0 + 138 06 JAN 17:00 410 60 824 0 1 1 3 0 1 1 3 0 + 139 06 JAN 18:00 410 60 783 0 1 1 3 0 1 1 3 0 + 140 06 JAN 19:00 410 0 776 0 1 0 3 0 1 0 3 0 + 141 06 JAN 20:00 410 0 710 0 1 0 3 0 1 0 3 0 + 142 06 JAN 21:00 410 0 639 0 1 0 3 0 1 0 3 0 + 143 06 JAN 22:00 410 0 533 0 1 0 2 0 1 0 2 0 + 144 06 JAN 23:00 410 0 376 0 1 0 2 0 1 0 2 0 + 145 07 JAN 00:00 332 0 300 0 1 0 2 0 1 0 2 0 + 146 07 JAN 01:00 239 0 300 0 1 0 2 0 1 0 2 0 + 147 07 JAN 02:00 194 0 300 0 1 0 2 0 1 0 2 0 + 148 07 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 149 07 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 150 07 JAN 05:00 216 0 300 0 1 0 2 0 1 0 2 0 + 151 07 JAN 06:00 317 0 300 0 1 0 2 0 1 0 2 0 + 152 07 JAN 07:00 410 0 354 0 1 0 2 0 1 0 2 0 + 153 07 JAN 08:00 410 0 478 0 1 0 2 0 1 0 2 0 + 154 07 JAN 09:00 410 0 522 0 1 0 2 0 1 0 2 0 + 155 07 JAN 10:00 410 0 505 0 1 0 2 0 1 0 2 0 + 156 07 JAN 11:00 410 0 485 0 1 0 2 0 1 0 2 0 + 157 07 JAN 12:00 410 0 478 0 1 0 2 0 1 0 2 0 + 158 07 JAN 13:00 410 0 511 0 1 0 2 0 1 0 2 0 + 159 07 JAN 14:00 410 0 534 0 1 0 2 0 1 0 2 0 + 160 07 JAN 15:00 410 0 579 0 1 0 69503 0 1 0 3 0 + 161 07 JAN 16:00 410 0 676 0 1 0 3 0 1 0 3 0 + 162 07 JAN 17:00 410 0 794 0 1 0 3 0 1 0 3 0 + 163 07 JAN 18:00 410 0 802 0 1 0 3 0 1 0 3 0 + 164 07 JAN 19:00 410 0 751 0 1 0 3 0 1 0 3 0 + 165 07 JAN 20:00 410 0 670 0 1 0 3 0 1 0 3 0 + 166 07 JAN 21:00 410 0 586 0 1 0 3 0 1 0 3 0 + 167 07 JAN 22:00 410 0 477 0 1 0 3 0 1 0 3 0 + 168 07 JAN 23:00 291 0 450 0 1 0 3 0 1 0 3 0 + 169 08 JAN 00:00 295 0 300 0 1 0 2 0 1 0 2 0 + 170 08 JAN 01:00 186 0 300 0 1 0 2 0 1 0 2 0 + 171 08 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 172 08 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 173 08 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 174 08 JAN 05:00 238 0 300 0 1 0 2 0 1 0 2 0 + 175 08 JAN 06:00 410 0 317 0 1 0 2 0 1 0 2 0 + 176 08 JAN 07:00 410 0 519 0 1 0 2 0 1 0 2 0 + 177 08 JAN 08:00 410 0 656 0 1 0 69503 0 1 0 3 0 + 178 08 JAN 09:00 410 0 709 0 1 0 3 0 1 0 3 0 + 179 08 JAN 10:00 410 0 716 0 1 0 3 0 1 0 3 0 + 180 08 JAN 11:00 410 60 662 0 1 24501 3 0 1 1 3 0 + 181 08 JAN 12:00 410 60 651 0 1 1 3 0 1 1 3 0 + 182 08 JAN 13:00 410 60 691 0 1 1 3 0 1 1 3 0 + 183 08 JAN 14:00 410 60 690 0 1 1 3 0 1 1 3 0 + 184 08 JAN 15:00 410 60 679 0 1 1 3 0 1 1 3 0 + 185 08 JAN 16:00 410 60 724 0 1 1 3 0 1 1 3 0 + 186 08 JAN 17:00 410 60 799 0 1 1 3 0 1 1 3 0 + 187 08 JAN 18:00 410 60 778 0 1 1 3 0 1 1 3 0 + 188 08 JAN 19:00 410 60 724 0 1 1 3 0 1 1 3 0 + 189 08 JAN 20:00 410 60 647 0 1 1 3 0 1 1 3 0 + 190 08 JAN 21:00 410 60 550 0 1 1 2 0 1 1 2 0 + 191 08 JAN 22:00 410 0 505 0 1 0 2 0 1 0 2 0 + 192 08 JAN 23:00 410 0 354 0 1 0 2 0 1 0 2 0 + 193 09 JAN 00:00 348 0 300 0 1 0 2 0 1 0 2 0 + 194 09 JAN 01:00 249 0 300 0 1 0 2 0 1 0 2 0 + 195 09 JAN 02:00 185 0 300 0 1 0 2 0 1 0 2 0 + 196 09 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 197 09 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 198 09 JAN 05:00 248 0 300 0 1 0 2 0 1 0 2 0 + 199 09 JAN 06:00 410 0 316 0 1 0 2 0 1 0 2 0 + 200 09 JAN 07:00 410 0 495 0 1 0 2 0 1 0 2 0 + 201 09 JAN 08:00 410 0 615 0 1 0 69503 0 1 0 3 0 + 202 09 JAN 09:00 410 60 592 0 1 0 3 0 1 1 3 0 + 203 09 JAN 10:00 410 60 586 0 1 0 3 0 1 1 3 0 + 204 09 JAN 11:00 410 60 587 0 1 0 3 0 1 1 3 0 + 205 09 JAN 12:00 410 60 581 0 1 24501 3 0 1 1 3 0 + 206 09 JAN 13:00 410 60 630 0 1 1 3 0 1 1 3 0 + 207 09 JAN 14:00 410 60 651 0 1 1 3 0 1 1 3 0 + 208 09 JAN 15:00 410 60 665 0 1 1 3 0 1 1 3 0 + 209 09 JAN 16:00 410 60 721 0 1 1 3 0 1 1 3 0 + 210 09 JAN 17:00 410 60 804 0 1 1 3 0 1 1 3 0 + 211 09 JAN 18:00 410 60 815 0 1 1 3 0 1 1 3 0 + 212 09 JAN 19:00 410 60 795 0 1 1 3 0 1 1 3 0 + 213 09 JAN 20:00 410 0 801 0 1 1 3 0 1 0 3 0 + 214 09 JAN 21:00 410 0 711 0 1 1 3 0 1 0 3 0 + 215 09 JAN 22:00 410 0 583 0 1 1 3 0 1 0 3 0 + 216 09 JAN 23:00 387 0 450 0 1 0 3 0 1 0 3 0 + 217 10 JAN 00:00 280 0 450 0 1 0 3 0 1 0 3 0 + 218 10 JAN 01:00 196 0 450 0 1 0 3 0 1 0 3 0 + 219 10 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 220 10 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 221 10 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 222 10 JAN 05:00 248 0 450 0 1 0 3 0 1 0 3 0 + 223 10 JAN 06:00 410 0 457 0 1 0 3 0 1 0 3 0 + 224 10 JAN 07:00 410 0 616 0 1 0 3 0 1 0 3 0 + 225 10 JAN 08:00 410 0 713 0 1 0 3 0 1 0 3 0 + 226 10 JAN 09:00 410 0 737 0 1 0 3 0 1 0 3 0 + 227 10 JAN 10:00 410 0 713 0 1 24501 3 0 1 0 3 0 + 228 10 JAN 11:00 410 0 695 0 1 1 3 0 1 0 3 0 + 229 10 JAN 12:00 410 60 614 0 1 1 3 0 1 1 3 0 + 230 10 JAN 13:00 410 60 649 0 1 1 3 0 1 1 3 0 + 231 10 JAN 14:00 410 60 660 0 1 1 3 0 1 1 3 0 + 232 10 JAN 15:00 410 60 677 0 1 1 3 0 1 1 3 0 + 233 10 JAN 16:00 410 60 736 0 1 1 3 0 1 1 3 0 + 234 10 JAN 17:00 410 60 821 0 1 1 3 0 1 1 3 0 + 235 10 JAN 18:00 410 87 825 0 1 1 3 0 1 1 3 0 + 236 10 JAN 19:00 410 83 825 0 1 1 3 0 1 1 3 0 + 237 10 JAN 20:00 410 60 784 0 1 1 3 0 1 1 3 0 + 238 10 JAN 21:00 410 60 678 0 1 0 3 0 1 1 3 0 + 239 10 JAN 22:00 410 60 553 0 1 0 3 0 1 1 3 0 + 240 10 JAN 23:00 410 0 456 0 1 0 3 0 1 0 3 0 + 241 11 JAN 00:00 291 0 450 0 1 0 3 0 1 0 3 0 + 242 11 JAN 01:00 208 0 450 0 1 0 3 0 1 0 3 0 + 243 11 JAN 02:00 180 0 450 0 1 0 3 0 1 0 3 0 + 244 11 JAN 03:00 180 0 450 0 1 0 3 0 1 0 3 0 + 245 11 JAN 04:00 180 0 450 0 1 0 3 0 1 0 3 0 + 246 11 JAN 05:00 279 0 450 0 1 0 3 0 1 0 3 0 + 247 11 JAN 06:00 410 0 510 0 1 0 3 0 1 0 3 0 + 248 11 JAN 07:00 410 0 674 0 1 0 3 0 1 0 3 0 + 249 11 JAN 08:00 410 0 763 0 1 0 3 0 1 0 3 0 + 250 11 JAN 09:00 410 0 777 0 1 0 3 0 1 0 3 0 + 251 11 JAN 10:00 410 0 752 0 1 0 3 0 1 0 3 0 + 252 11 JAN 11:00 410 0 725 0 1 0 3 0 1 0 3 0 + 253 11 JAN 12:00 410 0 699 0 1 0 3 0 1 0 3 0 + 254 11 JAN 13:00 410 0 738 0 1 0 3 0 1 0 3 0 + 255 11 JAN 14:00 410 0 744 0 1 0 3 0 1 0 3 0 + 256 11 JAN 15:00 410 0 750 0 1 0 3 0 1 0 3 0 + 257 11 JAN 16:00 410 0 811 0 1 0 3 0 1 0 3 0 + 258 11 JAN 17:00 410 0 908 0 1 0 69504 0 1 0 4 0 + 259 11 JAN 18:00 410 0 944 0 1 0 4 0 1 0 4 0 + 260 11 JAN 19:00 410 0 928 0 1 0 4 0 1 0 4 0 + 261 11 JAN 20:00 410 0 853 0 1 0 4 0 1 0 4 0 + 262 11 JAN 21:00 410 0 743 0 1 0 4 0 1 0 4 0 + 263 11 JAN 22:00 410 0 623 0 1 0 4 0 1 0 4 0 + 264 11 JAN 23:00 283 0 600 0 1 0 4 0 1 0 4 0 + 265 12 JAN 00:00 0 0 711 0 0 0 4 0 0 0 4 0 + 266 12 JAN 01:00 0 0 627 0 0 0 4 0 0 0 4 0 + 267 12 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 268 12 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 + 269 12 JAN 04:00 0 0 600 0 0 0 4 0 0 0 4 0 + 270 12 JAN 05:00 0 0 685 0 0 0 4 0 0 0 4 0 + 271 12 JAN 06:00 0 0 864 0 0 0 4 0 0 0 4 0 + 272 12 JAN 07:00 0 0 1031 0 0 0 4 0 0 0 4 0 + 273 12 JAN 08:00 0 60 1066 0 0 24501 4 0 0 1 4 0 + 274 12 JAN 09:00 0 60 1076 0 0 1 4 0 0 1 4 0 + 275 12 JAN 10:00 0 120 988 0 0 24502 4 0 0 2 4 0 + 276 12 JAN 11:00 0 180 904 0 0 24503 4 0 0 3 4 0 + 277 12 JAN 12:00 0 180 888 0 0 3 4 0 0 3 4 0 + 278 12 JAN 13:00 0 180 938 0 0 3 4 0 0 3 4 0 + 279 12 JAN 14:00 0 180 956 0 0 3 4 0 0 3 4 0 + 280 12 JAN 15:00 0 180 974 0 0 3 4 0 0 3 4 0 + 281 12 JAN 16:00 0 180 1032 0 0 3 4 0 0 3 4 0 + 282 12 JAN 17:00 0 204 1100 0 0 3 4 0 0 3 4 0 + 283 12 JAN 18:00 0 235 1100 0 0 3 4 0 0 3 4 0 + 284 12 JAN 19:00 0 219 1100 0 0 3 4 0 0 3 4 0 + 285 12 JAN 20:00 0 144 1100 0 0 2 4 0 0 2 4 0 + 286 12 JAN 21:00 0 60 1072 0 0 1 4 0 0 1 4 0 + 287 12 JAN 22:00 0 0 1008 0 0 0 4 0 0 0 4 0 + 288 12 JAN 23:00 0 0 851 0 0 0 4 0 0 0 4 0 + 289 13 JAN 00:00 0 0 730 0 0 0 4 0 0 0 4 0 + 290 13 JAN 01:00 0 0 638 0 0 0 4 0 0 0 4 0 + 291 13 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 + 292 13 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 + 293 13 JAN 04:00 0 0 600 0 0 0 4 0 0 0 4 0 + 294 13 JAN 05:00 0 0 652 0 0 0 4 0 0 0 4 0 + 295 13 JAN 06:00 194 0 600 0 100501 0 4 0 1 0 4 0 + 296 13 JAN 07:00 339 0 600 0 1 0 4 0 1 0 4 0 + 297 13 JAN 08:00 410 0 627 0 1 0 4 0 1 0 4 0 + 298 13 JAN 09:00 410 0 655 0 1 0 4 0 1 0 4 0 + 299 13 JAN 10:00 410 0 634 0 1 0 4 0 1 0 4 0 + 300 13 JAN 11:00 410 0 613 0 1 0 4 0 1 0 4 0 + 301 13 JAN 12:00 406 0 600 0 1 0 4 0 1 0 4 0 + 302 13 JAN 13:00 410 0 634 0 1 0 4 0 1 0 4 0 + 303 13 JAN 14:00 410 0 649 0 1 0 4 0 1 0 4 0 + 304 13 JAN 15:00 410 0 675 0 1 0 4 0 1 0 4 0 + 305 13 JAN 16:00 410 0 755 0 1 0 4 0 1 0 4 0 + 306 13 JAN 17:00 410 0 851 0 1 0 4 0 1 0 4 0 + 307 13 JAN 18:00 410 0 857 0 1 0 4 0 1 0 4 0 + 308 13 JAN 19:00 410 0 810 0 1 0 3 0 1 0 3 0 + 309 13 JAN 20:00 410 0 724 0 1 0 3 0 1 0 3 0 + 310 13 JAN 21:00 410 0 625 0 1 0 3 0 1 0 3 0 + 311 13 JAN 22:00 410 0 504 0 1 0 2 0 1 0 2 0 + 312 13 JAN 23:00 410 0 343 0 1 0 2 0 1 0 2 0 + 313 14 JAN 00:00 299 0 300 0 1 0 2 0 1 0 2 0 + 314 14 JAN 01:00 199 0 300 0 1 0 2 0 1 0 2 0 + 315 14 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 + 316 14 JAN 03:00 180 0 300 0 1 0 2 0 1 0 2 0 + 317 14 JAN 04:00 180 0 300 0 1 0 2 0 1 0 2 0 + 318 14 JAN 05:00 183 0 300 0 1 0 2 0 1 0 2 0 + 319 14 JAN 06:00 305 0 300 0 1 0 2 0 1 0 2 0 + 320 14 JAN 07:00 410 0 365 0 1 0 2 0 1 0 2 0 + 321 14 JAN 08:00 410 0 514 0 1 0 2 0 1 0 2 0 + 322 14 JAN 09:00 410 0 589 0 1 0 69503 0 1 0 3 0 + 323 14 JAN 10:00 410 0 590 0 1 0 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 596 0 1 0 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 597 0 1 0 3 0 1 0 3 0 + 326 14 JAN 13:00 410 0 644 0 1 0 3 0 1 0 3 0 + 327 14 JAN 14:00 410 0 655 0 1 0 3 0 1 0 3 0 + 328 14 JAN 15:00 410 0 638 0 1 0 3 0 1 0 3 0 + 329 14 JAN 16:00 410 0 716 0 1 0 3 0 1 0 3 0 + 330 14 JAN 17:00 410 0 821 0 1 0 3 0 1 0 3 0 + 331 14 JAN 18:00 410 0 814 0 1 0 3 0 1 0 3 0 + 332 14 JAN 19:00 410 0 764 0 1 0 3 0 1 0 3 0 + 333 14 JAN 20:00 410 0 680 0 1 0 3 0 1 0 3 0 + 334 14 JAN 21:00 410 0 590 0 1 0 3 0 1 0 3 0 + 335 14 JAN 22:00 410 0 509 0 1 0 2 0 1 0 2 0 + 336 14 JAN 23:00 410 0 356 0 1 0 2 0 1 0 2 0 diff --git a/tests/functional/data_complex_case/milp/1/values-hourly.txt b/tests/functional/data_complex_case/milp/1/values-hourly.txt new file mode 100644 index 00000000..2acabc96 --- /dev/null +++ b/tests/functional/data_complex_case/milp/1/values-hourly.txt @@ -0,0 +1,343 @@ +BA00 area va hourly + VARIABLES BEGIN END + 23 1 336 + +BA00 hourly OV. COST OP. COST CO2 EMIS. BALANCE ROW BAL. MISC. NDG LOAD H. ROR H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST + Euro Euro Tons MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro + index day month hour + 1 01 JAN 00:00 82234 82234 713 0 0 0 1105 0 300 0 50.01 503 0 0 0 0 0 0 0 1780 975 975 4 + 2 01 JAN 01:00 75514 75514 655 0 0 0 1035 0 300 0 50.02 503 0 0 0 0 0 0 0 1780 1045 1045 4 + 3 01 JAN 02:00 71674 71674 622 0 0 0 995 0 300 0 50.04 503 0 0 0 0 0 0 0 1780 1085 1085 4 + 4 01 JAN 03:00 69370 69370 602 0 0 0 971 0 300 0 50.05 503 0 0 0 0 0 0 0 1780 1109 1109 4 + 5 01 JAN 04:00 69754 69754 605 0 0 0 975 0 300 0 50.06 503 0 0 0 0 0 0 0 1780 1105 1105 4 + 6 01 JAN 05:00 73402 73402 637 0 0 0 1013 0 300 0 50.07 503 0 0 0 0 0 0 0 1780 1067 1067 4 + 7 01 JAN 06:00 81946 81946 710 0 0 0 1102 0 300 0 50.08 503 0 0 0 0 0 0 0 1780 978 978 4 + 8 01 JAN 07:00 94041 94041 815 0 0 0 1221 0 300 0 50.09 503 0 0 0 0 0 0 0 1780 859 859 4 + 9 01 JAN 08:00 103992 103992 902 0 0 0 1314 0 300 0 50.11 503 0 0 0 0 0 0 0 1780 766 766 4 + 10 01 JAN 09:00 107844 107844 935 0 0 0 1350 0 300 0 50.12 503 0 0 0 0 0 0 0 1780 730 730 4 + 11 01 JAN 10:00 107202 107202 930 0 0 0 1344 0 300 0 50.13 503 0 0 0 0 0 0 0 1780 736 736 4 + 12 01 JAN 11:00 106025 106025 919 0 0 0 1333 0 300 0 50.14 503 0 0 0 0 0 0 0 1780 747 747 4 + 13 01 JAN 12:00 105169 105169 912 0 0 0 1325 0 300 0 50.15 503 0 0 0 0 0 0 0 1780 755 755 4 + 14 01 JAN 13:00 108058 108058 937 0 0 0 1352 0 300 0 50.17 503 0 0 0 0 0 0 0 1780 728 728 4 + 15 01 JAN 14:00 110198 110198 956 0 0 0 1372 0 300 0 50.18 503 0 0 0 0 0 0 0 1780 708 708 4 + 16 01 JAN 15:00 113087 113087 981 0 0 0 1399 0 300 0 50.19 503 0 0 0 0 0 0 0 1780 681 681 4 + 17 01 JAN 16:00 118972 118972 1032 0 0 0 1454 0 300 0 50.20 503 0 0 0 0 0 0 0 1780 626 626 4 + 18 01 JAN 17:00 154475 154475 1128 0 0 0 1540 0 300 0 50.21 503 0 0 0 0 0 0 0 1780 540 540 24505 + 19 01 JAN 18:00 133399 133399 1158 0 0 0 1572 0 300 0 50.23 503 0 0 0 0 0 0 0 1780 508 508 5 + 20 01 JAN 19:00 132436 132436 1149 0 0 0 1563 0 300 0 50.24 503 0 0 0 0 0 0 0 1780 517 517 5 + 21 01 JAN 20:00 127835 127835 1109 0 0 0 1520 0 300 0 50.25 503 0 0 0 0 0 0 0 1780 560 560 5 + 22 01 JAN 21:00 121843 121843 1057 0 0 0 1464 0 300 0 50.26 503 0 0 0 0 0 0 0 1780 616 616 5 + 23 01 JAN 22:00 112320 112320 974 0 0 0 1375 0 300 0 50.27 503 0 0 0 0 0 0 0 1780 705 705 5 + 24 01 JAN 23:00 99694 99694 864 0 0 0 1257 0 300 0 50.28 503 0 0 0 0 0 0 0 1780 823 823 5 + 25 02 JAN 00:00 87671 87671 760 0 0 0 1136 0 300 0 50.30 503 0 0 0 0 0 0 0 1780 944 944 5 + 26 02 JAN 01:00 80951 80951 703 0 0 0 1066 0 300 0 50.31 503 0 0 0 0 0 0 0 1780 1014 1014 5 + 27 02 JAN 02:00 77591 77591 674 0 0 0 1031 0 300 0 50.32 503 0 0 0 0 0 0 0 1780 1049 1049 5 + 28 02 JAN 03:00 75767 75767 658 0 0 0 1012 0 300 0 50.33 503 0 0 0 0 0 0 0 1780 1068 1068 5 + 29 02 JAN 04:00 76055 76055 660 0 0 0 1015 0 300 0 50.34 503 0 0 0 0 0 0 0 1780 1065 1065 5 + 30 02 JAN 05:00 79607 79607 691 0 0 0 1052 0 300 0 50.36 503 0 0 0 0 0 0 0 1780 1028 1028 5 + 31 02 JAN 06:00 88151 88151 765 0 0 0 1141 0 300 0 50.37 503 0 0 0 0 0 0 0 1780 939 939 5 + 32 02 JAN 07:00 99159 99159 860 0 0 0 1252 0 300 0 50.38 503 0 0 0 0 0 0 0 1780 828 828 5 + 33 02 JAN 08:00 107933 107933 936 0 0 0 1334 0 300 0 50.39 503 0 0 0 0 0 0 0 1780 746 746 5 + 34 02 JAN 09:00 110501 110501 958 0 0 0 1358 0 300 0 50.40 503 0 0 0 0 0 0 0 1780 722 722 5 + 35 02 JAN 10:00 108789 108789 944 0 0 0 1342 0 300 0 50.41 503 0 0 0 0 0 0 0 1780 738 738 5 + 36 02 JAN 11:00 107612 107612 933 0 0 0 1331 0 300 0 50.43 503 0 0 0 0 0 0 0 1780 749 749 5 + 37 02 JAN 12:00 106970 106970 928 0 0 0 1325 0 300 0 50.44 503 0 0 0 0 0 0 0 1780 755 755 5 + 38 02 JAN 13:00 110073 110073 955 0 0 0 1354 0 300 0 50.45 503 0 0 0 0 0 0 0 1780 726 726 5 + 39 02 JAN 14:00 111999 111999 971 0 0 0 1372 0 300 0 50.46 503 0 0 0 0 0 0 0 1780 708 708 5 + 40 02 JAN 15:00 114032 114032 989 0 0 0 1391 0 300 0 50.47 503 0 0 0 0 0 0 0 1780 689 689 5 + 41 02 JAN 16:00 120238 120238 1043 0 0 0 1449 0 300 0 50.49 503 0 0 0 0 0 0 0 1780 631 631 5 + 42 02 JAN 17:00 128798 128798 1118 0 0 0 1529 0 300 0 50.50 503 0 0 0 0 0 0 0 1780 551 551 5 + 43 02 JAN 18:00 130510 130510 1133 0 0 0 1545 0 300 0 50.51 503 0 0 0 0 0 0 0 1780 535 535 5 + 44 02 JAN 19:00 126997 126997 1102 0 0 0 1529 0 300 0 50.52 503 0 0 0 0 0 0 0 1780 551 551 4 + 45 02 JAN 20:00 122503 122503 1063 0 0 0 1487 0 300 0 50.53 503 0 0 0 0 0 0 0 1780 593 593 4 + 46 02 JAN 21:00 116190 116190 1008 0 0 0 1428 0 300 0 50.55 503 0 0 0 0 0 0 0 1780 652 652 4 + 47 02 JAN 22:00 105704 105704 916 0 0 0 1330 0 300 0 50.56 503 0 0 0 0 0 0 0 1780 750 750 4 + 48 02 JAN 23:00 93292 93292 808 0 0 0 1214 0 300 0 50.57 503 0 0 0 0 0 0 0 1780 866 866 4 + 49 03 JAN 00:00 76090 76090 660 0 0 0 1041 0 300 0 50.58 503 0 0 0 0 0 0 0 1780 1039 1039 4 + 50 03 JAN 01:00 67450 67450 585 0 0 0 951 0 300 0 50.59 503 0 0 0 0 0 0 0 1780 1129 1129 4 + 51 03 JAN 02:00 65459 65434 568 0 0 0 905 0 300 0 50.60 503 0 0 0 0 25 0 0 1780 1150 1175 4 + 52 03 JAN 03:00 65487 65434 568 0 0 0 877 0 300 0 50.62 503 0 0 0 0 53 0 0 1780 1150 1203 4 + 53 03 JAN 04:00 65470 65434 568 0 0 0 894 0 300 0 50.63 503 0 0 0 0 36 0 0 1780 1150 1186 4 + 54 03 JAN 05:00 71962 71962 624 0 0 0 998 0 300 0 50.64 503 0 0 0 0 0 0 0 1780 1082 1082 4 + 55 03 JAN 06:00 90831 90831 787 0 0 0 1191 0 300 0 50.65 503 0 0 0 0 0 0 0 1780 889 889 4 + 56 03 JAN 07:00 109449 109449 949 0 0 0 1365 0 300 0 50.66 503 0 0 0 0 0 0 0 1780 715 715 4 + 57 03 JAN 08:00 120256 120256 1043 0 0 0 1466 0 300 0 50.68 503 0 0 0 0 0 0 0 1780 614 614 4 + 58 03 JAN 09:00 121968 121968 1058 0 0 0 1482 0 300 0 50.69 503 0 0 0 0 0 0 0 1780 598 598 4 + 59 03 JAN 10:00 119507 119507 1037 0 0 0 1459 0 300 0 50.70 503 0 0 0 0 0 0 0 1780 621 621 4 + 60 03 JAN 11:00 116832 116832 1013 0 0 0 1434 0 300 0 50.71 503 0 0 0 0 0 0 0 1780 646 646 4 + 61 03 JAN 12:00 115227 115227 999 0 0 0 1419 0 300 0 50.72 503 0 0 0 0 0 0 0 1780 661 661 4 + 62 03 JAN 13:00 121219 121219 1052 0 0 0 1475 0 300 0 50.73 503 0 0 0 0 0 0 0 1780 605 605 4 + 63 03 JAN 14:00 124536 124536 1081 0 0 0 1506 0 300 0 50.75 503 0 0 0 0 0 0 0 1780 574 574 4 + 64 03 JAN 15:00 126676 126676 1099 0 0 0 1526 0 300 0 50.76 503 0 0 0 0 0 0 0 1780 554 554 4 + 65 03 JAN 16:00 201099 201099 1142 0 0 0 1572 0 300 0 50.77 503 0 0 0 0 0 0 0 1780 508 508 69505 + 66 03 JAN 17:00 142085 142085 1233 0 0 0 1670 0 300 0 50.78 503 0 0 0 0 0 0 0 1780 410 410 5 + 67 03 JAN 18:00 144332 144332 1253 0 0 0 1691 0 300 0 50.79 503 0 0 0 0 0 0 0 1780 389 389 5 + 68 03 JAN 19:00 140587 140587 1220 0 0 0 1656 0 300 0 50.81 503 0 0 0 0 0 0 0 1780 424 424 5 + 69 03 JAN 20:00 131064 131064 1137 0 0 0 1567 0 300 0 50.82 503 0 0 0 0 0 0 0 1780 513 513 5 + 70 03 JAN 21:00 118865 118865 1031 0 0 0 1453 0 300 0 50.83 503 0 0 0 0 0 0 0 1780 627 627 4 + 71 03 JAN 22:00 107095 107095 929 0 0 0 1343 0 300 0 50.84 503 0 0 0 0 0 0 0 1780 737 737 4 + 72 03 JAN 23:00 90617 90617 785 0 0 0 1189 0 300 0 50.85 503 0 0 0 0 0 0 0 1780 891 891 4 + 73 04 JAN 00:00 73882 73882 641 0 0 0 1018 0 300 0 50.87 503 0 0 0 0 0 0 0 1780 1062 1062 4 + 74 04 JAN 01:00 65443 65434 568 0 0 0 921 0 300 0 50.88 503 0 0 0 0 9 0 0 1780 1150 1159 4 + 75 04 JAN 02:00 65483 65434 568 0 0 0 881 0 300 0 50.89 503 0 0 0 0 49 0 0 1780 1150 1199 4 + 76 04 JAN 03:00 65499 65434 568 0 0 0 865 0 300 0 50.90 503 0 0 0 0 65 0 0 1780 1150 1215 4 + 77 04 JAN 04:00 65485 65434 568 0 0 0 879 0 300 0 50.91 503 0 0 0 0 51 0 0 1780 1150 1201 4 + 78 04 JAN 05:00 68986 68986 599 0 0 0 967 0 300 0 50.92 503 0 0 0 0 0 0 0 1780 1113 1113 4 + 79 04 JAN 06:00 86554 86554 750 0 0 0 1150 0 300 0 50.94 503 0 0 0 0 0 0 0 1780 930 930 4 + 80 04 JAN 07:00 105597 105597 916 0 0 0 1329 0 300 0 50.95 503 0 0 0 0 0 0 0 1780 751 751 4 + 81 04 JAN 08:00 117474 117474 1019 0 0 0 1440 0 300 0 50.96 503 0 0 0 0 0 0 0 1780 640 640 4 + 82 04 JAN 09:00 120149 120149 1042 0 0 0 1465 0 300 0 50.97 503 0 0 0 0 0 0 0 1780 615 615 4 + 83 04 JAN 10:00 117902 117902 1023 0 0 0 1444 0 300 0 50.98 503 0 0 0 0 0 0 0 1780 636 636 4 + 84 04 JAN 11:00 115120 115120 999 0 0 0 1418 0 300 0 51.00 503 0 0 0 0 0 0 0 1780 662 662 4 + 85 04 JAN 12:00 111910 111910 971 0 0 0 1388 0 300 0 51.01 503 0 0 0 0 0 0 0 1780 692 692 4 + 86 04 JAN 13:00 115227 115227 999 0 0 0 1419 0 300 0 51.02 503 0 0 0 0 0 0 0 1780 661 661 4 + 87 04 JAN 14:00 115334 115334 1000 0 0 0 1420 0 300 0 51.03 503 0 0 0 0 0 0 0 1780 660 660 4 + 88 04 JAN 15:00 116297 116297 1009 0 0 0 1429 0 300 0 51.04 503 0 0 0 0 0 0 0 1780 651 651 4 + 89 04 JAN 16:00 120256 120256 1043 0 0 0 1466 0 300 0 51.05 503 0 0 0 0 0 0 0 1780 614 614 4 + 90 04 JAN 17:00 155224 155224 1135 0 0 0 1547 0 300 0 51.07 503 0 0 0 0 0 0 0 1780 533 533 24505 + 91 04 JAN 18:00 129868 129868 1127 0 0 0 1539 0 300 0 51.08 503 0 0 0 0 0 0 0 1780 541 541 5 + 92 04 JAN 19:00 124090 124090 1077 0 0 0 1485 0 300 0 51.09 503 0 0 0 0 0 0 0 1780 595 595 5 + 93 04 JAN 20:00 115316 115316 1000 0 0 0 1403 0 300 0 51.10 503 0 0 0 0 0 0 0 1780 677 677 5 + 94 04 JAN 21:00 104723 104723 908 0 0 0 1304 0 300 0 51.11 503 0 0 0 0 0 0 0 1780 776 776 5 + 95 04 JAN 22:00 92471 92471 802 0 0 0 1186 0 300 0 51.13 503 0 0 0 0 0 0 0 1780 894 894 5 + 96 04 JAN 23:00 76727 76727 666 0 0 0 1022 0 300 0 51.14 503 0 0 0 0 0 0 0 1780 1058 1058 5 + 97 05 JAN 00:00 63222 63222 551 0 0 0 874 0 300 0 51.15 503 0 0 0 0 0 0 0 1370 796 796 4 + 98 05 JAN 01:00 56909 56909 496 0 0 0 815 0 300 0 51.16 503 0 0 0 0 0 0 0 1370 855 855 4 + 99 05 JAN 02:00 56481 56481 492 0 0 0 811 0 300 0 51.17 503 0 0 0 0 0 0 0 1370 859 859 4 + 100 05 JAN 03:00 57872 57872 504 0 0 0 824 0 300 0 51.19 503 0 0 0 0 0 0 0 1370 846 846 4 + 101 05 JAN 04:00 62687 62687 546 0 0 0 869 0 300 0 51.20 503 0 0 0 0 0 0 0 1370 801 801 4 + 102 05 JAN 05:00 72852 72852 635 0 0 0 964 0 300 0 51.21 503 0 0 0 0 0 0 0 1370 706 706 4 + 103 05 JAN 06:00 91256 91256 795 0 0 0 1136 0 300 0 51.22 503 0 0 0 0 0 0 0 1370 534 534 4 + 104 05 JAN 07:00 179910 179910 962 0 0 0 1315 0 300 0 51.23 503 0 0 0 0 0 0 0 1370 355 355 69505 + 105 05 JAN 08:00 123571 123571 1076 0 0 0 1438 0 300 0 51.24 503 0 0 0 0 0 0 0 1370 232 232 5 + 106 05 JAN 09:00 129213 129213 1126 0 0 0 1484 0 300 0 51.26 503 0 0 0 0 0 0 0 1370 186 186 5 + 107 05 JAN 10:00 155115 155115 1138 0 0 0 1487 0 300 0 51.27 503 0 0 0 0 0 0 0 1370 183 183 24506 + 108 05 JAN 11:00 129759 129759 1131 0 0 0 1479 0 300 0 51.28 503 0 0 0 0 0 0 0 1370 191 191 6 + 109 05 JAN 12:00 128689 128689 1121 0 0 0 1469 0 300 0 51.29 503 0 0 0 0 0 0 0 1370 201 201 6 + 110 05 JAN 13:00 133397 133397 1162 0 0 0 1513 0 300 0 51.30 503 0 0 0 0 0 0 0 1370 157 157 6 + 111 05 JAN 14:00 133932 133932 1167 0 0 0 1518 0 300 0 51.32 503 0 0 0 0 0 0 0 1370 152 152 6 + 112 05 JAN 15:00 133932 133932 1167 0 0 0 1518 0 300 0 51.33 503 0 0 0 0 0 0 0 1370 152 152 6 + 113 05 JAN 16:00 140585 140585 1225 0 0 0 1567 0 300 0 51.34 503 0 0 0 0 0 0 0 1370 103 103 6 + 114 05 JAN 17:00 175224 175224 1313 0 0 0 1641 0 300 0 51.35 503 0 0 0 0 0 0 0 1370 29 29 24507 + 115 05 JAN 18:00 149354 149354 1301 0 0 0 1631 0 300 0 51.36 503 0 0 0 0 0 0 0 1370 39 39 7 + 116 05 JAN 19:00 144422 144422 1258 0 0 0 1595 0 300 0 51.38 503 0 0 0 0 0 0 0 1370 75 75 7 + 117 05 JAN 20:00 136201 136201 1187 0 0 0 1535 0 300 0 51.39 503 0 0 0 0 0 0 0 1370 135 135 6 + 118 05 JAN 21:00 124106 124106 1081 0 0 0 1443 0 300 0 51.40 503 0 0 0 0 0 0 0 1370 227 227 5 + 119 05 JAN 22:00 112015 112015 976 0 0 0 1330 0 300 0 51.41 503 0 0 0 0 0 0 0 1370 340 340 5 + 120 05 JAN 23:00 94680 94680 825 0 0 0 1168 0 300 0 51.42 503 0 0 0 0 0 0 0 1370 502 502 4 + 121 06 JAN 00:00 72959 72959 636 0 0 0 965 0 300 0 51.43 503 0 0 0 0 0 0 0 1780 1115 1115 4 + 122 06 JAN 01:00 63008 63008 549 0 0 0 872 0 300 0 51.45 503 0 0 0 0 0 0 0 1780 1208 1208 4 + 123 06 JAN 02:00 56375 56374 491 0 0 0 809 0 300 0 51.46 503 0 0 0 0 1 0 0 1780 1270 1271 4 + 124 06 JAN 03:00 56411 56374 491 0 0 0 773 0 300 0 51.47 503 0 0 0 0 37 0 0 1780 1270 1307 4 + 125 06 JAN 04:00 56397 56374 491 0 0 0 787 0 300 0 51.48 503 0 0 0 0 23 0 0 1780 1270 1293 4 + 126 06 JAN 05:00 62045 62045 541 0 0 0 863 0 300 0 51.49 503 0 0 0 0 0 0 0 1780 1217 1217 4 + 127 06 JAN 06:00 176555 176555 660 0 0 0 1015 0 300 0 51.51 503 0 0 0 0 0 0 0 1780 1065 1065 100505 + 128 06 JAN 07:00 93239 93239 808 0 0 0 1194 0 300 0 51.52 503 0 0 0 0 0 0 0 1780 886 886 5 + 129 06 JAN 08:00 107826 107826 935 0 0 0 1333 0 300 0 51.53 503 0 0 0 0 0 0 0 1780 747 747 5 + 130 06 JAN 09:00 114139 114139 990 0 0 0 1392 0 300 0 51.54 503 0 0 0 0 0 0 0 1780 688 688 5 + 131 06 JAN 10:00 114674 114674 995 0 0 0 1397 0 300 0 51.55 503 0 0 0 0 0 0 0 1780 683 683 5 + 132 06 JAN 11:00 114567 114567 994 0 0 0 1396 0 300 0 51.56 503 0 0 0 0 0 0 0 1780 684 684 5 + 133 06 JAN 12:00 113818 113818 987 0 0 0 1389 0 300 0 51.58 503 0 0 0 0 0 0 0 1780 691 691 5 + 134 06 JAN 13:00 118633 118633 1029 0 0 0 1434 0 300 0 51.59 503 0 0 0 0 0 0 0 1780 646 646 5 + 135 06 JAN 14:00 119382 119382 1036 0 0 0 1441 0 300 0 51.60 503 0 0 0 0 0 0 0 1780 639 639 5 + 136 06 JAN 15:00 120131 120131 1042 0 0 0 1448 0 300 0 51.61 503 0 0 0 0 0 0 0 1780 632 632 5 + 137 06 JAN 16:00 127300 127300 1105 0 0 0 1515 0 300 0 51.62 503 0 0 0 0 0 0 0 1780 565 565 5 + 138 06 JAN 17:00 135753 135753 1178 0 0 0 1594 0 300 0 51.64 503 0 0 0 0 0 0 0 1780 486 486 5 + 139 06 JAN 18:00 131366 131366 1140 0 0 0 1553 0 300 0 51.65 503 0 0 0 0 0 0 0 1780 527 527 5 + 140 06 JAN 19:00 122396 122396 1062 0 0 0 1486 0 300 0 51.66 503 0 0 0 0 0 0 0 1780 594 594 4 + 141 06 JAN 20:00 115334 115334 1000 0 0 0 1420 0 300 0 51.67 503 0 0 0 0 0 0 0 1780 660 660 4 + 142 06 JAN 21:00 107737 107737 934 0 0 0 1349 0 300 0 51.68 503 0 0 0 0 0 0 0 1780 731 731 4 + 143 06 JAN 22:00 96394 96394 835 0 0 0 1243 0 300 0 51.70 503 0 0 0 0 0 0 0 1780 837 837 3 + 144 06 JAN 23:00 79595 79595 689 0 0 0 1086 0 300 0 51.71 503 0 0 0 0 0 0 0 1780 994 994 3 + 145 07 JAN 00:00 63975 63975 554 0 0 0 932 0 300 0 51.72 503 0 0 0 0 0 0 0 1780 1148 1148 3 + 146 07 JAN 01:00 55047 55047 477 0 0 0 839 0 300 0 51.73 503 0 0 0 0 0 0 0 1780 1241 1241 3 + 147 07 JAN 02:00 50727 50727 440 0 0 0 794 0 300 0 51.74 503 0 0 0 0 0 0 0 1780 1286 1286 3 + 148 07 JAN 03:00 49392 49383 428 0 0 0 771 0 300 0 51.75 503 0 0 0 0 9 0 0 1780 1300 1309 3 + 149 07 JAN 04:00 49391 49383 428 0 0 0 772 0 300 0 51.77 503 0 0 0 0 8 0 0 1780 1300 1308 3 + 150 07 JAN 05:00 52839 52839 458 0 0 0 816 0 300 0 51.78 503 0 0 0 0 0 0 0 1780 1264 1264 3 + 151 07 JAN 06:00 62535 62535 541 0 0 0 917 0 300 0 51.79 503 0 0 0 0 0 0 0 1780 1163 1163 3 + 152 07 JAN 07:00 77241 77241 669 0 0 0 1064 0 300 0 51.80 503 0 0 0 0 0 0 0 1780 1016 1016 3 + 153 07 JAN 08:00 90509 90509 784 0 0 0 1188 0 300 0 51.81 503 0 0 0 0 0 0 0 1780 892 892 3 + 154 07 JAN 09:00 95217 95217 825 0 0 0 1232 0 300 0 51.83 503 0 0 0 0 0 0 0 1780 848 848 3 + 155 07 JAN 10:00 93398 93398 809 0 0 0 1215 0 300 0 51.84 503 0 0 0 0 0 0 0 1780 865 865 3 + 156 07 JAN 11:00 91258 91258 791 0 0 0 1195 0 300 0 51.85 503 0 0 0 0 0 0 0 1780 885 885 3 + 157 07 JAN 12:00 90509 90509 784 0 0 0 1188 0 300 0 51.86 503 0 0 0 0 0 0 0 1780 892 892 3 + 158 07 JAN 13:00 94040 94040 815 0 0 0 1221 0 300 0 51.87 503 0 0 0 0 0 0 0 1780 859 859 3 + 159 07 JAN 14:00 96501 96501 836 0 0 0 1244 0 300 0 51.88 503 0 0 0 0 0 0 0 1780 836 836 3 + 160 07 JAN 15:00 170817 170817 878 0 0 0 1289 0 300 0 51.90 503 0 0 0 0 0 0 0 1780 791 791 69504 + 161 07 JAN 16:00 111696 111696 969 0 0 0 1386 0 300 0 51.91 503 0 0 0 0 0 0 0 1780 694 694 4 + 162 07 JAN 17:00 124322 124322 1079 0 0 0 1504 0 300 0 51.92 503 0 0 0 0 0 0 0 1780 576 576 4 + 163 07 JAN 18:00 125178 125178 1086 0 0 0 1512 0 300 0 51.93 503 0 0 0 0 0 0 0 1780 568 568 4 + 164 07 JAN 19:00 119721 119721 1039 0 0 0 1461 0 300 0 51.94 503 0 0 0 0 0 0 0 1780 619 619 4 + 165 07 JAN 20:00 111054 111054 963 0 0 0 1380 0 300 0 51.96 503 0 0 0 0 0 0 0 1780 700 700 4 + 166 07 JAN 21:00 102066 102066 885 0 0 0 1296 0 300 0 51.97 503 0 0 0 0 0 0 0 1780 784 784 4 + 167 07 JAN 22:00 90403 90403 783 0 0 0 1187 0 300 0 51.98 503 0 0 0 0 0 0 0 1780 893 893 4 + 168 07 JAN 23:00 76090 76090 660 0 0 0 1041 0 300 0 51.99 503 0 0 0 0 0 0 0 1780 1039 1039 4 + 169 08 JAN 00:00 60423 60423 523 0 0 0 895 0 300 0 52.00 460 0 0 0 0 0 0 0 1780 1185 1185 3 + 170 08 JAN 01:00 49959 49959 433 0 0 0 786 0 300 0 52.01 460 0 0 0 0 0 0 0 1780 1294 1294 3 + 171 08 JAN 02:00 49430 49383 428 0 0 0 733 0 300 0 52.02 460 0 0 0 0 47 0 0 1780 1300 1347 3 + 172 08 JAN 03:00 49453 49383 428 0 0 0 710 0 300 0 52.03 460 0 0 0 0 70 0 0 1780 1300 1370 3 + 173 08 JAN 04:00 49429 49383 428 0 0 0 734 0 300 0 52.04 460 0 0 0 0 46 0 0 1780 1300 1346 3 + 174 08 JAN 05:00 54951 54951 476 0 0 0 838 0 300 0 52.05 460 0 0 0 0 0 0 0 1780 1242 1242 3 + 175 08 JAN 06:00 73282 73282 634 0 0 0 1027 0 300 0 52.06 460 0 0 0 0 0 0 0 1780 1053 1053 3 + 176 08 JAN 07:00 94896 94896 822 0 0 0 1229 0 300 0 52.07 460 0 0 0 0 0 0 0 1780 851 851 3 + 177 08 JAN 08:00 179056 179056 950 0 0 0 1366 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 714 714 69504 + 178 08 JAN 09:00 115227 115227 999 0 0 0 1419 0 300 0 52.08 460 0 0 0 0 0 0 0 1780 661 661 4 + 179 08 JAN 10:00 115976 115976 1006 0 0 0 1426 0 300 0 52.09 460 0 0 0 0 0 0 0 1780 654 654 4 + 180 08 JAN 11:00 142919 142919 1027 0 0 0 1432 0 300 0 52.10 460 0 0 0 0 0 0 0 1780 648 648 24505 + 181 08 JAN 12:00 117242 117242 1017 0 0 0 1421 0 300 0 52.11 460 0 0 0 0 0 0 0 1780 659 659 5 + 182 08 JAN 13:00 121522 121522 1054 0 0 0 1461 0 300 0 52.12 460 0 0 0 0 0 0 0 1780 619 619 5 + 183 08 JAN 14:00 121415 121415 1054 0 0 0 1460 0 300 0 52.13 460 0 0 0 0 0 0 0 1780 620 620 5 + 184 08 JAN 15:00 120238 120238 1043 0 0 0 1449 0 300 0 52.14 460 0 0 0 0 0 0 0 1780 631 631 5 + 185 08 JAN 16:00 125053 125053 1085 0 0 0 1494 0 300 0 52.15 460 0 0 0 0 0 0 0 1780 586 586 5 + 186 08 JAN 17:00 133078 133078 1155 0 0 0 1569 0 300 0 52.16 460 0 0 0 0 0 0 0 1780 511 511 5 + 187 08 JAN 18:00 130831 130831 1136 0 0 0 1548 0 300 0 52.17 460 0 0 0 0 0 0 0 1780 532 532 5 + 188 08 JAN 19:00 125053 125053 1085 0 0 0 1494 0 300 0 52.18 460 0 0 0 0 0 0 0 1780 586 586 5 + 189 08 JAN 20:00 116814 116814 1013 0 0 0 1417 0 300 0 52.19 460 0 0 0 0 0 0 0 1780 663 663 5 + 190 08 JAN 21:00 106434 106434 923 0 0 0 1320 0 300 0 52.20 460 0 0 0 0 0 0 0 1780 760 760 4 + 191 08 JAN 22:00 93398 93398 809 0 0 0 1215 0 300 0 52.21 460 0 0 0 0 0 0 0 1780 865 865 3 + 192 08 JAN 23:00 77241 77241 669 0 0 0 1064 0 300 0 52.22 460 0 0 0 0 0 0 0 1780 1016 1016 3 + 193 09 JAN 00:00 65511 65511 567 0 0 0 948 0 300 0 52.22 460 0 0 0 0 0 0 0 1780 1132 1132 3 + 194 09 JAN 01:00 56007 56007 485 0 0 0 849 0 300 0 52.23 460 0 0 0 0 0 0 0 1780 1231 1231 3 + 195 09 JAN 02:00 49863 49863 432 0 0 0 785 0 300 0 52.24 460 0 0 0 0 0 0 0 1780 1295 1295 3 + 196 09 JAN 03:00 49413 49383 428 0 0 0 750 0 300 0 52.25 460 0 0 0 0 30 0 0 1780 1300 1330 3 + 197 09 JAN 04:00 49402 49383 428 0 0 0 761 0 300 0 52.26 460 0 0 0 0 19 0 0 1780 1300 1319 3 + 198 09 JAN 05:00 55911 55911 484 0 0 0 848 0 300 0 52.27 460 0 0 0 0 0 0 0 1780 1232 1232 3 + 199 09 JAN 06:00 73175 73175 633 0 0 0 1026 0 300 0 52.28 460 0 0 0 0 0 0 0 1780 1054 1054 3 + 200 09 JAN 07:00 92328 92328 800 0 0 0 1205 0 300 0 52.29 460 0 0 0 0 0 0 0 1780 875 875 3 + 201 09 JAN 08:00 174669 174669 912 0 0 0 1325 0 300 0 52.30 460 0 0 0 0 0 0 0 1780 755 755 69504 + 202 09 JAN 09:00 109128 109128 946 0 0 0 1362 0 300 0 52.31 460 0 0 0 0 0 0 0 1780 718 718 4 + 203 09 JAN 10:00 108486 108486 941 0 0 0 1356 0 300 0 52.32 460 0 0 0 0 0 0 0 1780 724 724 4 + 204 09 JAN 11:00 108593 108593 942 0 0 0 1357 0 300 0 52.33 460 0 0 0 0 0 0 0 1780 723 723 4 + 205 09 JAN 12:00 134252 134252 952 0 0 0 1351 0 300 0 52.34 460 0 0 0 0 0 0 0 1780 729 729 24505 + 206 09 JAN 13:00 114995 114995 998 0 0 0 1400 0 300 0 52.35 460 0 0 0 0 0 0 0 1780 680 680 5 + 207 09 JAN 14:00 117242 117242 1017 0 0 0 1421 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 659 659 5 + 208 09 JAN 15:00 118740 118740 1030 0 0 0 1435 0 300 0 52.36 460 0 0 0 0 0 0 0 1780 645 645 5 + 209 09 JAN 16:00 124732 124732 1082 0 0 0 1491 0 300 0 52.37 460 0 0 0 0 0 0 0 1780 589 589 5 + 210 09 JAN 17:00 133613 133613 1160 0 0 0 1574 0 300 0 52.38 460 0 0 0 0 0 0 0 1780 506 506 5 + 211 09 JAN 18:00 134790 134790 1170 0 0 0 1585 0 300 0 52.39 460 0 0 0 0 0 0 0 1780 495 495 5 + 212 09 JAN 19:00 132650 132650 1151 0 0 0 1565 0 300 0 52.40 460 0 0 0 0 0 0 0 1780 515 515 5 + 213 09 JAN 20:00 126872 126872 1101 0 0 0 1511 0 300 0 52.41 460 0 0 0 0 0 0 0 1780 569 569 5 + 214 09 JAN 21:00 117242 117242 1017 0 0 0 1421 0 300 0 52.42 460 0 0 0 0 0 0 0 1780 659 659 5 + 215 09 JAN 22:00 103546 103546 898 0 0 0 1293 0 300 0 52.43 460 0 0 0 0 0 0 0 1780 787 787 5 + 216 09 JAN 23:00 85306 85306 739 0 0 0 1137 0 300 0 52.44 460 0 0 0 0 0 0 0 1780 943 943 4 + 217 10 JAN 00:00 75034 75034 651 0 0 0 1030 0 300 0 52.45 460 0 0 0 0 0 0 0 1780 1050 1050 4 + 218 10 JAN 01:00 66970 66970 581 0 0 0 946 0 300 0 52.46 460 0 0 0 0 0 0 0 1780 1134 1134 4 + 219 10 JAN 02:00 65459 65434 568 0 0 0 905 0 300 0 52.47 460 0 0 0 0 25 0 0 1780 1150 1175 4 + 220 10 JAN 03:00 65473 65434 568 0 0 0 891 0 300 0 52.48 460 0 0 0 0 39 0 0 1780 1150 1189 4 + 221 10 JAN 04:00 65453 65434 568 0 0 0 911 0 300 0 52.49 460 0 0 0 0 19 0 0 1780 1150 1169 4 + 222 10 JAN 05:00 71962 71962 624 0 0 0 998 0 300 0 52.49 460 0 0 0 0 0 0 0 1780 1082 1082 4 + 223 10 JAN 06:00 88263 88263 765 0 0 0 1167 0 300 0 52.50 460 0 0 0 0 0 0 0 1780 913 913 4 + 224 10 JAN 07:00 105276 105276 913 0 0 0 1326 0 300 0 52.51 460 0 0 0 0 0 0 0 1780 754 754 4 + 225 10 JAN 08:00 115655 115655 1003 0 0 0 1423 0 300 0 52.52 460 0 0 0 0 0 0 0 1780 657 657 4 + 226 10 JAN 09:00 118223 118223 1026 0 0 0 1447 0 300 0 52.53 460 0 0 0 0 0 0 0 1780 633 633 4 + 227 10 JAN 10:00 141956 141956 1019 0 0 0 1423 0 300 0 52.54 460 0 0 0 0 0 0 0 1780 657 657 24505 + 228 10 JAN 11:00 115530 115530 1002 0 0 0 1405 0 300 0 52.55 460 0 0 0 0 0 0 0 1780 675 675 5 + 229 10 JAN 12:00 113283 113283 983 0 0 0 1384 0 300 0 52.56 460 0 0 0 0 0 0 0 1780 696 696 5 + 230 10 JAN 13:00 117028 117028 1015 0 0 0 1419 0 300 0 52.57 460 0 0 0 0 0 0 0 1780 661 661 5 + 231 10 JAN 14:00 118205 118205 1026 0 0 0 1430 0 300 0 52.58 460 0 0 0 0 0 0 0 1780 650 650 5 + 232 10 JAN 15:00 120024 120024 1041 0 0 0 1447 0 300 0 52.59 460 0 0 0 0 0 0 0 1780 633 633 5 + 233 10 JAN 16:00 126337 126337 1096 0 0 0 1506 0 300 0 52.60 460 0 0 0 0 0 0 0 1780 574 574 5 + 234 10 JAN 17:00 135432 135432 1176 0 0 0 1591 0 300 0 52.61 460 0 0 0 0 0 0 0 1780 489 489 5 + 235 10 JAN 18:00 139559 139559 1212 0 0 0 1622 0 300 0 52.62 460 0 0 0 0 0 0 0 1780 458 458 5 + 236 10 JAN 19:00 139011 139011 1207 0 0 0 1618 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 462 462 5 + 237 10 JAN 20:00 131473 131473 1141 0 0 0 1554 0 300 0 52.63 460 0 0 0 0 0 0 0 1780 526 526 5 + 238 10 JAN 21:00 118330 118330 1026 0 0 0 1448 0 300 0 52.64 460 0 0 0 0 0 0 0 1780 632 632 4 + 239 10 JAN 22:00 104955 104955 910 0 0 0 1323 0 300 0 52.65 460 0 0 0 0 0 0 0 1780 757 757 4 + 240 10 JAN 23:00 88156 88156 764 0 0 0 1166 0 300 0 52.66 460 0 0 0 0 0 0 0 1780 914 914 4 + 241 11 JAN 00:00 76090 76090 660 0 0 0 1041 0 300 0 52.67 460 0 0 0 0 0 0 0 1780 1039 1039 4 + 242 11 JAN 01:00 68122 68122 591 0 0 0 958 0 300 0 52.68 460 0 0 0 0 0 0 0 1780 1122 1122 4 + 243 11 JAN 02:00 65449 65434 568 0 0 0 915 0 300 0 52.69 460 0 0 0 0 15 0 0 1780 1150 1165 4 + 244 11 JAN 03:00 65464 65434 568 0 0 0 900 0 300 0 52.70 460 0 0 0 0 30 0 0 1780 1150 1180 4 + 245 11 JAN 04:00 65440 65434 568 0 0 0 924 0 300 0 52.71 460 0 0 0 0 6 0 0 1780 1150 1156 4 + 246 11 JAN 05:00 74938 74938 650 0 0 0 1029 0 300 0 52.72 460 0 0 0 0 0 0 0 1780 1051 1051 4 + 247 11 JAN 06:00 93934 93934 814 0 0 0 1220 0 300 0 52.73 460 0 0 0 0 0 0 0 1780 860 860 4 + 248 11 JAN 07:00 111482 111482 967 0 0 0 1384 0 300 0 52.74 460 0 0 0 0 0 0 0 1780 696 696 4 + 249 11 JAN 08:00 121005 121005 1050 0 0 0 1473 0 300 0 52.75 460 0 0 0 0 0 0 0 1780 607 607 4 + 250 11 JAN 09:00 122503 122503 1063 0 0 0 1487 0 300 0 52.76 460 0 0 0 0 0 0 0 1780 593 593 4 + 251 11 JAN 10:00 119828 119828 1040 0 0 0 1462 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 618 618 4 + 252 11 JAN 11:00 116939 116939 1014 0 0 0 1435 0 300 0 52.77 460 0 0 0 0 0 0 0 1780 645 645 4 + 253 11 JAN 12:00 114157 114157 990 0 0 0 1409 0 300 0 52.78 460 0 0 0 0 0 0 0 1780 671 671 4 + 254 11 JAN 13:00 118330 118330 1026 0 0 0 1448 0 300 0 52.79 460 0 0 0 0 0 0 0 1780 632 632 4 + 255 11 JAN 14:00 118972 118972 1032 0 0 0 1454 0 300 0 52.80 460 0 0 0 0 0 0 0 1780 626 626 4 + 256 11 JAN 15:00 119614 119614 1038 0 0 0 1460 0 300 0 52.81 460 0 0 0 0 0 0 0 1780 620 620 4 + 257 11 JAN 16:00 126141 126141 1095 0 0 0 1521 0 300 0 52.82 460 0 0 0 0 0 0 0 1780 559 559 4 + 258 11 JAN 17:00 206021 206021 1185 0 0 0 1618 0 300 0 52.83 460 0 0 0 0 0 0 0 1780 462 462 69505 + 259 11 JAN 18:00 140373 140373 1218 0 0 0 1654 0 300 0 52.84 460 0 0 0 0 0 0 0 1780 426 426 5 + 260 11 JAN 19:00 138661 138661 1204 0 0 0 1638 0 300 0 52.85 460 0 0 0 0 0 0 0 1780 442 442 5 + 261 11 JAN 20:00 130636 130636 1134 0 0 0 1563 0 300 0 52.86 460 0 0 0 0 0 0 0 1780 517 517 5 + 262 11 JAN 21:00 118866 118866 1031 0 0 0 1453 0 300 0 52.87 460 0 0 0 0 0 0 0 1780 627 627 5 + 263 11 JAN 22:00 106026 106026 919 0 0 0 1333 0 300 0 52.88 460 0 0 0 0 0 0 0 1780 747 747 5 + 264 11 JAN 23:00 91373 91373 793 0 0 0 1183 0 300 0 52.89 460 0 0 0 0 0 0 0 1780 897 897 5 + 265 12 JAN 00:00 76081 76081 663 0 0 0 1011 0 300 0 52.90 460 0 0 0 0 0 0 0 1370 659 659 4 + 266 12 JAN 01:00 67093 67093 584 0 0 0 927 0 300 0 52.91 460 0 0 0 0 0 0 0 1370 743 743 4 + 267 12 JAN 02:00 64218 64204 559 0 0 0 886 0 300 0 52.91 460 0 0 0 0 14 0 0 1370 770 784 4 + 268 12 JAN 03:00 64234 64204 559 0 0 0 870 0 300 0 52.92 460 0 0 0 0 30 0 0 1370 770 800 4 + 269 12 JAN 04:00 64213 64204 559 0 0 0 891 0 300 0 52.93 460 0 0 0 0 9 0 0 1370 770 779 4 + 270 12 JAN 05:00 73299 73299 638 0 0 0 985 0 300 0 52.94 460 0 0 0 0 0 0 0 1370 685 685 4 + 271 12 JAN 06:00 92452 92452 805 0 0 0 1164 0 300 0 52.95 460 0 0 0 0 0 0 0 1370 506 506 4 + 272 12 JAN 07:00 110321 110321 961 0 0 0 1331 0 300 0 52.96 460 0 0 0 0 0 0 0 1370 339 339 4 + 273 12 JAN 08:00 146787 146787 1065 0 0 0 1426 0 300 0 52.97 460 0 0 0 0 0 0 0 1370 244 244 24505 + 274 12 JAN 09:00 123357 123357 1075 0 0 0 1436 0 300 0 52.98 460 0 0 0 0 0 0 0 1370 234 234 5 + 275 12 JAN 10:00 146662 146662 1064 0 0 0 1408 0 300 0 52.99 460 0 0 0 0 0 0 0 1370 262 262 24506 + 276 12 JAN 11:00 145895 145895 1058 0 0 0 1384 0 300 0 53.00 460 0 0 0 0 0 0 0 1370 286 286 24507 + 277 12 JAN 12:00 119683 119683 1043 0 0 0 1368 0 300 0 53.01 460 0 0 0 0 0 0 0 1370 302 302 7 + 278 12 JAN 13:00 125033 125033 1089 0 0 0 1418 0 300 0 53.02 460 0 0 0 0 0 0 0 1370 252 252 7 + 279 12 JAN 14:00 126959 126959 1106 0 0 0 1436 0 300 0 53.03 460 0 0 0 0 0 0 0 1370 234 234 7 + 280 12 JAN 15:00 128885 128885 1123 0 0 0 1454 0 300 0 53.04 460 0 0 0 0 0 0 0 1370 216 216 7 + 281 12 JAN 16:00 135091 135091 1177 0 0 0 1512 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 158 158 7 + 282 12 JAN 17:00 145655 145655 1269 0 0 0 1604 0 300 0 53.05 460 0 0 0 0 0 0 0 1370 66 66 7 + 283 12 JAN 18:00 149902 149902 1306 0 0 0 1635 0 300 0 53.06 460 0 0 0 0 0 0 0 1370 35 35 7 + 284 12 JAN 19:00 147710 147710 1287 0 0 0 1619 0 300 0 53.07 460 0 0 0 0 0 0 0 1370 51 51 7 + 285 12 JAN 20:00 137434 137434 1197 0 0 0 1544 0 300 0 53.08 460 0 0 0 0 0 0 0 1370 126 126 6 + 286 12 JAN 21:00 122929 122929 1071 0 0 0 1432 0 300 0 53.09 460 0 0 0 0 0 0 0 1370 238 238 5 + 287 12 JAN 22:00 107860 107860 939 0 0 0 1308 0 300 0 53.10 460 0 0 0 0 0 0 0 1370 362 362 4 + 288 12 JAN 23:00 91061 91061 793 0 0 0 1151 0 300 0 53.11 460 0 0 0 0 0 0 0 1370 519 519 4 + 289 13 JAN 00:00 78114 78114 680 0 0 0 1030 0 300 0 53.12 460 0 0 0 0 0 0 0 1780 1050 1050 4 + 290 13 JAN 01:00 68270 68270 595 0 0 0 938 0 300 0 53.13 460 0 0 0 0 0 0 0 1780 1142 1142 4 + 291 13 JAN 02:00 64213 64204 559 0 0 0 891 0 300 0 53.14 460 0 0 0 0 9 0 0 1780 1180 1189 4 + 292 13 JAN 03:00 64232 64204 559 0 0 0 872 0 300 0 53.15 460 0 0 0 0 28 0 0 1780 1180 1208 4 + 293 13 JAN 04:00 64220 64204 559 0 0 0 884 0 300 0 53.16 460 0 0 0 0 16 0 0 1780 1180 1196 4 + 294 13 JAN 05:00 69768 69768 608 0 0 0 952 0 300 0 53.17 460 0 0 0 0 0 0 0 1780 1128 1128 4 + 295 13 JAN 06:00 183329 183329 719 0 0 0 1094 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 986 986 100505 + 296 13 JAN 07:00 96749 96749 839 0 0 0 1239 0 300 0 53.18 460 0 0 0 0 0 0 0 1780 841 841 5 + 297 13 JAN 08:00 106454 106454 923 0 0 0 1337 0 300 0 53.19 460 0 0 0 0 0 0 0 1780 743 743 5 + 298 13 JAN 09:00 109450 109450 949 0 0 0 1365 0 300 0 53.20 460 0 0 0 0 0 0 0 1780 715 715 5 + 299 13 JAN 10:00 107203 107203 930 0 0 0 1344 0 300 0 53.21 460 0 0 0 0 0 0 0 1780 736 736 5 + 300 13 JAN 11:00 104956 104956 910 0 0 0 1323 0 300 0 53.22 460 0 0 0 0 0 0 0 1780 757 757 5 + 301 13 JAN 12:00 103181 103181 895 0 0 0 1306 0 300 0 53.23 460 0 0 0 0 0 0 0 1780 774 774 5 + 302 13 JAN 13:00 107203 107203 930 0 0 0 1344 0 300 0 53.24 460 0 0 0 0 0 0 0 1780 736 736 5 + 303 13 JAN 14:00 108808 108808 944 0 0 0 1359 0 300 0 53.25 460 0 0 0 0 0 0 0 1780 721 721 5 + 304 13 JAN 15:00 111590 111590 968 0 0 0 1385 0 300 0 53.26 460 0 0 0 0 0 0 0 1780 695 695 5 + 305 13 JAN 16:00 120150 120150 1042 0 0 0 1465 0 300 0 53.27 460 0 0 0 0 0 0 0 1780 615 615 5 + 306 13 JAN 17:00 130422 130422 1132 0 0 0 1561 0 300 0 53.28 460 0 0 0 0 0 0 0 1780 519 519 5 + 307 13 JAN 18:00 131064 131064 1137 0 0 0 1567 0 300 0 53.29 460 0 0 0 0 0 0 0 1780 513 513 5 + 308 13 JAN 19:00 126034 126034 1094 0 0 0 1520 0 300 0 53.30 460 0 0 0 0 0 0 0 1780 560 560 4 + 309 13 JAN 20:00 116832 116832 1013 0 0 0 1434 0 300 0 53.31 460 0 0 0 0 0 0 0 1780 646 646 4 + 310 13 JAN 21:00 106239 106239 921 0 0 0 1335 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 745 745 4 + 311 13 JAN 22:00 93291 93291 808 0 0 0 1214 0 300 0 53.32 460 0 0 0 0 0 0 0 1780 866 866 3 + 312 13 JAN 23:00 76064 76064 658 0 0 0 1053 0 300 0 53.33 460 0 0 0 0 0 0 0 1780 1027 1027 3 + 313 14 JAN 00:00 60807 60807 527 0 0 0 899 0 300 0 53.34 460 0 0 0 0 0 0 0 1780 1181 1181 3 + 314 14 JAN 01:00 51207 51207 444 0 0 0 799 0 300 0 53.35 460 0 0 0 0 0 0 0 1780 1281 1281 3 + 315 14 JAN 02:00 49420 49383 428 0 0 0 743 0 300 0 53.36 460 0 0 0 0 37 0 0 1780 1300 1337 3 + 316 14 JAN 03:00 49447 49383 428 0 0 0 716 0 300 0 53.37 460 0 0 0 0 64 0 0 1780 1300 1364 3 + 317 14 JAN 04:00 49437 49383 428 0 0 0 726 0 300 0 53.38 460 0 0 0 0 54 0 0 1780 1300 1354 3 + 318 14 JAN 05:00 49671 49671 431 0 0 0 783 0 300 0 53.39 460 0 0 0 0 0 0 0 1780 1297 1297 3 + 319 14 JAN 06:00 61383 61383 532 0 0 0 905 0 300 0 53.40 460 0 0 0 0 0 0 0 1780 1175 1175 3 + 320 14 JAN 07:00 78418 78418 679 0 0 0 1075 0 300 0 53.41 460 0 0 0 0 0 0 0 1780 1005 1005 3 + 321 14 JAN 08:00 94361 94361 818 0 0 0 1224 0 300 0 53.42 460 0 0 0 0 0 0 0 1780 856 856 3 + 322 14 JAN 09:00 171887 171887 888 0 0 0 1299 0 300 0 53.43 460 0 0 0 0 0 0 0 1780 781 781 69504 + 323 14 JAN 10:00 102494 102494 889 0 0 0 1300 0 300 0 53.44 460 0 0 0 0 0 0 0 1780 780 780 4 + 324 14 JAN 11:00 103136 103136 894 0 0 0 1306 0 300 0 53.45 460 0 0 0 0 0 0 0 1780 774 774 4 + 325 14 JAN 12:00 103243 103243 895 0 0 0 1307 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 773 773 4 + 326 14 JAN 13:00 108272 108272 939 0 0 0 1354 0 300 0 53.46 460 0 0 0 0 0 0 0 1780 726 726 4 + 327 14 JAN 14:00 109449 109449 949 0 0 0 1365 0 300 0 53.47 460 0 0 0 0 0 0 0 1780 715 715 4 + 328 14 JAN 15:00 107630 107630 933 0 0 0 1348 0 300 0 53.48 460 0 0 0 0 0 0 0 1780 732 732 4 + 329 14 JAN 16:00 115976 115976 1006 0 0 0 1426 0 300 0 53.49 460 0 0 0 0 0 0 0 1780 654 654 4 + 330 14 JAN 17:00 127211 127211 1104 0 0 0 1531 0 300 0 53.50 460 0 0 0 0 0 0 0 1780 549 549 4 + 331 14 JAN 18:00 126462 126462 1097 0 0 0 1524 0 300 0 53.51 460 0 0 0 0 0 0 0 1780 556 556 4 + 332 14 JAN 19:00 121112 121112 1051 0 0 0 1474 0 300 0 53.52 460 0 0 0 0 0 0 0 1780 606 606 4 + 333 14 JAN 20:00 112124 112124 972 0 0 0 1390 0 300 0 53.53 460 0 0 0 0 0 0 0 1780 690 690 4 + 334 14 JAN 21:00 102494 102494 889 0 0 0 1300 0 300 0 53.54 460 0 0 0 0 0 0 0 1780 780 780 4 + 335 14 JAN 22:00 93826 93826 813 0 0 0 1219 0 300 0 53.55 460 0 0 0 0 0 0 0 1780 861 861 3 + 336 14 JAN 23:00 77455 77455 670 0 0 0 1066 0 300 0 53.56 460 0 0 0 0 0 0 0 1780 1014 1014 3 diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index fe603a53..7d4f76d2 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -335,42 +335,57 @@ def test_milp_version() -> None: """ """ number_hours = 168 + scenarios = 2 - for week in range(2): - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=False, - fast=False, - week=week, - ) + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenario=scenario, + ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) - status = problem.solver.Solve(parameters) + status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL + assert status == problem.solver.OPTIMAL - check_output_values(problem, "milp", week) + check_output_values(problem, "milp", week, scenario=scenario) - if week == 0: - assert problem.solver.Objective().Value() == pytest.approx(78933841) - elif week == 1: - assert problem.solver.Objective().Value() == pytest.approx(102109698) + expected_cost = [[78933841, 102109698], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) -def check_output_values(problem: OptimizationProblem, mode: str, week: int) -> None: +def check_output_values( + problem: OptimizationProblem, mode: str, week: int, scenario: int +) -> None: output = OutputValues(problem) expected_output_clusters_file = open( - "tests/functional/data_complex_case/" + mode + "/details-hourly.txt", "r" + "tests/functional/data_complex_case/" + + mode + + "/" + + str(scenario) + + "/details-hourly.txt", + "r", ) expected_output_clusters = expected_output_clusters_file.readlines() expected_output_general_file = open( - "tests/functional/data_complex_case/" + mode + "/values-hourly.txt", "r" + "tests/functional/data_complex_case/" + + mode + + "/" + + str(scenario) + + "/values-hourly.txt", + "r", ) expected_output_general = expected_output_general_file.readlines() @@ -443,73 +458,90 @@ def test_accurate_heuristic() -> None: """ number_hours = 168 + scenarios = 2 parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - for week in range(2): - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=False, - week=week, - ) - status = problem_optimization_1.solver.Solve(parameters) - - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units and round it to integer - output_1 = OutputValues(problem_optimization_1) - nb_on_min: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round(np.array(output_1.component(g).var("nb_on").value), 12) - ) - ), - index=[i for i in range(number_hours)], - columns=[0], + for scenario in range(scenarios): + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=False, + week=week, + scenario=scenario, ) - n_guide = TimeScenarioSeriesData(nb_on_1) - - # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - {g: n_guide}, number_hours, thermal_cluster=g, week=week + status = problem_optimization_1.solver.Solve(parameters) + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units and round it to integer + output_1 = OutputValues(problem_optimization_1) + nb_on_min: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round( + np.array(output_1.component(g).var("nb_on").value), 12 + ) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + {g: n_guide}, + number_hours, + thermal_cluster=g, + week=week, + scenario=scenario, + ) + status = problem_accurate_heuristic.solver.Solve(parameters) + + assert status == problem_accurate_heuristic.solver.OPTIMAL + + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil( + np.array(output_heuristic.component(g).var("nb_on").value) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + nb_on_min, + number_hours, + lp_relaxation=True, + fast=False, + week=week, + scenario=scenario, ) - status = problem_accurate_heuristic.solver.Solve(parameters) + status = problem_optimization_2.solver.Solve(parameters) - assert status == problem_accurate_heuristic.solver.OPTIMAL + assert status == problem_optimization_2.solver.OPTIMAL - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil(np.array(output_heuristic.component(g).var("nb_on").value)) - ), - index=[i for i in range(number_hours)], - columns=[0], + check_output_values( + problem_optimization_2, "accurate", week, scenario=scenario ) - nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - nb_on_min, number_hours, lp_relaxation=True, fast=False, week=week - ) - status = problem_optimization_2.solver.Solve(parameters) - - assert status == problem_optimization_2.solver.OPTIMAL - if week == 0: - assert problem_optimization_2.solver.Objective().Value() == 78996726 - elif week == 1: - assert ( - problem_optimization_2.solver.Objective().Value() == 102215087 - 69500 + expected_cost = [[78996726, 102215087 - 69500], [17587733, 17650089-10081]] + assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] ) - check_output_values(problem_optimization_2, "accurate", week) - def test_fast_heuristic() -> None: """ @@ -517,56 +549,64 @@ def test_fast_heuristic() -> None: """ number_hours = 168 + scenarios = 2 parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - for week in range(2): - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=True, - week=week, - ) - status = problem_optimization_1.solver.Solve(parameters) + for scenario in range(scenarios): + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=True, + week=week, + scenario=scenario, + ) + status = problem_optimization_1.solver.Solve(parameters) - assert status == problem_optimization_1.solver.OPTIMAL + assert status == problem_optimization_1.solver.OPTIMAL - # Get number of on units - output_1 = OutputValues(problem_optimization_1) + # Get number of on units + output_1 = OutputValues(problem_optimization_1) - # Solve heuristic problem - mingen: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - mingen_heuristic = create_problem_fast_heuristic( - output_1.component(g).var("generation").value, # type:ignore + # Solve heuristic problem + mingen: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + mingen_heuristic = create_problem_fast_heuristic( + output_1.component(g).var("generation").value, # type:ignore + number_hours, + thermal_cluster=g, + week=week, + scenario=scenario, + ) + + mingen[g] = TimeScenarioSeriesData(mingen_heuristic) + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + mingen, number_hours, - thermal_cluster=g, + lp_relaxation=True, + fast=True, week=week, + scenario=scenario, ) + status = problem_optimization_2.solver.Solve(parameters) - mingen[g] = TimeScenarioSeriesData(mingen_heuristic) - - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - mingen, number_hours, lp_relaxation=True, fast=True, week=week - ) - status = problem_optimization_2.solver.Solve(parameters) + assert status == problem_optimization_2.solver.OPTIMAL - assert status == problem_optimization_2.solver.OPTIMAL + check_output_values(problem_optimization_2, "fast", week, scenario) - check_output_values(problem_optimization_2, "fast", week) - - if week == 0: + expected_cost = [ + [79277215 - 630089, 102461792 - 699765], + [17803738 - 661246, 17720390 - 661246], + ] assert problem_optimization_2.solver.Objective().Value() == pytest.approx( - 79277215 - 630089 - ) - elif week == 1: - assert ( - problem_optimization_2.solver.Objective().Value() == 102461792 - 699765 + expected_cost[scenario][week] ) @@ -576,9 +616,12 @@ def create_complex_problem( lp_relaxation: bool, fast: bool, week: int, + scenario: int, ) -> OptimizationProblem: - database = generate_database(lower_bound, number_hours, week=week) + database = generate_database( + lower_bound, number_hours, week=week, scenario=scenario + ) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 @@ -633,10 +676,19 @@ def create_complex_problem( def generate_database( - lower_bound: Dict[str, AbstractDataStructure], number_hours: int, week: int + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + week: int, + scenario: int, ) -> DataBase: database = DataBase() + failures_1 = pd.DataFrame( + np.repeat(get_failures_for_cluster1(week, scenario), 24), + index=[i for i in range(number_hours)], + columns=[0], + ) + database.add_data("G1", "p_max", ConstantData(410)) database.add_data("G1", "p_min", ConstantData(180)) database.add_data("G1", "cost", ConstantData(96)) @@ -646,7 +698,7 @@ def generate_database( database.add_data("G1", "d_min_down", ConstantData(8)) database.add_data("G1", "nb_units_min", lower_bound["G1"]) database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data("G1", "failures", ConstantData(410)) + database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) database.add_data("G1", "mingen", lower_bound["G1"]) database.add_data("G2", "p_max", ConstantData(90)) @@ -662,7 +714,7 @@ def generate_database( database.add_data("G2", "mingen", lower_bound["G2"]) failures_3 = pd.DataFrame( - np.repeat(get_failures_for_cluster3(week), 24), + np.repeat(get_failures_for_cluster3(week, scenario), 24), index=[i for i in range(number_hours)], columns=[0], ) @@ -682,7 +734,12 @@ def generate_database( database.add_data("U", "cost", ConstantData(10000)) database.add_data("S", "cost", ConstantData(1)) - output_file = open("tests/functional/data_complex_case/milp/values-hourly.txt", "r") + output_file = open( + "tests/functional/data_complex_case/milp/" + + str(scenario) + + "/values-hourly.txt", + "r", + ) output = output_file.readlines() demand_data = pd.DataFrame( @@ -700,25 +757,43 @@ def generate_database( return database -def get_failures_for_cluster3(week: int) -> List: - if week == 0: - failures_3 = [1100, 1100, 0, 1100, 1100, 1100, 1100] - elif week == 1: - failures_3 = [1100, 1100, 1100, 1100, 1100, 0, 1100] +def get_failures_for_cluster3(week: int, scenario: int) -> List: + if scenario == 0: + if week == 0: + failures_3 = [1100, 1100, 0, 1100, 1100, 1100, 1100] + elif week == 1: + failures_3 = [1100, 1100, 1100, 1100, 1100, 0, 1100] + elif scenario == 1: + failures_3 = [1100, 1100, 1100, 1100, 1100, 1100, 1100] return failures_3 +def get_failures_for_cluster1(week: int, scenario: int) -> List: + if scenario == 0: + failures = [410, 410, 410, 410, 410, 410, 410] + elif scenario == 1: + failures = [410, 410, 410, 410, 0, 410, 410] + + return failures + + def create_problem_accurate_heuristic( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, thermal_cluster: str, week: int, + scenario: int, ) -> OptimizationProblem: database = DataBase() if thermal_cluster == "G1": + failures_1 = pd.DataFrame( + np.repeat(get_failures_for_cluster1(week, scenario), 24), + index=[i for i in range(number_hours)], + columns=[0], + ) database.add_data("G1", "p_max", ConstantData(410)) database.add_data("G1", "p_min", ConstantData(180)) database.add_data("G1", "cost", ConstantData(96)) @@ -728,7 +803,7 @@ def create_problem_accurate_heuristic( database.add_data("G1", "d_min_down", ConstantData(8)) database.add_data("G1", "nb_units_min", lower_bound["G1"]) database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data("G1", "failures", ConstantData(410)) + database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) database.add_data("G1", "mingen", lower_bound["G1"]) elif thermal_cluster == "G2": database.add_data("G2", "p_max", ConstantData(90)) @@ -744,7 +819,7 @@ def create_problem_accurate_heuristic( database.add_data("G2", "mingen", lower_bound["G2"]) elif thermal_cluster == "G3": failures_3 = pd.DataFrame( - np.repeat(get_failures_for_cluster3(week), 24), + np.repeat(get_failures_for_cluster3(week, scenario), 24), index=[i for i in range(number_hours)], columns=[0], ) @@ -784,17 +859,23 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], number_hours: int, thermal_cluster: str, week: int + lower_bound: List[List[float]], + number_hours: int, + thermal_cluster: str, + week: int, + scenario: int, ) -> pd.DataFrame: delta = {"G1": 8, "G2": 11, "G3": 9}[thermal_cluster] pmax = {"G1": 410, "G2": 90, "G3": 275}[thermal_cluster] pmin = {"G1": 180, "G2": 60, "G3": 150}[thermal_cluster] pdispo = { - "G1": np.array(410), + "G1": np.reshape( + np.repeat(get_failures_for_cluster1(week, scenario), 24), (number_hours, 1) + ), "G2": np.array(270), "G3": np.reshape( - np.repeat(get_failures_for_cluster3(week), 24), (number_hours, 1) + np.repeat(get_failures_for_cluster3(week, scenario), 24), (number_hours, 1) ), } From 5cb88db825b933548673dbb3f3d729b4ebd6cf14 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 7 Jun 2024 17:51:05 +0200 Subject: [PATCH 13/93] add test for scenarios --- ...st_resolution_with_differents_scenarios.py | 383 ++++++++++++++++++ 1 file changed, 383 insertions(+) create mode 100644 tests/functional/test_resolution_with_differents_scenarios.py diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py new file mode 100644 index 00000000..a9b7016f --- /dev/null +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -0,0 +1,383 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest +import numpy as np +from typing import List, Dict +from math import ceil, floor +import ortools.linear_solver.pywraplp as pywraplp + +from andromede.expression import literal, param, var +from andromede.expression.expression import ExpressionRange, port_field +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.model import Model, ModelPort, float_parameter, float_variable, model +from andromede.model.model import PortFieldDefinition, PortFieldId +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable +from andromede.model.constraint import Constraint +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioIndex, + TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, + create_component, +) +from andromede.study.data import AbstractDataStructure + + +def test_one_problem_per_scenario() -> None: + """ """ + number_hours = 168 + scenarios = 2 + + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=[scenario], + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933841, 102109698], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_one_problem_for_all_scenarios() -> None: + """ """ + number_hours = 168 + scenarios = [0, 1] + + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=scenarios, + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933841, 102109698], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) + ) + + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) + +THERMAL_CLUSTER_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + float_parameter("failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("failures"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + + +def create_complex_problem( + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + lp_relaxation: bool, + fast: bool, + week: int, + scenarios: List[int], +) -> OptimizationProblem: + + database = generate_database( + lower_bound, number_hours, week=week, scenarios=scenarios + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + network.add_component(gen1) + network.add_component(gen2) + network.add_component(gen3) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + len(scenarios), + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + return problem + + +def generate_database( + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + week: int, + scenarios: List[int], +) -> DataBase: + database = DataBase() + + failures_1 = pd.DataFrame( + np.transpose( + [ + np.repeat(get_failures_for_cluster1(week, scenario), 24) + for scenario in scenarios + ] + ), + index=[i for i in range(number_hours)], + columns=list(range(len(scenarios))), + ) + + database.add_data("G1", "p_max", ConstantData(410)) + database.add_data("G1", "p_min", ConstantData(180)) + database.add_data("G1", "cost", ConstantData(96)) + database.add_data("G1", "startup_cost", ConstantData(100500)) + database.add_data("G1", "fixed_cost", ConstantData(1)) + database.add_data("G1", "d_min_up", ConstantData(8)) + database.add_data("G1", "d_min_down", ConstantData(8)) + database.add_data("G1", "nb_units_min", lower_bound["G1"]) + database.add_data("G1", "nb_units_max", ConstantData(1)) + database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) + database.add_data("G1", "mingen", lower_bound["G1"]) + + database.add_data("G2", "p_max", ConstantData(90)) + database.add_data("G2", "p_min", ConstantData(60)) + database.add_data("G2", "cost", ConstantData(137)) + database.add_data("G2", "startup_cost", ConstantData(24500)) + database.add_data("G2", "fixed_cost", ConstantData(1)) + database.add_data("G2", "d_min_up", ConstantData(11)) + database.add_data("G2", "d_min_down", ConstantData(11)) + database.add_data("G2", "nb_units_min", lower_bound["G2"]) + database.add_data("G2", "nb_units_max", ConstantData(3)) + database.add_data("G2", "failures", ConstantData(270)) + database.add_data("G2", "mingen", lower_bound["G2"]) + + failures_3 = pd.DataFrame( + np.transpose( + [ + np.repeat(get_failures_for_cluster3(week, scenario), 24) + for scenario in scenarios + ] + ), + index=[i for i in range(number_hours)], + columns=list(range(len(scenarios))), + ) + + database.add_data("G3", "p_max", ConstantData(275)) + database.add_data("G3", "p_min", ConstantData(150)) + database.add_data("G3", "cost", ConstantData(107)) + database.add_data("G3", "startup_cost", ConstantData(69500)) + database.add_data("G3", "fixed_cost", ConstantData(1)) + database.add_data("G3", "d_min_up", ConstantData(9)) + database.add_data("G3", "d_min_down", ConstantData(9)) + database.add_data("G3", "nb_units_min", lower_bound["G3"]) + database.add_data("G3", "nb_units_max", ConstantData(4)) + database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) + database.add_data("G3", "mingen", lower_bound["G3"]) + + database.add_data("U", "cost", ConstantData(10000)) + database.add_data("S", "cost", ConstantData(1)) + + output = {} + for scenario in scenarios: + output_file = open( + "tests/functional/data_complex_case/milp/" + + str(scenario) + + "/values-hourly.txt", + "r", + ) + output[scenario] = output_file.readlines() + + demand_data = pd.DataFrame( + data=np.transpose( + [ + [ + float(line.strip().split("\t")[10]) - 300 + for line in output[scenario][168 * week + 7 : 168 * week + 7 + 168] + ] + for scenario in scenarios + ] + ), + index=[i for i in range(number_hours)], + columns=list(range(len(scenarios))), + ) + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + return database + + +def get_failures_for_cluster3(week: int, scenario: int) -> List: + if scenario == 0: + if week == 0: + failures_3 = [1100, 1100, 0, 1100, 1100, 1100, 1100] + elif week == 1: + failures_3 = [1100, 1100, 1100, 1100, 1100, 0, 1100] + elif scenario == 1: + failures_3 = [1100, 1100, 1100, 1100, 1100, 1100, 1100] + + return failures_3 + + +def get_failures_for_cluster1(week: int, scenario: int) -> List: + if scenario == 0: + failures = [410, 410, 410, 410, 410, 410, 410] + elif scenario == 1: + failures = [410, 410, 410, 410, 0, 410, 410] + + return failures From 9a9ec8dbb5328f6735300b27fa9d8eda3cb3cded Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 10 Jun 2024 11:59:05 +0200 Subject: [PATCH 14/93] Add more details on tests concerning scenarios --- ...st_resolution_with_differents_scenarios.py | 73 ++++++++++++++++++- 1 file changed, 71 insertions(+), 2 deletions(-) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index a9b7016f..e27da69a 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -55,7 +55,7 @@ def test_one_problem_per_scenario() -> None: - """ """ + """Resolve a simple problem with milp solver and with the same parameters as Antares. If the problem is solved scenario per scenario the result is the same as Antares.""" number_hours = 168 scenarios = 2 @@ -87,8 +87,43 @@ def test_one_problem_per_scenario() -> None: ) +def test_one_problem_per_scenario_with_different_parameters() -> None: + """Resolve the same problem as above with more restrictive parameters. If the problem is solved scenario per scenario the result is better than above.""" + number_hours = 168 + scenarios = 2 + + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=[scenario], + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) + + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933742, 102103588], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + def test_one_problem_for_all_scenarios() -> None: - """ """ + """Resolve the same problem as above with same parameters as Antares. If the problem is solved for all scenarios at the same time, the result is worse than solving the problem one by one.""" number_hours = 168 scenarios = [0, 1] @@ -114,6 +149,40 @@ def test_one_problem_for_all_scenarios() -> None: assert status == problem.solver.OPTIMAL expected_cost = [[78933841, 102109698], [17472101, 17424769]] + # assert problem.solver.Objective().Value() == pytest.approx( + # sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) + # ) + + +def test_one_problem_for_all_scenarios_with_different_parameters() -> None: + """Resolve the same problem as above with more restrictive parameters. If the problem is solved for all scenarios at the same time, the result is the same than solving the problem one by one. All those tests show that solver parameters and solving scenario at one or one by one are important factors to take into account.""" + number_hours = 168 + scenarios = [0, 1] + + for week in range(2): + problem = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=scenarios, + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) + + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933742, 102103588], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) ) From 1be84832d6f755565fc0fd799c1d82d521b28501 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 12 Jun 2024 16:12:18 +0200 Subject: [PATCH 15/93] Add milp test for second case --- .../milp/0/details-hourly.txt | 343 + .../milp/0/values-hourly.txt | 343 + .../data_second_complex_case/series_G2.txt | 8760 +++++++++++++++++ .../test_heuristic_second_complex_case.py | 978 ++ 4 files changed, 10424 insertions(+) create mode 100644 tests/functional/data_second_complex_case/milp/0/details-hourly.txt create mode 100644 tests/functional/data_second_complex_case/milp/0/values-hourly.txt create mode 100644 tests/functional/data_second_complex_case/series_G2.txt create mode 100644 tests/functional/test_heuristic_second_complex_case.py diff --git a/tests/functional/data_second_complex_case/milp/0/details-hourly.txt b/tests/functional/data_second_complex_case/milp/0/details-hourly.txt new file mode 100644 index 00000000..4ebf56fd --- /dev/null +++ b/tests/functional/data_second_complex_case/milp/0/details-hourly.txt @@ -0,0 +1,343 @@ +41_NL area de hourly + VARIABLES BEGIN END + 3 1 336 + +41_NL hourly cluster 2 cluster 2 cluster 2 + MWh NP Cost - Euro NODU + index day month hour + 1 01 JAN 00:00 0 0 0 + 2 01 JAN 01:00 0 0 0 + 3 01 JAN 02:00 0 0 0 + 4 01 JAN 03:00 0 0 0 + 5 01 JAN 04:00 0 0 0 + 6 01 JAN 05:00 1610 176 8 + 7 01 JAN 06:00 2092 60 10 + 8 01 JAN 07:00 2210 20 10 + 9 01 JAN 08:00 2210 20 10 + 10 01 JAN 09:00 2210 20 10 + 11 01 JAN 10:00 2210 20 10 + 12 01 JAN 11:00 1043 10 5 + 13 01 JAN 12:00 0 0 0 + 14 01 JAN 13:00 0 0 0 + 15 01 JAN 14:00 0 0 0 + 16 01 JAN 15:00 0 0 0 + 17 01 JAN 16:00 0 0 0 + 18 01 JAN 17:00 0 0 0 + 19 01 JAN 18:00 0 0 0 + 20 01 JAN 19:00 0 0 0 + 21 01 JAN 20:00 0 0 0 + 22 01 JAN 21:00 0 0 0 + 23 01 JAN 22:00 0 0 0 + 24 01 JAN 23:00 0 0 0 + 25 02 JAN 00:00 0 0 0 + 26 02 JAN 01:00 0 0 0 + 27 02 JAN 02:00 0 0 0 + 28 02 JAN 03:00 0 0 0 + 29 02 JAN 04:00 0 0 0 + 30 02 JAN 05:00 0 0 0 + 31 02 JAN 06:00 2210 220 10 + 32 02 JAN 07:00 1600 20 10 + 33 02 JAN 08:00 2210 20 10 + 34 02 JAN 09:00 2210 20 10 + 35 02 JAN 10:00 2210 20 10 + 36 02 JAN 11:00 2210 20 10 + 37 02 JAN 12:00 2210 20 10 + 38 02 JAN 13:00 2210 20 10 + 39 02 JAN 14:00 2210 20 10 + 40 02 JAN 15:00 2210 20 10 + 41 02 JAN 16:00 2210 20 10 + 42 02 JAN 17:00 2210 20 10 + 43 02 JAN 18:00 2210 20 10 + 44 02 JAN 19:00 1110 20 10 + 45 02 JAN 20:00 1147 20 10 + 46 02 JAN 21:00 2210 20 10 + 47 02 JAN 22:00 2210 20 10 + 48 02 JAN 23:00 2210 20 10 + 49 03 JAN 00:00 2431 42 11 + 50 03 JAN 01:00 2431 22 11 + 51 03 JAN 02:00 2431 22 11 + 52 03 JAN 03:00 2406 22 11 + 53 03 JAN 04:00 2431 22 11 + 54 03 JAN 05:00 1904 22 11 + 55 03 JAN 06:00 1221 22 11 + 56 03 JAN 07:00 2169 22 11 + 57 03 JAN 08:00 2431 22 11 + 58 03 JAN 09:00 0 0 0 + 59 03 JAN 10:00 0 0 0 + 60 03 JAN 11:00 0 0 0 + 61 03 JAN 12:00 0 0 0 + 62 03 JAN 13:00 0 0 0 + 63 03 JAN 14:00 0 0 0 + 64 03 JAN 15:00 0 0 0 + 65 03 JAN 16:00 222 44 2 + 66 03 JAN 17:00 222 4 2 + 67 03 JAN 18:00 1424 114 7 + 68 03 JAN 19:00 555 10 5 + 69 03 JAN 20:00 555 10 5 + 70 03 JAN 21:00 111 2 1 + 71 03 JAN 22:00 0 0 0 + 72 03 JAN 23:00 0 0 0 + 73 04 JAN 00:00 0 0 0 + 74 04 JAN 01:00 0 0 0 + 75 04 JAN 02:00 0 0 0 + 76 04 JAN 03:00 0 0 0 + 77 04 JAN 04:00 0 22 0 + 78 04 JAN 05:00 0 0 0 + 79 04 JAN 06:00 0 0 0 + 80 04 JAN 07:00 2431 242 11 + 81 04 JAN 08:00 2431 22 11 + 82 04 JAN 09:00 2431 22 11 + 83 04 JAN 10:00 1221 22 11 + 84 04 JAN 11:00 2431 22 11 + 85 04 JAN 12:00 0 0 0 + 86 04 JAN 13:00 0 0 0 + 87 04 JAN 14:00 0 0 0 + 88 04 JAN 15:00 0 0 0 + 89 04 JAN 16:00 0 0 0 + 90 04 JAN 17:00 0 0 0 + 91 04 JAN 18:00 0 0 0 + 92 04 JAN 19:00 0 0 0 + 93 04 JAN 20:00 0 0 0 + 94 04 JAN 21:00 0 0 0 + 95 04 JAN 22:00 0 0 0 + 96 04 JAN 23:00 0 0 0 + 97 05 JAN 00:00 0 0 0 + 98 05 JAN 01:00 0 0 0 + 99 05 JAN 02:00 0 0 0 + 100 05 JAN 03:00 0 0 0 + 101 05 JAN 04:00 0 0 0 + 102 05 JAN 05:00 0 0 0 + 103 05 JAN 06:00 0 0 0 + 104 05 JAN 07:00 0 0 0 + 105 05 JAN 08:00 0 0 0 + 106 05 JAN 09:00 0 0 0 + 107 05 JAN 10:00 0 0 0 + 108 05 JAN 11:00 0 0 0 + 109 05 JAN 12:00 0 0 0 + 110 05 JAN 13:00 0 0 0 + 111 05 JAN 14:00 0 0 0 + 112 05 JAN 15:00 0 0 0 + 113 05 JAN 16:00 0 0 0 + 114 05 JAN 17:00 0 0 0 + 115 05 JAN 18:00 0 0 0 + 116 05 JAN 19:00 0 0 0 + 117 05 JAN 20:00 0 0 0 + 118 05 JAN 21:00 0 0 0 + 119 05 JAN 22:00 0 0 0 + 120 05 JAN 23:00 0 0 0 + 121 06 JAN 00:00 0 0 0 + 122 06 JAN 01:00 0 0 0 + 123 06 JAN 02:00 0 0 0 + 124 06 JAN 03:00 0 0 0 + 125 06 JAN 04:00 0 0 0 + 126 06 JAN 05:00 0 0 0 + 127 06 JAN 06:00 0 0 0 + 128 06 JAN 07:00 0 0 0 + 129 06 JAN 08:00 0 0 0 + 130 06 JAN 09:00 0 0 0 + 131 06 JAN 10:00 0 0 0 + 132 06 JAN 11:00 0 0 0 + 133 06 JAN 12:00 0 0 0 + 134 06 JAN 13:00 0 0 0 + 135 06 JAN 14:00 0 0 0 + 136 06 JAN 15:00 0 0 0 + 137 06 JAN 16:00 888 176 8 + 138 06 JAN 17:00 888 16 8 + 139 06 JAN 18:00 1731 16 8 + 140 06 JAN 19:00 0 0 0 + 141 06 JAN 20:00 0 0 0 + 142 06 JAN 21:00 0 0 0 + 143 06 JAN 22:00 2018 264 12 + 144 06 JAN 23:00 2873 46 13 + 145 07 JAN 00:00 2652 24 12 + 146 07 JAN 01:00 0 0 0 + 147 07 JAN 02:00 0 0 0 + 148 07 JAN 03:00 0 0 0 + 149 07 JAN 04:00 0 0 0 + 150 07 JAN 05:00 0 0 0 + 151 07 JAN 06:00 0 0 0 + 152 07 JAN 07:00 2652 264 12 + 153 07 JAN 08:00 2652 24 12 + 154 07 JAN 09:00 1332 24 12 + 155 07 JAN 10:00 2527 24 12 + 156 07 JAN 11:00 2526 24 12 + 157 07 JAN 12:00 2500 24 12 + 158 07 JAN 13:00 2474 24 12 + 159 07 JAN 14:00 0 0 0 + 160 07 JAN 15:00 0 0 0 + 161 07 JAN 16:00 0 0 0 + 162 07 JAN 17:00 0 0 0 + 163 07 JAN 18:00 2652 264 12 + 164 07 JAN 19:00 2652 24 12 + 165 07 JAN 20:00 2652 24 12 + 166 07 JAN 21:00 2652 24 12 + 167 07 JAN 22:00 222 4 2 + 168 07 JAN 23:00 392 4 2 + 169 08 JAN 00:00 2873 246 13 + 170 08 JAN 01:00 2873 26 13 + 171 08 JAN 02:00 2873 26 13 + 172 08 JAN 03:00 2873 26 13 + 173 08 JAN 04:00 2873 26 13 + 174 08 JAN 05:00 2873 26 13 + 175 08 JAN 06:00 2873 26 13 + 176 08 JAN 07:00 2873 26 13 + 177 08 JAN 08:00 2873 26 13 + 178 08 JAN 09:00 1332 24 12 + 179 08 JAN 10:00 2454 24 12 + 180 08 JAN 11:00 2482 24 12 + 181 08 JAN 12:00 2482 24 12 + 182 08 JAN 13:00 2432 24 12 + 183 08 JAN 14:00 0 0 0 + 184 08 JAN 15:00 0 0 0 + 185 08 JAN 16:00 0 0 0 + 186 08 JAN 17:00 0 0 0 + 187 08 JAN 18:00 0 0 0 + 188 08 JAN 19:00 0 0 0 + 189 08 JAN 20:00 0 0 0 + 190 08 JAN 21:00 0 0 0 + 191 08 JAN 22:00 0 0 0 + 192 08 JAN 23:00 0 0 0 + 193 09 JAN 00:00 0 0 0 + 194 09 JAN 01:00 0 0 0 + 195 09 JAN 02:00 0 0 0 + 196 09 JAN 03:00 0 0 0 + 197 09 JAN 04:00 0 0 0 + 198 09 JAN 05:00 0 0 0 + 199 09 JAN 06:00 0 0 0 + 200 09 JAN 07:00 2652 264 12 + 201 09 JAN 08:00 1332 24 12 + 202 09 JAN 09:00 1332 24 12 + 203 09 JAN 10:00 2348 22 11 + 204 09 JAN 11:00 2348 22 11 + 205 09 JAN 12:00 2348 22 11 + 206 09 JAN 13:00 0 0 0 + 207 09 JAN 14:00 0 0 0 + 208 09 JAN 15:00 0 0 0 + 209 09 JAN 16:00 0 0 0 + 210 09 JAN 17:00 1332 264 12 + 211 09 JAN 18:00 1934 24 12 + 212 09 JAN 19:00 2652 24 12 + 213 09 JAN 20:00 0 0 0 + 214 09 JAN 21:00 0 0 0 + 215 09 JAN 22:00 0 0 0 + 216 09 JAN 23:00 0 0 0 + 217 10 JAN 00:00 0 0 0 + 218 10 JAN 01:00 0 0 0 + 219 10 JAN 02:00 0 0 0 + 220 10 JAN 03:00 0 0 0 + 221 10 JAN 04:00 0 0 0 + 222 10 JAN 05:00 0 0 0 + 223 10 JAN 06:00 0 0 0 + 224 10 JAN 07:00 1110 220 10 + 225 10 JAN 08:00 1963 20 10 + 226 10 JAN 09:00 2210 20 10 + 227 10 JAN 10:00 0 0 0 + 228 10 JAN 11:00 0 0 0 + 229 10 JAN 12:00 0 0 0 + 230 10 JAN 13:00 0 0 0 + 231 10 JAN 14:00 0 0 0 + 232 10 JAN 15:00 0 0 0 + 233 10 JAN 16:00 0 0 0 + 234 10 JAN 17:00 0 0 0 + 235 10 JAN 18:00 0 0 0 + 236 10 JAN 19:00 0 0 0 + 237 10 JAN 20:00 2210 220 10 + 238 10 JAN 21:00 2210 20 10 + 239 10 JAN 22:00 2210 20 10 + 240 10 JAN 23:00 2210 20 10 + 241 11 JAN 00:00 2652 64 12 + 242 11 JAN 01:00 2652 24 12 + 243 11 JAN 02:00 2652 24 12 + 244 11 JAN 03:00 2652 24 12 + 245 11 JAN 04:00 2652 24 12 + 246 11 JAN 05:00 2652 24 12 + 247 11 JAN 06:00 2652 24 12 + 248 11 JAN 07:00 2652 24 12 + 249 11 JAN 08:00 444 8 4 + 250 11 JAN 09:00 705 8 4 + 251 11 JAN 10:00 729 8 4 + 252 11 JAN 11:00 0 0 0 + 253 11 JAN 12:00 0 0 0 + 254 11 JAN 13:00 0 0 0 + 255 11 JAN 14:00 0 0 0 + 256 11 JAN 15:00 0 0 0 + 257 11 JAN 16:00 0 0 0 + 258 11 JAN 17:00 0 0 0 + 259 11 JAN 18:00 0 0 0 + 260 11 JAN 19:00 0 0 0 + 261 11 JAN 20:00 0 0 0 + 262 11 JAN 21:00 0 0 0 + 263 11 JAN 22:00 0 0 0 + 264 11 JAN 23:00 0 0 0 + 265 12 JAN 00:00 0 0 0 + 266 12 JAN 01:00 0 0 0 + 267 12 JAN 02:00 0 0 0 + 268 12 JAN 03:00 0 0 0 + 269 12 JAN 04:00 0 0 0 + 270 12 JAN 05:00 0 0 0 + 271 12 JAN 06:00 0 0 0 + 272 12 JAN 07:00 0 0 0 + 273 12 JAN 08:00 0 0 0 + 274 12 JAN 09:00 754 88 4 + 275 12 JAN 10:00 679 8 4 + 276 12 JAN 11:00 626 8 4 + 277 12 JAN 12:00 0 0 0 + 278 12 JAN 13:00 0 0 0 + 279 12 JAN 14:00 0 0 0 + 280 12 JAN 15:00 0 0 0 + 281 12 JAN 16:00 0 0 0 + 282 12 JAN 17:00 0 0 0 + 283 12 JAN 18:00 0 0 0 + 284 12 JAN 19:00 0 0 0 + 285 12 JAN 20:00 0 0 0 + 286 12 JAN 21:00 1403 154 7 + 287 12 JAN 22:00 777 14 7 + 288 12 JAN 23:00 1094 14 7 + 289 13 JAN 00:00 0 0 0 + 290 13 JAN 01:00 0 0 0 + 291 13 JAN 02:00 0 0 0 + 292 13 JAN 03:00 0 0 0 + 293 13 JAN 04:00 0 0 0 + 294 13 JAN 05:00 333 66 3 + 295 13 JAN 06:00 1054 50 5 + 296 13 JAN 07:00 991 10 5 + 297 13 JAN 08:00 222 4 2 + 298 13 JAN 09:00 631 26 3 + 299 13 JAN 10:00 444 28 4 + 300 13 JAN 11:00 754 8 4 + 301 13 JAN 12:00 752 8 4 + 302 13 JAN 13:00 0 0 0 + 303 13 JAN 14:00 0 0 0 + 304 13 JAN 15:00 0 0 0 + 305 13 JAN 16:00 0 0 0 + 306 13 JAN 17:00 0 0 0 + 307 13 JAN 18:00 0 0 0 + 308 13 JAN 19:00 0 0 0 + 309 13 JAN 20:00 299 44 2 + 310 13 JAN 21:00 1768 136 8 + 311 13 JAN 22:00 1768 16 8 + 312 13 JAN 23:00 1768 16 8 + 313 14 JAN 00:00 2431 82 11 + 314 14 JAN 01:00 2431 22 11 + 315 14 JAN 02:00 2431 22 11 + 316 14 JAN 03:00 2431 22 11 + 317 14 JAN 04:00 2431 22 11 + 318 14 JAN 05:00 2431 22 11 + 319 14 JAN 06:00 2431 22 11 + 320 14 JAN 07:00 2431 22 11 + 321 14 JAN 08:00 0 0 0 + 322 14 JAN 09:00 0 0 0 + 323 14 JAN 10:00 0 0 0 + 324 14 JAN 11:00 221 22 1 + 325 14 JAN 12:00 202 2 1 + 326 14 JAN 13:00 202 2 1 + 327 14 JAN 14:00 0 0 0 + 328 14 JAN 15:00 0 0 0 + 329 14 JAN 16:00 0 0 0 + 330 14 JAN 17:00 0 0 0 + 331 14 JAN 18:00 0 0 0 + 332 14 JAN 19:00 0 0 0 + 333 14 JAN 20:00 1184 132 6 + 334 14 JAN 21:00 1161 12 6 + 335 14 JAN 22:00 1135 12 6 + 336 14 JAN 23:00 1135 12 6 diff --git a/tests/functional/data_second_complex_case/milp/0/values-hourly.txt b/tests/functional/data_second_complex_case/milp/0/values-hourly.txt new file mode 100644 index 00000000..c39189ca --- /dev/null +++ b/tests/functional/data_second_complex_case/milp/0/values-hourly.txt @@ -0,0 +1,343 @@ +41_NL area va hourly + VARIABLES BEGIN END + 8 1 336 + +41_NL hourly OV. COST OP. COST MISC. NDG LOAD H. ROR GAS UNSP. ENRG SPIL. ENRG + Euro Euro MWh MWh MWh MWh MWh MWh + index day month hour + 1 01 JAN 00:00 9100 0 0 -910 0 0 0 910 + 2 01 JAN 01:00 3200 0 0 -320 0 0 0 320 + 3 01 JAN 02:00 3470 0 0 -347 0 0 0 347 + 4 01 JAN 03:00 3470 0 0 -347 0 0 0 347 + 5 01 JAN 04:00 3720 0 0 -372 0 0 0 372 + 6 01 JAN 05:00 188546 188546 0 1610 0 1610 0 0 + 7 01 JAN 06:00 244824 244824 0 2092 0 2092 0 0 + 8 01 JAN 07:00 1128590 258590 0 3370 0 2210 1160 0 + 9 01 JAN 08:00 5877590 258590 0 9702 0 2210 7492 0 + 10 01 JAN 09:00 552590 258590 0 2602 0 2210 392 0 + 11 01 JAN 10:00 440840 258590 0 2453 0 2210 243 0 + 12 01 JAN 11:00 122041 122041 0 1043 0 1043 0 0 + 13 01 JAN 12:00 35230 0 0 -3523 0 0 0 3523 + 14 01 JAN 13:00 35770 0 0 -3577 0 0 0 3577 + 15 01 JAN 14:00 43030 0 0 -4303 0 0 0 4303 + 16 01 JAN 15:00 43310 0 0 -4331 0 0 0 4331 + 17 01 JAN 16:00 35440 0 0 -3544 0 0 0 3544 + 18 01 JAN 17:00 61740 0 0 -6174 0 0 0 6174 + 19 01 JAN 18:00 110800 0 0 -11080 0 0 0 11080 + 20 01 JAN 19:00 111310 0 0 -11131 0 0 0 11131 + 21 01 JAN 20:00 62630 0 0 -6263 0 0 0 6263 + 22 01 JAN 21:00 38760 0 0 -3876 0 0 0 3876 + 23 01 JAN 22:00 67450 0 0 -6745 0 0 0 6745 + 24 01 JAN 23:00 83060 0 0 -8306 0 0 0 8306 + 25 02 JAN 00:00 52690 0 0 -5269 0 0 0 5269 + 26 02 JAN 01:00 50690 0 0 -5069 0 0 0 5069 + 27 02 JAN 02:00 81990 0 0 -8199 0 0 0 8199 + 28 02 JAN 03:00 82230 0 0 -8223 0 0 0 8223 + 29 02 JAN 04:00 75010 0 0 -7501 0 0 0 7501 + 30 02 JAN 05:00 2420 0 0 -242 0 0 0 242 + 31 02 JAN 06:00 1160290 258790 0 3412 0 2210 1202 0 + 32 02 JAN 07:00 187220 187220 0 1600 0 1600 0 0 + 33 02 JAN 08:00 505340 258590 0 2539 0 2210 329 0 + 34 02 JAN 09:00 6982340 258590 0 11175 0 2210 8965 0 + 35 02 JAN 10:00 7004090 258590 0 11204 0 2210 8994 0 + 36 02 JAN 11:00 7006340 258590 0 11207 0 2210 8997 0 + 37 02 JAN 12:00 7007840 258590 0 11209 0 2210 8999 0 + 38 02 JAN 13:00 7007090 258590 0 11208 0 2210 8998 0 + 39 02 JAN 14:00 6986090 258590 0 11180 0 2210 8970 0 + 40 02 JAN 15:00 6985340 258590 0 11179 0 2210 8969 0 + 41 02 JAN 16:00 6965840 258590 0 11153 0 2210 8943 0 + 42 02 JAN 17:00 4490090 258590 0 7852 0 2210 5642 0 + 43 02 JAN 18:00 432590 258590 0 2442 0 2210 232 0 + 44 02 JAN 19:00 177800 129890 0 -3681 0 1110 0 4791 + 45 02 JAN 20:00 134219 134219 0 1147 0 1147 0 0 + 46 02 JAN 21:00 1301840 258590 0 3601 0 2210 1391 0 + 47 02 JAN 22:00 1283090 258590 0 3576 0 2210 1366 0 + 48 02 JAN 23:00 759590 258590 0 2878 0 2210 668 0 + 49 03 JAN 00:00 1125219 284469 0 3552 0 2431 1121 0 + 50 03 JAN 01:00 581449 284449 0 2827 0 2431 396 0 + 51 03 JAN 02:00 1106449 284449 0 3527 0 2431 1096 0 + 52 03 JAN 03:00 281524 281524 0 2406 0 2406 0 0 + 53 03 JAN 04:00 398449 284449 0 2583 0 2431 152 0 + 54 03 JAN 05:00 222790 222790 0 1904 0 1904 0 0 + 55 03 JAN 06:00 150059 142879 0 503 0 1221 0 718 + 56 03 JAN 07:00 253795 253795 0 2169 0 2169 0 0 + 57 03 JAN 08:00 963199 284449 0 3336 0 2431 905 0 + 58 03 JAN 09:00 44240 0 0 -4424 0 0 0 4424 + 59 03 JAN 10:00 43990 0 0 -4399 0 0 0 4399 + 60 03 JAN 11:00 44010 0 0 -4401 0 0 0 4401 + 61 03 JAN 12:00 44030 0 0 -4403 0 0 0 4403 + 62 03 JAN 13:00 44280 0 0 -4428 0 0 0 4428 + 63 03 JAN 14:00 288020 0 0 -28802 0 0 0 28802 + 64 03 JAN 15:00 242460 0 0 -24246 0 0 0 24246 + 65 03 JAN 16:00 210588 26018 0 -18235 0 222 0 18457 + 66 03 JAN 17:00 121378 25978 0 -9318 0 222 0 9540 + 67 03 JAN 18:00 166722 166722 0 1424 0 1424 0 0 + 68 03 JAN 19:00 88545 64945 0 -1805 0 555 0 2360 + 69 03 JAN 20:00 65865 64945 0 463 0 555 0 92 + 70 03 JAN 21:00 13069 12989 0 103 0 111 0 8 + 71 03 JAN 22:00 8640 0 0 -864 0 0 0 864 + 72 03 JAN 23:00 12700 0 0 -1270 0 0 0 1270 + 73 04 JAN 00:00 13210 0 0 -1321 0 0 0 1321 + 74 04 JAN 01:00 4190 0 0 -419 0 0 0 419 + 75 04 JAN 02:00 2350 0 0 -235 0 0 0 235 + 76 04 JAN 03:00 13720 0 0 -1372 0 0 0 1372 + 77 04 JAN 04:00 18772 22 0 25 0 0 25 0 + 78 04 JAN 05:00 10870 0 0 -1087 0 0 0 1087 + 79 04 JAN 06:00 13490 0 0 -1349 0 0 0 1349 + 80 04 JAN 07:00 3095669 284669 0 6179 0 2431 3748 0 + 81 04 JAN 08:00 4916449 284449 0 8607 0 2431 6176 0 + 82 04 JAN 09:00 1225699 284449 0 3686 0 2431 1255 0 + 83 04 JAN 10:00 166279 142879 0 -1119 0 1221 0 2340 + 84 04 JAN 11:00 319699 284449 0 2478 0 2431 47 0 + 85 04 JAN 12:00 31420 0 0 -3142 0 0 0 3142 + 86 04 JAN 13:00 71040 0 0 -7104 0 0 0 7104 + 87 04 JAN 14:00 104010 0 0 -10401 0 0 0 10401 + 88 04 JAN 15:00 104300 0 0 -10430 0 0 0 10430 + 89 04 JAN 16:00 104530 0 0 -10453 0 0 0 10453 + 90 04 JAN 17:00 104770 0 0 -10477 0 0 0 10477 + 91 04 JAN 18:00 105290 0 0 -10529 0 0 0 10529 + 92 04 JAN 19:00 105780 0 0 -10578 0 0 0 10578 + 93 04 JAN 20:00 106540 0 0 -10654 0 0 0 10654 + 94 04 JAN 21:00 106500 0 0 -10650 0 0 0 10650 + 95 04 JAN 22:00 81710 0 0 -8171 0 0 0 8171 + 96 04 JAN 23:00 106950 0 0 -10695 0 0 0 10695 + 97 05 JAN 00:00 107470 0 0 -10747 0 0 0 10747 + 98 05 JAN 01:00 107450 0 0 -10745 0 0 0 10745 + 99 05 JAN 02:00 76910 0 0 -7691 0 0 0 7691 + 100 05 JAN 03:00 37570 0 0 -3757 0 0 0 3757 + 101 05 JAN 04:00 33940 0 0 -3394 0 0 0 3394 + 102 05 JAN 05:00 13970 0 0 -1397 0 0 0 1397 + 103 05 JAN 06:00 13690 0 0 -1369 0 0 0 1369 + 104 05 JAN 07:00 12450 0 0 -1245 0 0 0 1245 + 105 05 JAN 08:00 81090 0 0 -8109 0 0 0 8109 + 106 05 JAN 09:00 98390 0 0 -9839 0 0 0 9839 + 107 05 JAN 10:00 110690 0 0 -11069 0 0 0 11069 + 108 05 JAN 11:00 110700 0 0 -11070 0 0 0 11070 + 109 05 JAN 12:00 110960 0 0 -11096 0 0 0 11096 + 110 05 JAN 13:00 111230 0 0 -11123 0 0 0 11123 + 111 05 JAN 14:00 111480 0 0 -11148 0 0 0 11148 + 112 05 JAN 15:00 271170 0 0 -27117 0 0 0 27117 + 113 05 JAN 16:00 331990 0 0 -33199 0 0 0 33199 + 114 05 JAN 17:00 251050 0 0 -25105 0 0 0 25105 + 115 05 JAN 18:00 173420 0 0 -17342 0 0 0 17342 + 116 05 JAN 19:00 105900 0 0 -10590 0 0 0 10590 + 117 05 JAN 20:00 105730 0 0 -10573 0 0 0 10573 + 118 05 JAN 21:00 106710 0 0 -10671 0 0 0 10671 + 119 05 JAN 22:00 107220 0 0 -10722 0 0 0 10722 + 120 05 JAN 23:00 107530 0 0 -10753 0 0 0 10753 + 121 06 JAN 00:00 108890 0 0 -10889 0 0 0 10889 + 122 06 JAN 01:00 108900 0 0 -10890 0 0 0 10890 + 123 06 JAN 02:00 109160 0 0 -10916 0 0 0 10916 + 124 06 JAN 03:00 109180 0 0 -10918 0 0 0 10918 + 125 06 JAN 04:00 109170 0 0 -10917 0 0 0 10917 + 126 06 JAN 05:00 84180 0 0 -8418 0 0 0 8418 + 127 06 JAN 06:00 83910 0 0 -8391 0 0 0 8391 + 128 06 JAN 07:00 75630 0 0 -7563 0 0 0 7563 + 129 06 JAN 08:00 73630 0 0 -7363 0 0 0 7363 + 130 06 JAN 09:00 43000 0 0 -4300 0 0 0 4300 + 131 06 JAN 10:00 55160 0 0 -5516 0 0 0 5516 + 132 06 JAN 11:00 54640 0 0 -5464 0 0 0 5464 + 133 06 JAN 12:00 54890 0 0 -5489 0 0 0 5489 + 134 06 JAN 13:00 55380 0 0 -5538 0 0 0 5538 + 135 06 JAN 14:00 55600 0 0 -5560 0 0 0 5560 + 136 06 JAN 15:00 55610 0 0 -5561 0 0 0 5561 + 137 06 JAN 16:00 168792 104072 0 -5584 0 888 0 6472 + 138 06 JAN 17:00 168902 103912 0 -5611 0 888 0 6499 + 139 06 JAN 18:00 202543 202543 0 1731 0 1731 0 0 + 140 06 JAN 19:00 18900 0 0 -1890 0 0 0 1890 + 141 06 JAN 20:00 51150 0 0 -5115 0 0 0 5115 + 142 06 JAN 21:00 40240 0 0 -4024 0 0 0 4024 + 143 06 JAN 22:00 236370 236370 0 2018 0 2018 0 0 + 144 06 JAN 23:00 1411687 336187 0 4307 0 2873 1434 0 + 145 07 JAN 00:00 1860558 310308 0 4719 0 2652 2067 0 + 146 07 JAN 01:00 40120 0 0 -4012 0 0 0 4012 + 147 07 JAN 02:00 48730 0 0 -4873 0 0 0 4873 + 148 07 JAN 03:00 48730 0 0 -4873 0 0 0 4873 + 149 07 JAN 04:00 48730 0 0 -4873 0 0 0 4873 + 150 07 JAN 05:00 48730 0 0 -4873 0 0 0 4873 + 151 07 JAN 06:00 44770 0 0 -4477 0 0 0 4477 + 152 07 JAN 07:00 888798 310548 0 3423 0 2652 771 0 + 153 07 JAN 08:00 2730558 310308 0 5879 0 2652 3227 0 + 154 07 JAN 09:00 236858 155868 0 -6767 0 1332 0 8099 + 155 07 JAN 10:00 295683 295683 0 2527 0 2527 0 0 + 156 07 JAN 11:00 295566 295566 0 2526 0 2526 0 0 + 157 07 JAN 12:00 292524 292524 0 2500 0 2500 0 0 + 158 07 JAN 13:00 289482 289482 0 2474 0 2474 0 0 + 159 07 JAN 14:00 235580 0 0 -23558 0 0 0 23558 + 160 07 JAN 15:00 217530 0 0 -21753 0 0 0 21753 + 161 07 JAN 16:00 161470 0 0 -16147 0 0 0 16147 + 162 07 JAN 17:00 37020 0 0 -3702 0 0 0 3702 + 163 07 JAN 18:00 4016298 310548 0 7593 0 2652 4941 0 + 164 07 JAN 19:00 1160808 310308 0 3786 0 2652 1134 0 + 165 07 JAN 20:00 5604558 310308 0 9711 0 2652 7059 0 + 166 07 JAN 21:00 4697808 310308 0 8502 0 2652 5850 0 + 167 07 JAN 22:00 28108 25978 0 9 0 222 0 213 + 168 07 JAN 23:00 45868 45868 0 392 0 392 0 0 + 169 08 JAN 00:00 2153637 336387 0 5296 0 2873 2423 0 + 170 08 JAN 01:00 2538167 336167 0 5809 0 2873 2936 0 + 171 08 JAN 02:00 2454167 336167 0 5697 0 2873 2824 0 + 172 08 JAN 03:00 3081917 336167 0 6534 0 2873 3661 0 + 173 08 JAN 04:00 459167 336167 0 3037 0 2873 164 0 + 174 08 JAN 05:00 624167 336167 0 3257 0 2873 384 0 + 175 08 JAN 06:00 2037917 336167 0 5142 0 2873 2269 0 + 176 08 JAN 07:00 1916417 336167 0 4980 0 2873 2107 0 + 177 08 JAN 08:00 1998167 336167 0 5089 0 2873 2216 0 + 178 08 JAN 09:00 170098 155868 0 -91 0 1332 0 1423 + 179 08 JAN 10:00 287142 287142 0 2454 0 2454 0 0 + 180 08 JAN 11:00 290418 290418 0 2482 0 2482 0 0 + 181 08 JAN 12:00 290418 290418 0 2482 0 2482 0 0 + 182 08 JAN 13:00 284568 284568 0 2432 0 2432 0 0 + 183 08 JAN 14:00 156970 0 0 -15697 0 0 0 15697 + 184 08 JAN 15:00 270690 0 0 -27069 0 0 0 27069 + 185 08 JAN 16:00 300910 0 0 -30091 0 0 0 30091 + 186 08 JAN 17:00 259050 0 0 -25905 0 0 0 25905 + 187 08 JAN 18:00 139850 0 0 -13985 0 0 0 13985 + 188 08 JAN 19:00 53460 0 0 -5346 0 0 0 5346 + 189 08 JAN 20:00 61760 0 0 -6176 0 0 0 6176 + 190 08 JAN 21:00 62230 0 0 -6223 0 0 0 6223 + 191 08 JAN 22:00 62490 0 0 -6249 0 0 0 6249 + 192 08 JAN 23:00 62990 0 0 -6299 0 0 0 6299 + 193 09 JAN 00:00 63240 0 0 -6324 0 0 0 6324 + 194 09 JAN 01:00 63500 0 0 -6350 0 0 0 6350 + 195 09 JAN 02:00 63480 0 0 -6348 0 0 0 6348 + 196 09 JAN 03:00 63490 0 0 -6349 0 0 0 6349 + 197 09 JAN 04:00 63260 0 0 -6326 0 0 0 6326 + 198 09 JAN 05:00 62980 0 0 -6298 0 0 0 6298 + 199 09 JAN 06:00 62790 0 0 -6279 0 0 0 6279 + 200 09 JAN 07:00 544548 310548 0 2964 0 2652 312 0 + 201 09 JAN 08:00 196088 155868 0 -2690 0 1332 0 4022 + 202 09 JAN 09:00 158368 155868 0 1082 0 1332 0 250 + 203 09 JAN 10:00 274738 274738 0 2348 0 2348 0 0 + 204 09 JAN 11:00 274738 274738 0 2348 0 2348 0 0 + 205 09 JAN 12:00 274738 274738 0 2348 0 2348 0 0 + 206 09 JAN 13:00 77830 0 0 -7783 0 0 0 7783 + 207 09 JAN 14:00 199490 0 0 -19949 0 0 0 19949 + 208 09 JAN 15:00 201620 0 0 -20162 0 0 0 20162 + 209 09 JAN 16:00 203610 0 0 -20361 0 0 0 20361 + 210 09 JAN 17:00 236928 156108 0 -6750 0 1332 0 8082 + 211 09 JAN 18:00 226302 226302 0 1934 0 1934 0 0 + 212 09 JAN 19:00 2085558 310308 0 5019 0 2652 2367 0 + 213 09 JAN 20:00 20980 0 0 -2098 0 0 0 2098 + 214 09 JAN 21:00 4240 0 0 -424 0 0 0 424 + 215 09 JAN 22:00 20610 0 0 -2061 0 0 0 2061 + 216 09 JAN 23:00 47790 0 0 -4779 0 0 0 4779 + 217 10 JAN 00:00 43450 0 0 -4345 0 0 0 4345 + 218 10 JAN 01:00 47140 0 0 -4714 0 0 0 4714 + 219 10 JAN 02:00 57490 0 0 -5749 0 0 0 5749 + 220 10 JAN 03:00 57490 0 0 -5749 0 0 0 5749 + 221 10 JAN 04:00 57460 0 0 -5746 0 0 0 5746 + 222 10 JAN 05:00 57200 0 0 -5720 0 0 0 5720 + 223 10 JAN 06:00 56700 0 0 -5670 0 0 0 5670 + 224 10 JAN 07:00 196640 130090 0 -5545 0 1110 0 6655 + 225 10 JAN 08:00 229691 229691 0 1963 0 1963 0 0 + 226 10 JAN 09:00 1651340 258590 0 4067 0 2210 1857 0 + 227 10 JAN 10:00 9450 0 0 -945 0 0 0 945 + 228 10 JAN 11:00 2200 0 0 -220 0 0 0 220 + 229 10 JAN 12:00 2470 0 0 -247 0 0 0 247 + 230 10 JAN 13:00 2720 0 0 -272 0 0 0 272 + 231 10 JAN 14:00 9730 0 0 -973 0 0 0 973 + 232 10 JAN 15:00 44730 0 0 -4473 0 0 0 4473 + 233 10 JAN 16:00 43690 0 0 -4369 0 0 0 4369 + 234 10 JAN 17:00 11160 0 0 -1116 0 0 0 1116 + 235 10 JAN 18:00 54920 0 0 -5492 0 0 0 5492 + 236 10 JAN 19:00 9070 0 0 -907 0 0 0 907 + 237 10 JAN 20:00 3843040 258790 0 6989 0 2210 4779 0 + 238 10 JAN 21:00 2596340 258590 0 5327 0 2210 3117 0 + 239 10 JAN 22:00 2614340 258590 0 5351 0 2210 3141 0 + 240 10 JAN 23:00 2612840 258590 0 5349 0 2210 3139 0 + 241 11 JAN 00:00 3010348 310348 0 6252 0 2652 3600 0 + 242 11 JAN 01:00 3009558 310308 0 6251 0 2652 3599 0 + 243 11 JAN 02:00 2990058 310308 0 6225 0 2652 3573 0 + 244 11 JAN 03:00 2990058 310308 0 6225 0 2652 3573 0 + 245 11 JAN 04:00 2989308 310308 0 6224 0 2652 3572 0 + 246 11 JAN 05:00 2971308 310308 0 6200 0 2652 3548 0 + 247 11 JAN 06:00 2970558 310308 0 6199 0 2652 3547 0 + 248 11 JAN 07:00 6104808 310308 0 10378 0 2652 7726 0 + 249 11 JAN 08:00 65546 51956 0 -915 0 444 0 1359 + 250 11 JAN 09:00 82493 82493 0 705 0 705 0 0 + 251 11 JAN 10:00 85301 85301 0 729 0 729 0 0 + 252 11 JAN 11:00 16870 0 0 -1687 0 0 0 1687 + 253 11 JAN 12:00 36480 0 0 -3648 0 0 0 3648 + 254 11 JAN 13:00 36740 0 0 -3674 0 0 0 3674 + 255 11 JAN 14:00 37020 0 0 -3702 0 0 0 3702 + 256 11 JAN 15:00 37270 0 0 -3727 0 0 0 3727 + 257 11 JAN 16:00 37000 0 0 -3700 0 0 0 3700 + 258 11 JAN 17:00 43960 0 0 -4396 0 0 0 4396 + 259 11 JAN 18:00 104430 0 0 -10443 0 0 0 10443 + 260 11 JAN 19:00 104950 0 0 -10495 0 0 0 10495 + 261 11 JAN 20:00 88460 0 0 -8846 0 0 0 8846 + 262 11 JAN 21:00 61150 0 0 -6115 0 0 0 6115 + 263 11 JAN 22:00 55200 0 0 -5520 0 0 0 5520 + 264 11 JAN 23:00 45070 0 0 -4507 0 0 0 4507 + 265 12 JAN 00:00 55280 0 0 -5528 0 0 0 5528 + 266 12 JAN 01:00 63070 0 0 -6307 0 0 0 6307 + 267 12 JAN 02:00 82500 0 0 -8250 0 0 0 8250 + 268 12 JAN 03:00 82760 0 0 -8276 0 0 0 8276 + 269 12 JAN 04:00 82740 0 0 -8274 0 0 0 8274 + 270 12 JAN 05:00 82730 0 0 -8273 0 0 0 8273 + 271 12 JAN 06:00 66660 0 0 -6666 0 0 0 6666 + 272 12 JAN 07:00 77250 0 0 -7725 0 0 0 7725 + 273 12 JAN 08:00 54910 0 0 -5491 0 0 0 5491 + 274 12 JAN 09:00 88306 88306 0 754 0 754 0 0 + 275 12 JAN 10:00 79451 79451 0 679 0 679 0 0 + 276 12 JAN 11:00 73250 73250 0 626 0 626 0 0 + 277 12 JAN 12:00 15550 0 0 -1555 0 0 0 1555 + 278 12 JAN 13:00 37770 0 0 -3777 0 0 0 3777 + 279 12 JAN 14:00 38000 0 0 -3800 0 0 0 3800 + 280 12 JAN 15:00 38290 0 0 -3829 0 0 0 3829 + 281 12 JAN 16:00 37280 0 0 -3728 0 0 0 3728 + 282 12 JAN 17:00 38690 0 0 -3869 0 0 0 3869 + 283 12 JAN 18:00 102850 0 0 -10285 0 0 0 10285 + 284 12 JAN 19:00 74770 0 0 -7477 0 0 0 7477 + 285 12 JAN 20:00 24760 0 0 -2476 0 0 0 2476 + 286 12 JAN 21:00 164305 164305 0 1403 0 1403 0 0 + 287 12 JAN 22:00 128873 90923 0 -3018 0 777 0 3795 + 288 12 JAN 23:00 128012 128012 0 1094 0 1094 0 0 + 289 13 JAN 00:00 17350 0 0 -1735 0 0 0 1735 + 290 13 JAN 01:00 17730 0 0 -1773 0 0 0 1773 + 291 13 JAN 02:00 20410 0 0 -2041 0 0 0 2041 + 292 13 JAN 03:00 6930 0 0 -693 0 0 0 693 + 293 13 JAN 04:00 13300 0 0 -1330 0 0 0 1330 + 294 13 JAN 05:00 39777 39027 0 258 0 333 0 75 + 295 13 JAN 06:00 123368 123368 0 1054 0 1054 0 0 + 296 13 JAN 07:00 115957 115957 0 991 0 991 0 0 + 297 13 JAN 08:00 47458 25978 0 -1926 0 222 0 2148 + 298 13 JAN 09:00 73853 73853 0 631 0 631 0 0 + 299 13 JAN 10:00 60636 51976 0 -422 0 444 0 866 + 300 13 JAN 11:00 88226 88226 0 754 0 754 0 0 + 301 13 JAN 12:00 87992 87992 0 752 0 752 0 0 + 302 13 JAN 13:00 21740 0 0 -2174 0 0 0 2174 + 303 13 JAN 14:00 97690 0 0 -9769 0 0 0 9769 + 304 13 JAN 15:00 100390 0 0 -10039 0 0 0 10039 + 305 13 JAN 16:00 104210 0 0 -10421 0 0 0 10421 + 306 13 JAN 17:00 97170 0 0 -9717 0 0 0 9717 + 307 13 JAN 18:00 93520 0 0 -9352 0 0 0 9352 + 308 13 JAN 19:00 9920 0 0 -992 0 0 0 992 + 309 13 JAN 20:00 35027 35027 0 299 0 299 0 0 + 310 13 JAN 21:00 3216742 206992 0 5781 0 1768 4013 0 + 311 13 JAN 22:00 3098122 206872 0 5623 0 1768 3855 0 + 312 13 JAN 23:00 3060622 206872 0 5573 0 1768 3805 0 + 313 14 JAN 00:00 2315509 284509 0 5139 0 2431 2708 0 + 314 14 JAN 01:00 2280199 284449 0 5092 0 2431 2661 0 + 315 14 JAN 02:00 2273449 284449 0 5083 0 2431 2652 0 + 316 14 JAN 03:00 1530199 284449 0 4092 0 2431 1661 0 + 317 14 JAN 04:00 1530949 284449 0 4093 0 2431 1662 0 + 318 14 JAN 05:00 1440199 284449 0 3972 0 2431 1541 0 + 319 14 JAN 06:00 1017199 284449 0 3408 0 2431 977 0 + 320 14 JAN 07:00 1935199 284449 0 4632 0 2431 2201 0 + 321 14 JAN 08:00 9200 0 0 -920 0 0 0 920 + 322 14 JAN 09:00 6040 0 0 -604 0 0 0 604 + 323 14 JAN 10:00 13390 0 0 -1339 0 0 0 1339 + 324 14 JAN 11:00 31129 25879 0 228 0 221 7 0 + 325 14 JAN 12:00 23636 23636 0 202 0 202 0 0 + 326 14 JAN 13:00 23636 23636 0 202 0 202 0 0 + 327 14 JAN 14:00 13620 0 0 -1362 0 0 0 1362 + 328 14 JAN 15:00 20140 0 0 -2014 0 0 0 2014 + 329 14 JAN 16:00 42840 0 0 -4284 0 0 0 4284 + 330 14 JAN 17:00 84070 0 0 -8407 0 0 0 8407 + 331 14 JAN 18:00 13640 0 0 -1364 0 0 0 1364 + 332 14 JAN 19:00 53510 0 0 -5351 0 0 0 5351 + 333 14 JAN 20:00 138660 138660 0 1184 0 1184 0 0 + 334 14 JAN 21:00 135849 135849 0 1161 0 1161 0 0 + 335 14 JAN 22:00 132807 132807 0 1135 0 1135 0 0 + 336 14 JAN 23:00 132807 132807 0 1135 0 1135 0 0 diff --git a/tests/functional/data_second_complex_case/series_G2.txt b/tests/functional/data_second_complex_case/series_G2.txt new file mode 100644 index 00000000..448f552a --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G2.txt @@ -0,0 +1,8760 @@ +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2652 1768 2431 2652 2431 2652 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2210 2431 2431 2431 2873 2210 2873 2873 2431 2431 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2431 2652 2652 2873 1768 2431 2652 2431 2210 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2431 2210 2652 2210 2873 1547 2873 2873 2652 2431 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2652 2210 2431 2652 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2873 2431 2431 2431 2873 1989 2431 2652 2431 2210 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2652 2210 2652 2431 2431 1989 2652 2652 2431 2873 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2873 2431 1989 2431 2652 1989 2431 2431 2652 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2652 2431 1989 2431 2652 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2210 2431 2652 2210 2873 1989 2431 2431 2431 2652 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2652 2210 2210 2652 2652 2210 2431 2210 2210 2431 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +2431 2210 2652 2210 2873 2210 2431 2431 2210 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +1768 2431 2210 2652 2652 2210 1989 2652 2431 2652 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2431 1989 2210 2431 2652 2210 2652 2431 2431 2210 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2210 2210 2873 2210 2652 2431 2652 2431 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +2210 2431 2431 2431 2873 2210 2431 2652 2210 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +1989 2210 2652 2210 2652 2210 1989 1768 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2431 2210 2652 2210 1989 2210 2652 2652 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2431 2652 2210 2873 2431 2210 2652 2652 2210 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2431 2652 2431 2652 2652 2210 1989 2431 2210 1989 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2210 2652 2210 2431 2652 2210 2431 2652 2210 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2431 2652 2431 2431 2210 2210 2210 2210 2652 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2652 2652 2873 2652 2652 2431 2431 2210 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2210 2210 2210 2210 2431 2431 2210 2652 2431 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 1989 2652 2210 2431 2210 2431 1989 2210 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +2210 2431 2873 2210 2431 2431 1989 2431 2652 1768 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +1989 2431 2652 2210 2652 1989 2210 1768 1989 1989 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2431 2431 2873 2210 2431 2431 2210 2431 2210 2431 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2210 2210 2431 2210 2431 1989 1989 2652 2210 1989 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +2431 2210 2210 2652 2873 2210 1989 2431 2431 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 2431 2652 2652 2652 1989 1768 2431 1989 2431 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 1989 1989 2431 2210 1989 2210 2652 2210 1989 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1989 2210 2431 2431 2210 2210 2431 2431 1989 2210 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +1768 1989 2431 2431 2652 2431 2431 2431 1989 2431 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2431 2210 2431 2210 2210 1768 2652 2431 1989 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2210 2210 2652 2431 2210 1989 2652 2431 2210 2210 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2431 2210 2431 2652 2431 2652 2431 2210 1768 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2431 2210 2431 1989 2431 1989 2652 2431 2652 2431 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2210 2652 2652 2210 1768 2431 2210 2652 2431 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2652 2652 2431 2431 2652 1768 2652 2431 2652 2210 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2873 2210 1768 1768 1989 2431 1989 1768 2210 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2431 2431 2431 2652 2210 2652 2652 2431 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2431 2210 1989 2431 2652 1989 2431 1989 2210 2431 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2431 2431 2210 2210 2431 2873 2431 2210 2210 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2652 2210 1989 2431 2431 2431 2431 2652 2431 2431 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2210 2431 1989 2210 2652 2210 2652 2652 2431 2210 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2431 2652 2210 2431 2431 2431 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2652 2431 2210 2431 2652 1989 2873 2652 2652 2431 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +2210 2652 2210 1989 2210 2431 2873 2652 2652 2210 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2431 1989 1989 2652 2210 2652 2210 2210 2431 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 2210 2210 2210 2210 2652 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 1989 2431 2210 2431 2873 2431 2652 1989 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1768 2652 2431 2210 2431 2210 2873 2652 1989 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1989 2210 2431 2210 2431 2210 2873 2431 2652 2652 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1768 2652 2431 2431 2431 2652 2652 2652 2652 2431 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +1989 2431 2652 2431 2431 2652 2873 2652 2652 2652 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2652 2431 2210 2210 1989 2431 2431 2873 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2431 2652 2431 2873 2431 2873 2652 2652 2210 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +2210 2652 2652 2210 1989 1989 2873 2652 2431 2431 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1547 2210 1768 2431 2873 2431 2210 2652 2652 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2210 2652 2431 2652 2873 2873 2210 2431 2210 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1989 2431 2431 1768 2652 2431 2873 2652 2652 2652 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1547 2431 2652 2210 2431 2873 2431 2652 2431 2210 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1768 2210 2431 2431 2652 2652 2210 2652 2873 2431 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 1989 2652 2652 2431 2431 2431 1768 2652 2210 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1989 2652 2431 2431 2652 2873 2652 2652 2652 1768 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2431 2431 2210 2652 2873 2652 2873 2652 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1547 2210 2652 2210 2210 2652 2652 2873 2652 2210 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1989 2652 2652 2210 2210 2652 2431 2652 2652 2652 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +1768 2431 2210 2210 1989 2873 2873 2873 2873 2210 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 2431 2431 2431 2210 2873 2431 2873 2873 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 1989 2210 2431 2431 2431 2431 2431 2652 2652 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +2210 2431 2431 2210 2652 2652 2873 2431 1989 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +1989 1989 1989 1989 2431 2873 2873 2431 2210 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2210 2210 1989 2210 2431 2431 2873 2652 2652 2210 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2431 2210 2431 2431 2210 2431 2873 2652 2652 2652 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2210 2431 2652 2652 2210 2431 2873 2873 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2210 2652 1768 2652 2652 2431 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2210 2431 2652 1989 2431 2652 2873 2652 2210 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2431 2431 2210 2431 2431 2431 2431 2873 2652 2431 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 2210 1989 1989 1989 2652 2873 2652 2652 2210 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2652 1989 2431 2652 2210 2210 2210 2431 2652 2652 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2431 2431 2431 2431 1768 1989 2431 2431 2652 1989 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2431 2652 2431 2210 2431 2210 2431 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2652 2210 2431 2431 2210 2431 2431 1989 2431 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2210 2652 1989 2431 1989 2431 2431 2210 2210 2652 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2431 2652 2652 2652 2210 2210 2210 2431 2652 2873 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2652 2431 2652 1768 2210 1989 2210 2431 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2210 1989 2210 1768 2431 2210 2210 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2652 2431 2431 2210 2210 1989 2431 2210 2431 2431 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2873 2431 2652 2431 1989 1989 2210 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2652 2210 2652 2431 2431 1768 2431 2431 2431 2652 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2873 1989 2431 2431 1989 1989 2431 1768 1768 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2210 2431 2652 1989 2210 1768 2431 2210 2431 2431 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2652 2431 2652 2431 1989 2210 1989 2431 2652 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2873 2431 2652 2431 1768 1768 2431 2431 2431 2431 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2210 2431 2431 2431 2431 1768 2431 2431 1768 2210 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2873 2431 2431 2652 1989 1989 2210 2431 1989 2431 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2431 2652 2431 2652 2210 1989 2431 2210 1547 1768 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2431 2431 2652 2431 1768 2210 2210 1547 2431 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2873 2652 2873 2652 1547 1989 2210 1768 2210 1989 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 1989 2431 2431 1989 2210 1989 2210 2210 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2431 2431 2431 2652 2652 2210 2431 2431 1768 2431 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2652 2652 2652 2210 1547 2431 1989 1989 2652 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2873 2210 2652 2652 2652 1768 2210 2431 1989 2431 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2431 2431 2873 2652 1989 2210 1989 1768 2210 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2431 2652 2652 2210 2652 1989 1989 1989 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2652 2652 2652 2652 2652 1768 2431 2210 2210 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2873 2431 2431 2652 2431 2431 2431 2210 1989 2431 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2431 2652 2210 2652 2652 2431 2873 2652 2210 2652 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2652 2431 2652 2873 2210 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2431 2210 2873 2873 2210 2431 2652 1989 2431 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2210 2431 2873 2873 2431 2652 2431 2431 2210 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2431 2431 2210 2652 2431 2431 2873 2652 2210 2431 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2873 2652 2652 2873 2873 2210 2431 2652 2210 2873 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2652 2431 2431 2210 2873 2652 2873 2210 1989 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +2652 2210 2431 2431 2873 2652 2431 2652 2431 2652 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +1989 2652 2652 2431 2873 2873 2873 2431 2431 2210 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2652 2652 2652 2652 2210 2652 2431 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2652 2431 2431 2652 2873 2873 2652 2210 2431 2652 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2873 2431 2210 2210 2652 2873 2431 2873 2210 2210 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2652 2431 2652 2210 2652 2873 2210 2873 2652 2431 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2431 2652 2652 2873 2652 2431 1989 2873 1989 1989 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2210 2431 2210 2652 2652 2431 2652 2652 2652 2652 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2652 2652 2431 2431 2431 2873 2873 2652 2652 1989 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2210 2873 2431 2652 2873 2652 2652 2873 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2431 2652 2210 2431 2652 2873 2652 2873 2652 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +2652 2652 2431 2873 2873 2652 2652 2652 2431 2431 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2652 2652 2431 2873 2873 2431 2873 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +1989 2652 2873 2873 2873 2652 2873 2652 2431 2210 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2431 2873 2210 2431 2652 2873 2431 2652 2873 2652 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2210 2873 2431 2652 2873 2652 2210 2652 2210 2431 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2652 2431 2873 2873 2873 2873 2431 2652 2873 2210 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2873 2652 2652 2873 1989 2873 2431 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2431 2652 2873 2431 2873 2873 2652 2431 2431 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2873 2431 2873 2431 2652 2652 2873 2652 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +2210 2873 2652 2431 2431 2873 2652 2873 2652 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +1768 2873 2652 2652 2652 2431 2873 2873 2873 2431 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2652 2873 2210 2652 2431 2873 2431 2873 2652 2652 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2652 2873 2431 2210 2652 2873 2431 2652 2431 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2431 2431 2873 2873 2210 2431 2431 2873 2431 2652 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2210 2431 2873 2652 2873 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2652 2652 2652 2652 2652 2873 2210 2652 2873 2431 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2431 2873 2652 2431 2873 2873 2431 2210 2210 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 1989 2431 2652 2431 2873 2652 2431 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2873 2873 2873 2652 2652 2873 2652 2873 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2652 2652 2652 2652 2652 2652 2652 2652 2652 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2210 2873 2652 2431 2210 2652 2652 2873 2873 2652 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2873 2652 2652 2652 2652 2431 2652 2431 2431 2873 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2652 2873 2652 2210 2210 2652 2873 2873 2652 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2652 2431 2873 2652 2431 2652 2652 2210 2652 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2873 2873 2873 2873 2431 2652 2210 2873 2431 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2431 2652 2652 2652 2652 2873 2873 2652 2210 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2873 2652 2873 2210 2431 2873 2873 2873 2431 2873 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2431 2652 2652 2873 2652 2873 2652 2652 2652 2652 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2652 2873 2652 2431 2210 2210 2873 2431 2873 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2873 2873 2431 2652 2873 2652 2873 2873 2873 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2431 2873 2431 2431 2431 2652 2873 2652 2652 2652 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2652 2431 2652 2431 2431 2652 2873 2652 2431 2873 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2873 2873 2431 2431 2210 2873 2210 2652 2873 2652 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2431 2652 2873 2873 2431 2652 2431 2652 2873 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2431 2652 2873 2652 2210 2652 2431 2652 2873 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +2652 2652 2873 2873 2431 2873 2873 2873 2652 2431 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +1989 2873 2873 2652 2652 2873 2652 2873 2652 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2873 2652 2652 2873 2652 2652 2873 2431 2873 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2210 2652 2431 2652 2873 2210 2652 2873 2431 2431 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2431 2873 2431 2873 2873 2652 2873 2873 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2652 2873 2431 2431 2652 2431 2652 2873 2652 2652 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2210 2873 2652 2873 2873 2873 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2873 2652 2431 2652 2652 2652 2652 2652 2873 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2431 2652 2652 2431 2873 2431 2652 2873 2431 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2873 2652 2652 2431 2652 2431 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2431 2873 2873 2431 2652 2873 2873 1989 2431 2210 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2652 2431 2873 2652 2873 2652 2873 2873 2873 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +2210 2652 2431 2873 2652 2431 2873 2873 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +1768 2652 2652 2652 2873 2431 2652 2431 2431 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2652 2873 2652 2652 2873 2210 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2652 2873 2652 2652 2652 2652 2873 2873 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2652 2873 2652 2431 2652 1989 2652 2431 2210 2431 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 1989 2431 2210 2652 2431 2652 2873 2210 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2210 2431 2431 2873 2652 2652 2652 2431 2873 2652 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 1989 2652 2873 2652 2652 2873 2431 2431 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2873 2652 2873 2431 2873 2431 2652 2652 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2652 2873 2652 2431 2652 2210 2431 2873 2873 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2431 2431 2873 2652 2652 2652 2431 2652 2652 2431 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2652 2431 2652 2873 2431 2210 2652 2652 2431 2210 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2431 2652 2873 2873 2873 2652 2873 2652 2873 2431 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2431 2873 2431 2652 2431 2431 2652 2431 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2873 2210 2652 2431 2873 2431 2652 2431 2873 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2431 2873 2873 2431 2652 2652 2652 2210 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2431 2873 2873 2873 2210 2210 2652 2873 2431 2431 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2873 2431 2873 2431 2210 2652 2652 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2652 2431 2652 2652 2431 2652 2431 2873 2652 2652 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2431 2652 2431 2652 2431 2431 2652 2873 2652 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2652 2873 2431 2652 2652 2873 2652 2873 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2652 2873 2431 2873 2873 2210 1989 2652 2652 2431 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2431 2873 2431 2873 2210 2210 2431 2652 2873 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2873 2652 2873 2873 2652 2431 2431 2652 2652 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2873 2652 2210 2431 1768 2652 2873 2652 2652 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2431 2873 2652 2652 2873 2652 2873 2652 2873 2873 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2873 2652 1768 2431 2652 2210 2431 2431 2431 2652 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2431 2873 2210 2652 2873 2210 2873 2652 2873 2431 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2873 2652 2431 2652 2652 2431 2431 2652 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2652 2431 2652 2873 2431 2210 2873 2431 2652 2652 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2210 2431 2652 2210 2652 2210 2652 2652 2873 2210 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2873 2652 1989 2652 2652 2873 2652 2873 2431 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2431 2210 2873 2873 2652 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2652 2652 2652 2873 2652 2431 2652 2431 2873 2652 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2210 2652 1768 2652 2652 2652 2873 2652 2652 2210 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +2873 2873 2210 2431 2210 2431 2873 2873 2873 2431 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +1989 2652 2431 2873 2431 2652 2652 2652 2652 1989 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2873 2652 2873 2210 2652 2431 2873 2652 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2873 2652 2431 2873 2431 2652 2873 2652 1989 2652 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 2210 2873 2431 2652 2652 2652 2652 2431 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 1989 2873 2652 2210 2873 2210 2873 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2652 2652 2652 2873 1989 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2431 2210 2431 2873 2431 2652 2873 2652 2431 2652 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2652 2873 2431 2652 2873 2873 2873 2210 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2652 2652 2210 2652 1989 2431 2431 2652 2210 2431 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2652 2431 2652 2652 1989 2652 2873 2873 2652 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +2873 2873 2431 2652 2652 1989 2431 2431 2431 2210 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +1989 2873 2431 2652 2652 2431 2652 2873 2652 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2431 2873 2431 2652 2210 2210 2652 2652 2873 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2431 2873 2431 2652 2210 2431 2652 2210 2652 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2652 2652 2652 2431 2431 2652 2873 2210 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2431 2431 2652 2652 1989 2652 2873 2431 2873 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2873 2652 2652 2652 2431 2652 2431 2652 2431 2431 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2652 2431 2652 2431 1989 2431 2431 2873 1768 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2431 2652 2652 2652 2652 1989 2652 2431 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2431 2652 2873 2431 2431 2431 2431 2873 2652 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2652 2873 2431 2652 2431 2652 2652 2431 2652 2431 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2873 2873 2652 2210 2210 2210 2873 2210 2431 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2431 2431 2210 2431 2431 2652 2431 2652 2652 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2431 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2431 2873 2652 2652 2652 2652 2652 2652 2652 2431 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2873 2652 2210 2873 2652 2652 2652 2431 2652 2873 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2652 2873 2652 2431 2431 2431 2431 2210 2873 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2431 2431 2652 2873 2873 2210 2873 2210 2652 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2652 2873 2652 2873 2431 2873 2652 2210 2873 2431 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2431 2431 2431 2873 2873 2873 2652 2652 2652 2652 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2652 2873 2431 2210 2652 2210 2873 2873 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2873 2873 2873 2652 2652 2873 2652 2210 2431 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2210 2873 2431 2652 1989 2431 1989 2873 2652 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2431 2431 2652 2431 2652 2873 2431 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2652 2652 2431 2873 2431 2652 2873 2210 2873 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2431 2873 2652 2873 2652 2652 2873 1989 2431 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2652 2873 2873 2652 2873 2210 2210 1989 2652 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2431 2873 2652 2431 2873 2652 2652 2431 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2431 2652 1989 2873 2873 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2652 2652 2652 2431 2652 2652 2652 2652 2873 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +2431 2873 2873 2873 2873 2873 2652 2431 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +1989 2873 2210 2431 2652 2652 2873 2873 2652 2873 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2652 2652 2652 2431 2873 2652 2652 2652 2873 2652 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2431 2431 2652 2873 2873 2652 2652 2652 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2210 2873 2873 2652 2652 2652 2873 2873 2431 2873 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2873 2873 2652 2873 2210 2652 2873 2652 1989 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2431 2652 2873 2873 2431 2652 2873 2652 2210 2873 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2210 2210 2873 2873 2652 2652 2431 2210 2431 2431 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2431 2652 2652 2431 2210 2431 2873 2431 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2652 2873 2431 2873 2652 1989 2873 2652 1989 2652 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2873 1768 2873 2431 2210 2652 2431 2210 2431 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2652 2652 2431 2431 2431 2652 2873 2431 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2652 2652 2652 2210 2652 2431 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2431 2873 2873 2652 2652 2431 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2873 2431 2652 2652 1989 2652 2652 2652 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2210 2210 2873 2431 2431 2431 2873 2431 2873 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2652 2431 2652 2210 2873 2431 2652 2210 2431 2652 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2431 2652 2873 2873 2431 1547 2652 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2873 2873 2652 2431 2652 2210 2431 2873 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2210 2652 2652 2652 2652 2431 2652 2873 2652 2652 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2431 2210 2873 2652 2873 2431 2652 2652 2431 2873 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 1989 2431 2652 2652 2431 2873 2873 2210 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2210 2431 2873 2431 2873 1989 2652 2210 2652 2652 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2652 2652 2652 2652 2652 2210 2873 2873 2210 2210 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2210 1989 2431 2873 2210 1989 2431 2210 1989 2431 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2431 2210 2873 1989 2652 2210 2652 2431 2210 2873 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2652 2431 2873 1989 2210 2210 2210 2210 1989 2652 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2210 2431 2652 1989 2431 2431 2210 2873 2431 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2652 2431 2431 2210 2652 2431 2210 2873 2652 2873 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2431 2873 2431 2210 2652 1989 1989 1989 2210 2431 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2210 2431 2431 2210 2652 2431 2210 2652 2210 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2431 2873 1989 2210 2431 2210 2210 2431 1989 2873 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +2210 2652 2431 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +1989 2431 2210 2431 2652 2431 2210 2431 2431 2652 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2210 2210 2652 2431 2431 2431 2431 2431 2652 2431 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2431 2652 2431 2210 2431 2431 2210 2210 2210 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2210 2431 2431 2652 2652 1989 2652 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2652 2652 2431 2431 2652 2210 1989 1989 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 2431 1989 1989 2652 2873 2210 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +2431 1989 2431 2210 2210 2652 1989 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +1989 2652 2431 1989 2652 2431 2210 2431 2431 2652 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2431 2431 2431 2210 2210 1989 1768 2210 2431 2210 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2210 2431 2210 1989 2431 2210 1547 2210 2210 2431 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2652 2210 2210 2210 2210 2210 1768 2210 2652 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2431 2210 2431 2210 2210 2210 1768 2431 2210 2210 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2652 2431 2210 2431 2431 2431 1768 2431 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2873 2210 2431 1989 2431 1989 1768 2210 2431 1989 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2431 2652 1768 2210 2431 2210 1989 1989 1989 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2652 2652 2210 2431 2431 2210 1989 1989 2652 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 2431 2210 1989 2210 1989 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2873 2652 1989 2431 2431 1989 1547 2210 2431 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2431 2431 2431 2431 2210 2431 1768 1768 2210 2431 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2873 1989 2210 2652 1989 2210 1547 1768 2652 2210 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +2652 2431 2210 2873 2210 1989 2210 1768 2431 2431 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +1989 1547 1989 2652 2210 1768 2210 1547 2652 2210 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2652 2431 1989 2873 2431 1989 1989 1989 2652 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2431 2431 2652 2210 2210 1989 1989 1989 2873 2431 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2652 2431 2210 2431 2431 1768 1989 1768 2652 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2873 1989 2652 2652 2210 1989 2210 2210 2873 1989 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2652 2431 2431 2210 2210 2210 2210 2210 2873 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2873 2210 2210 2652 1768 2210 1989 2210 2431 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2431 1989 2431 2652 2210 2210 2210 2210 1768 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2652 2431 2210 2873 2431 1768 2210 1989 2652 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2431 2431 1989 2210 2652 1989 2431 2210 2431 2431 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2652 1768 1989 2652 1547 2210 2431 2431 2431 2210 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 2431 2652 2652 2652 2210 2210 2431 1989 2431 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2431 1768 2431 2652 2652 2210 2210 2210 2210 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2210 2210 2652 2431 1989 1989 2210 2210 2652 2210 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2652 1989 2431 2652 2652 2431 2431 1989 2431 2431 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2431 2431 2431 2873 2873 2210 1989 2210 2652 2652 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2652 2210 2652 2431 2873 2431 2210 2431 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2210 1989 2431 2873 2431 1768 2210 2210 2652 2431 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +2431 2431 2652 2652 2431 2431 2431 2431 2431 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +1989 1989 2431 2873 2652 1989 2210 1547 1989 2652 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2210 2431 2431 2873 2431 2210 1989 2210 2210 2210 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2652 2873 2210 2431 2210 2431 1768 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2431 2431 2431 2873 2210 2431 2431 2431 2431 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2210 1989 2652 2652 2210 1989 2431 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2431 2431 2431 2652 2873 2431 2431 2210 2431 2652 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2210 2652 1989 2873 2210 2431 2210 2431 2431 2431 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2652 2652 2210 2652 2652 2652 2431 2431 2210 2652 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2431 2652 2210 2873 1989 2652 2431 2431 2210 2210 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2431 2431 2652 2431 2431 2431 2431 2431 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2652 2431 2210 2652 2431 2652 2210 2210 2431 2652 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2431 2431 2431 2652 1989 2431 2210 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +2431 2652 2210 1989 2210 2210 2431 2652 2431 2431 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +1989 2873 2210 2431 2652 2210 1989 2431 2210 2652 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +2210 2652 1989 2210 2431 2431 1989 2431 1768 2431 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +1989 2431 2210 2431 2431 2652 2431 2431 2652 2652 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2431 2431 2431 2210 2652 2210 2431 2210 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2873 2210 2210 2431 2652 2431 2431 1989 2431 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2431 2652 1989 2210 2210 2431 2431 2431 2431 2873 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2652 2431 2210 2210 2210 2652 2431 2210 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2873 2210 2210 2210 2210 2652 2652 2210 2652 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2652 2210 2431 1547 2652 2652 2652 2210 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2431 2431 2431 2431 1768 2431 2210 2210 2431 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2873 2210 2210 2210 2431 2431 1989 2210 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2652 2431 2431 2210 2210 2210 2431 2431 2431 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2210 2431 2431 1989 2652 2431 2431 1989 2652 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2873 2210 2431 1989 2873 2652 2431 1989 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2210 2431 2210 2431 2210 2873 2431 2210 2431 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2431 2873 2210 2210 1768 2873 2431 1989 1989 2431 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +2210 2652 2652 2210 1326 2652 2652 1989 2210 1989 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +1989 2873 2210 2431 2210 2431 2652 2210 2431 2652 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +2210 2210 2652 2210 1989 2431 2431 1989 2210 2431 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2210 2431 2210 1768 2873 2652 2431 2652 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2652 1989 1547 2431 2431 2431 2210 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +1989 2873 2210 2431 1989 2652 2873 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +2210 2873 2210 2431 1989 2873 2431 2431 2431 2652 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1768 2652 1989 2431 2210 1989 2652 2652 2210 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +1989 2873 2431 2431 1989 2652 2431 2652 2652 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2652 2210 2210 1989 2652 2873 2431 2210 2431 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +2210 2210 2431 2652 1547 2873 2652 2210 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +1989 2431 2652 2652 1326 2431 2652 2431 2431 2652 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 +2210 2652 2210 1989 1768 2652 2431 2652 2431 2210 diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py new file mode 100644 index 00000000..740888e2 --- /dev/null +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -0,0 +1,978 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest +import numpy as np +from typing import List, Dict +from math import ceil, floor +import ortools.linear_solver.pywraplp as pywraplp + +from andromede.expression import literal, param, var +from andromede.expression.expression import ExpressionRange, port_field +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.model import Model, ModelPort, float_parameter, float_variable, model +from andromede.model.model import PortFieldDefinition, PortFieldId +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable +from andromede.model.constraint import Constraint +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioIndex, + TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, + create_component, +) +from andromede.study.data import AbstractDataStructure + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) + +THERMAL_CLUSTER_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("max_generating"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max_min_down_time") - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + +THERMAL_CLUSTER_MODEL_LP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + upper_bound=param("max_generating"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + - param("max_failure") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) + +THERMAL_CLUSTER_MODEL_FAST = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("cost", CONSTANT), + int_parameter("nb_units_max", CONSTANT), + float_parameter("mingen", TIME_AND_SCENARIO_FREE), + float_parameter("failures", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=param("mingen"), + upper_bound=param("failures"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * param("nb_units_max"), + ), + ], + objective_operational_contribution=(param("cost") * var("generation")) + .sum() + .expec(), +) + + +THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id="GEN", + parameters=[ + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", CONSTANT), + ], + variables=[ + float_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + constraints=[ + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), +) + +BLOCK_MODEL_FAST_HEURISTIC = model( + id="GEN", + parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], + variables=[ + int_variable( + "t_ajust", + lower_bound=literal(0), + upper_bound=literal(1), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + "Choose one t ajust", + var("t_ajust").sum() == literal(1), + ) + ], + objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), +) + + +def test_milp_version() -> None: + """ """ + number_hours = 168 + scenarios = 1 + + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + {"G" + str(i): ConstantData(0) for i in range(1, 7)}, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenario=scenario, + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + check_output_values(problem, "milp", week, scenario=scenario) + + expected_cost = [[123092396 - 22, 95357001]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def check_output_values( + problem: OptimizationProblem, mode: str, week: int, scenario: int +) -> None: + output = OutputValues(problem) + + expected_output_clusters_file = open( + "tests/functional/data_second_complex_case/" + + mode + + "/" + + str(scenario) + + "/details-hourly.txt", + "r", + ) + expected_output_clusters = expected_output_clusters_file.readlines() + + expected_output_general_file = open( + "tests/functional/data_second_complex_case/" + + mode + + "/" + + str(scenario) + + "/values-hourly.txt", + "r", + ) + expected_output_general = expected_output_general_file.readlines() + + for i, cluster in enumerate(["G" + str(i) for i in [2]]): + + assert output.component(cluster).var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[4 + i]), abs=1e-10) + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ] + ] + if mode != "fast": + assert output.component(cluster).var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[6 + i])) + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(float(line.strip().split("\t")[11 if mode == "milp" else 12])) + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + + assert output.component("U").var("unsupplied_energy").value == [ + [ + pytest.approx(float(line.strip().split("\t")[10 if mode == "milp" else 11])) + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + + +def test_accurate_heuristic() -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares + """ + + number_hours = 168 + scenarios = 2 + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + + for scenario in range(scenarios): + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=False, + week=week, + scenario=scenario, + ) + status = problem_optimization_1.solver.Solve(parameters) + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units and round it to integer + output_1 = OutputValues(problem_optimization_1) + nb_on_min: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round( + np.array(output_1.component(g).var("nb_on").value), 12 + ) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + {g: n_guide}, + number_hours, + thermal_cluster=g, + week=week, + scenario=scenario, + ) + status = problem_accurate_heuristic.solver.Solve(parameters) + + assert status == problem_accurate_heuristic.solver.OPTIMAL + + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = pd.DataFrame( + np.transpose( + np.ceil( + np.array(output_heuristic.component(g).var("nb_on").value) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + nb_on_min, + number_hours, + lp_relaxation=True, + fast=False, + week=week, + scenario=scenario, + ) + status = problem_optimization_2.solver.Solve(parameters) + + assert status == problem_optimization_2.solver.OPTIMAL + + check_output_values( + problem_optimization_2, "accurate", week, scenario=scenario + ) + + expected_cost = [ + [78996726, 102215087 - 69500], + [17587733, 17650089 - 10081], + ] + assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_fast_heuristic() -> None: + """ + Solve the same problem as before with the heuristic fast of Antares + """ + + number_hours = 168 + scenarios = 2 + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + + for scenario in range(scenarios): + for week in range(2): + # First optimization + problem_optimization_1 = create_complex_problem( + {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, + number_hours, + lp_relaxation=True, + fast=True, + week=week, + scenario=scenario, + ) + status = problem_optimization_1.solver.Solve(parameters) + + assert status == problem_optimization_1.solver.OPTIMAL + + # Get number of on units + output_1 = OutputValues(problem_optimization_1) + + # Solve heuristic problem + mingen: Dict[str, AbstractDataStructure] = {} + for g in ["G1", "G2", "G3"]: + mingen_heuristic = create_problem_fast_heuristic( + output_1.component(g).var("generation").value, # type:ignore + number_hours, + thermal_cluster=g, + week=week, + scenario=scenario, + ) + + mingen[g] = TimeScenarioSeriesData(mingen_heuristic) + + # Second optimization with lower bound modified + problem_optimization_2 = create_complex_problem( + mingen, + number_hours, + lp_relaxation=True, + fast=True, + week=week, + scenario=scenario, + ) + status = problem_optimization_2.solver.Solve(parameters) + + assert status == problem_optimization_2.solver.OPTIMAL + + check_output_values(problem_optimization_2, "fast", week, scenario) + + expected_cost = [ + [79277215 - 630089, 102461792 - 699765], + [17803738 - 661246, 17720390 - 661246], + ] + assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def create_complex_problem( + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + lp_relaxation: bool, + fast: bool, + week: int, + scenario: int, +) -> OptimizationProblem: + + database = generate_database( + lower_bound, number_hours, week=week, scenario=scenario + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + node = Node(model=NODE_BALANCE_MODEL, id="1") + demand = create_component(model=DEMAND_MODEL, id="D") + + if fast: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") + gen4 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G4") + gen5 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G5") + gen6 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G6") + elif lp_relaxation: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") + gen4 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G4") + gen5 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G5") + gen6 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G6") + else: + gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") + gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") + gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") + gen4 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G4") + gen5 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G5") + gen6 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G6") + + spillage = create_component(model=SPILLAGE_MODEL, id="S") + + unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") + + network = Network("test") + network.add_node(node) + network.add_component(demand) + # network.add_component(gen1) + network.add_component(gen2) + # network.add_component(gen3) + # network.add_component(gen4) + # network.add_component(gen5) + # network.add_component(gen6) + network.add_component(spillage) + network.add_component(unsupplied_energy) + network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) + # network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) + # network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) + # network.connect(PortRef(gen4, "balance_port"), PortRef(node, "balance_port")) + # network.connect(PortRef(gen5, "balance_port"), PortRef(node, "balance_port")) + # network.connect(PortRef(gen6, "balance_port"), PortRef(node, "balance_port")) + network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) + network.connect( + PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") + ) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + return problem + + +def generate_database( + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + week: int, + scenario: int, +) -> DataBase: + + delta, pmax, pmin, cost, units = get_data() + + database = DataBase() + + for i, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): + + max_generating = get_failures_for_cluster(week, scenario, cluster, number_hours) + max_units = max_generating / pmax[cluster] + max_units.where(max_units < units[cluster], units[cluster], inplace=True) + max_failures = ( + pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) + - max_units + ) + max_failures.where(max_failures > 0, 0, inplace=True) + nb_units_max_min_down_time = pd.DataFrame( + np.roll(max_units.values, delta[cluster]), index=max_units.index + ) + end_failures = max_units - pd.DataFrame( + np.roll(max_units.values, 1), index=max_units.index + ) + end_failures.where(end_failures > 0, 0, inplace=True) + for j in range(delta[cluster]): + nb_units_max_min_down_time += pd.DataFrame( + np.roll(end_failures.values, j), index=end_failures.index + ) + + database.add_data(cluster, "p_max", ConstantData(pmax[cluster])) + database.add_data(cluster, "p_min", ConstantData(pmin[cluster])) + database.add_data(cluster, "cost", ConstantData(cost[cluster])) + database.add_data(cluster, "startup_cost", ConstantData(10 * (i + 1))) + database.add_data(cluster, "fixed_cost", ConstantData(i + 1)) + database.add_data(cluster, "d_min_up", ConstantData(delta[cluster])) + database.add_data(cluster, "d_min_down", ConstantData(delta[cluster])) + database.add_data(cluster, "nb_units_min", lower_bound[cluster]) + database.add_data( + cluster, + "nb_units_max", + TimeScenarioSeriesData(max_units), + ) + database.add_data( + cluster, + "max_generating", + TimeScenarioSeriesData(max_generating), + ) + database.add_data( + cluster, + "max_failure", + TimeScenarioSeriesData(max_failures), + ) + database.add_data( + cluster, + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time), + ) + database.add_data(cluster, "mingen", lower_bound[cluster]) + + database.add_data("U", "cost", ConstantData(750)) + database.add_data("S", "cost", ConstantData(10)) + + output_file = open( + "tests/functional/data_second_complex_case/milp/" + + str(scenario) + + "/values-hourly.txt", + "r", + ) + output = output_file.readlines() + + demand_data = pd.DataFrame( + data=[ + float(line.strip().split("\t")[7]) + for line in output[168 * week + 7 : 168 * week + 7 + 168] + ], + index=[i for i in range(number_hours)], + columns=[0], + ) + + demand_time_scenario_series = TimeScenarioSeriesData(demand_data) + database.add_data("D", "demand", demand_time_scenario_series) + return database + + +def get_data() -> ( + tuple[ + Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int] + ] +): + delta = {"G1": 3, "G2": 3, "G3": 2, "G4": 1, "G5": 1, "G6": 3} + pmax = {"G1": 64, "G2": 221, "G3": 486, "G4": 218, "G5": 29, "G6": 159} + pmin = {"G1": 32, "G2": 111, "G3": 194, "G4": 87, "G5": 14, "G6": 80} + cost = { + "G1": 165, + "G2": 117, + "G3": 106, + "G4": 135, + "G5": 191, + "G6": 166, + } + units = {"G1": 21, "G2": 13, "G3": 13, "G4": 2, "G5": 7, "G6": 16} + return delta, pmax, pmin, cost, units + + +def get_failures_for_cluster( + week: int, scenario: int, cluster: str, number_hours: int +) -> pd.DataFrame: + input_file = np.loadtxt( + f"tests/functional/data_second_complex_case/series_{cluster}.txt", + delimiter="\t", + ) + + failures_data = pd.DataFrame( + data=input_file[ + number_hours * week : number_hours * week + number_hours, scenario + ], + index=[i for i in range(number_hours)], + columns=[0], + ) + + return failures_data + + +def create_problem_accurate_heuristic( + lower_bound: Dict[str, AbstractDataStructure], + number_hours: int, + thermal_cluster: str, + week: int, + scenario: int, +) -> OptimizationProblem: + + database = DataBase() + + if thermal_cluster == "G1": + + database.add_data("G1", "p_max", ConstantData(410)) + database.add_data("G1", "p_min", ConstantData(180)) + database.add_data("G1", "cost", ConstantData(96)) + database.add_data("G1", "startup_cost", ConstantData(100500)) + database.add_data("G1", "fixed_cost", ConstantData(1)) + database.add_data("G1", "d_min_up", ConstantData(8)) + database.add_data("G1", "d_min_down", ConstantData(8)) + database.add_data("G1", "nb_units_min", lower_bound["G1"]) + database.add_data("G1", "nb_units_max", ConstantData(1)) + database.add_data( + "G1", + "failures", + TimeScenarioSeriesData( + get_failures_for_cluster(week, scenario, "G1", number_hours) + ), + ) + database.add_data("G1", "mingen", lower_bound["G1"]) + elif thermal_cluster == "G2": + database.add_data("G2", "p_max", ConstantData(90)) + database.add_data("G2", "p_min", ConstantData(60)) + database.add_data("G2", "cost", ConstantData(137)) + database.add_data("G2", "startup_cost", ConstantData(24500)) + database.add_data("G2", "fixed_cost", ConstantData(1)) + database.add_data("G2", "d_min_up", ConstantData(11)) + database.add_data("G2", "d_min_down", ConstantData(11)) + database.add_data("G2", "nb_units_min", lower_bound["G2"]) + database.add_data("G2", "nb_units_max", ConstantData(3)) + database.add_data( + "G2", + "failures", + TimeScenarioSeriesData( + get_failures_for_cluster(week, scenario, "G2", number_hours) + ), + ) + database.add_data("G2", "mingen", lower_bound["G2"]) + elif thermal_cluster == "G3": + + database.add_data("G3", "p_max", ConstantData(275)) + database.add_data("G3", "p_min", ConstantData(150)) + database.add_data("G3", "cost", ConstantData(107)) + database.add_data("G3", "startup_cost", ConstantData(69500)) + database.add_data("G3", "fixed_cost", ConstantData(1)) + database.add_data("G3", "d_min_up", ConstantData(9)) + database.add_data("G3", "d_min_down", ConstantData(9)) + database.add_data("G3", "nb_units_min", lower_bound["G3"]) + database.add_data("G3", "nb_units_max", ConstantData(4)) + database.add_data( + "G3", + "failures", + TimeScenarioSeriesData( + get_failures_for_cluster(week, scenario, "G3", number_hours) + ), + ) + database.add_data("G3", "mingen", lower_bound["G3"]) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + gen = create_component( + model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id=thermal_cluster + ) + + network = Network("test") + network.add_component(gen) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + return problem + + +def create_problem_fast_heuristic( + lower_bound: List[List[float]], + number_hours: int, + thermal_cluster: str, + week: int, + scenario: int, +) -> pd.DataFrame: + + data_delta, data_pmax, data_pmin, _, _ = get_data() + delta = data_delta[thermal_cluster] + pmax = data_pmax[thermal_cluster] + pmin = data_pmin[thermal_cluster] + pdispo = get_failures_for_cluster(week, scenario, thermal_cluster, number_hours) + + cost = pd.DataFrame( + np.zeros((delta + 1, 1)), + index=[i for i in range(delta + 1)], + columns=[0], + ) + n = np.zeros((number_hours, delta + 1, 1)) + for h in range(delta + 1): + cost_h = 0 + n_k = max( + [convert_to_integer(lower_bound[0][j] / pmax) for j in range(h)] + + [ + convert_to_integer(lower_bound[0][j] / pmax) + for j in range(number_hours - delta + h, number_hours) + ] + ) + cost_h += delta * n_k + n[0:h, h, 0] = n_k + n[number_hours - delta + h : number_hours, h, 0] = n_k + t = h + while t < number_hours - delta + h: + k = floor((t - h) / delta) * delta + h + n_k = max( + [ + convert_to_integer(lower_bound[0][j] / pmax) + for j in range(k, min(number_hours - delta + h, k + delta)) + ] + ) + cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k + n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k + t += delta + cost.iloc[h, 0] = cost_h + + hmin = np.argmin(cost.values[:, 0]) + mingen_heuristic = pd.DataFrame( + np.minimum(n[:, hmin, :] * pmin, pdispo[thermal_cluster]), + index=[i for i in range(number_hours)], + columns=[0], + ) + + return mingen_heuristic + + +def convert_to_integer(x: float) -> int: + return ceil(round(x, 12)) From 96fa1660d26327309ee63335bafe25c059839d98 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 13 Jun 2024 16:27:53 +0200 Subject: [PATCH 16/93] remove milp test --- .../milp/0/details-hourly.txt | 343 ------------------ .../milp/0/values-hourly.txt | 343 ------------------ .../test_heuristic_second_complex_case.py | 117 ------ 3 files changed, 803 deletions(-) delete mode 100644 tests/functional/data_second_complex_case/milp/0/details-hourly.txt delete mode 100644 tests/functional/data_second_complex_case/milp/0/values-hourly.txt diff --git a/tests/functional/data_second_complex_case/milp/0/details-hourly.txt b/tests/functional/data_second_complex_case/milp/0/details-hourly.txt deleted file mode 100644 index 4ebf56fd..00000000 --- a/tests/functional/data_second_complex_case/milp/0/details-hourly.txt +++ /dev/null @@ -1,343 +0,0 @@ -41_NL area de hourly - VARIABLES BEGIN END - 3 1 336 - -41_NL hourly cluster 2 cluster 2 cluster 2 - MWh NP Cost - Euro NODU - index day month hour - 1 01 JAN 00:00 0 0 0 - 2 01 JAN 01:00 0 0 0 - 3 01 JAN 02:00 0 0 0 - 4 01 JAN 03:00 0 0 0 - 5 01 JAN 04:00 0 0 0 - 6 01 JAN 05:00 1610 176 8 - 7 01 JAN 06:00 2092 60 10 - 8 01 JAN 07:00 2210 20 10 - 9 01 JAN 08:00 2210 20 10 - 10 01 JAN 09:00 2210 20 10 - 11 01 JAN 10:00 2210 20 10 - 12 01 JAN 11:00 1043 10 5 - 13 01 JAN 12:00 0 0 0 - 14 01 JAN 13:00 0 0 0 - 15 01 JAN 14:00 0 0 0 - 16 01 JAN 15:00 0 0 0 - 17 01 JAN 16:00 0 0 0 - 18 01 JAN 17:00 0 0 0 - 19 01 JAN 18:00 0 0 0 - 20 01 JAN 19:00 0 0 0 - 21 01 JAN 20:00 0 0 0 - 22 01 JAN 21:00 0 0 0 - 23 01 JAN 22:00 0 0 0 - 24 01 JAN 23:00 0 0 0 - 25 02 JAN 00:00 0 0 0 - 26 02 JAN 01:00 0 0 0 - 27 02 JAN 02:00 0 0 0 - 28 02 JAN 03:00 0 0 0 - 29 02 JAN 04:00 0 0 0 - 30 02 JAN 05:00 0 0 0 - 31 02 JAN 06:00 2210 220 10 - 32 02 JAN 07:00 1600 20 10 - 33 02 JAN 08:00 2210 20 10 - 34 02 JAN 09:00 2210 20 10 - 35 02 JAN 10:00 2210 20 10 - 36 02 JAN 11:00 2210 20 10 - 37 02 JAN 12:00 2210 20 10 - 38 02 JAN 13:00 2210 20 10 - 39 02 JAN 14:00 2210 20 10 - 40 02 JAN 15:00 2210 20 10 - 41 02 JAN 16:00 2210 20 10 - 42 02 JAN 17:00 2210 20 10 - 43 02 JAN 18:00 2210 20 10 - 44 02 JAN 19:00 1110 20 10 - 45 02 JAN 20:00 1147 20 10 - 46 02 JAN 21:00 2210 20 10 - 47 02 JAN 22:00 2210 20 10 - 48 02 JAN 23:00 2210 20 10 - 49 03 JAN 00:00 2431 42 11 - 50 03 JAN 01:00 2431 22 11 - 51 03 JAN 02:00 2431 22 11 - 52 03 JAN 03:00 2406 22 11 - 53 03 JAN 04:00 2431 22 11 - 54 03 JAN 05:00 1904 22 11 - 55 03 JAN 06:00 1221 22 11 - 56 03 JAN 07:00 2169 22 11 - 57 03 JAN 08:00 2431 22 11 - 58 03 JAN 09:00 0 0 0 - 59 03 JAN 10:00 0 0 0 - 60 03 JAN 11:00 0 0 0 - 61 03 JAN 12:00 0 0 0 - 62 03 JAN 13:00 0 0 0 - 63 03 JAN 14:00 0 0 0 - 64 03 JAN 15:00 0 0 0 - 65 03 JAN 16:00 222 44 2 - 66 03 JAN 17:00 222 4 2 - 67 03 JAN 18:00 1424 114 7 - 68 03 JAN 19:00 555 10 5 - 69 03 JAN 20:00 555 10 5 - 70 03 JAN 21:00 111 2 1 - 71 03 JAN 22:00 0 0 0 - 72 03 JAN 23:00 0 0 0 - 73 04 JAN 00:00 0 0 0 - 74 04 JAN 01:00 0 0 0 - 75 04 JAN 02:00 0 0 0 - 76 04 JAN 03:00 0 0 0 - 77 04 JAN 04:00 0 22 0 - 78 04 JAN 05:00 0 0 0 - 79 04 JAN 06:00 0 0 0 - 80 04 JAN 07:00 2431 242 11 - 81 04 JAN 08:00 2431 22 11 - 82 04 JAN 09:00 2431 22 11 - 83 04 JAN 10:00 1221 22 11 - 84 04 JAN 11:00 2431 22 11 - 85 04 JAN 12:00 0 0 0 - 86 04 JAN 13:00 0 0 0 - 87 04 JAN 14:00 0 0 0 - 88 04 JAN 15:00 0 0 0 - 89 04 JAN 16:00 0 0 0 - 90 04 JAN 17:00 0 0 0 - 91 04 JAN 18:00 0 0 0 - 92 04 JAN 19:00 0 0 0 - 93 04 JAN 20:00 0 0 0 - 94 04 JAN 21:00 0 0 0 - 95 04 JAN 22:00 0 0 0 - 96 04 JAN 23:00 0 0 0 - 97 05 JAN 00:00 0 0 0 - 98 05 JAN 01:00 0 0 0 - 99 05 JAN 02:00 0 0 0 - 100 05 JAN 03:00 0 0 0 - 101 05 JAN 04:00 0 0 0 - 102 05 JAN 05:00 0 0 0 - 103 05 JAN 06:00 0 0 0 - 104 05 JAN 07:00 0 0 0 - 105 05 JAN 08:00 0 0 0 - 106 05 JAN 09:00 0 0 0 - 107 05 JAN 10:00 0 0 0 - 108 05 JAN 11:00 0 0 0 - 109 05 JAN 12:00 0 0 0 - 110 05 JAN 13:00 0 0 0 - 111 05 JAN 14:00 0 0 0 - 112 05 JAN 15:00 0 0 0 - 113 05 JAN 16:00 0 0 0 - 114 05 JAN 17:00 0 0 0 - 115 05 JAN 18:00 0 0 0 - 116 05 JAN 19:00 0 0 0 - 117 05 JAN 20:00 0 0 0 - 118 05 JAN 21:00 0 0 0 - 119 05 JAN 22:00 0 0 0 - 120 05 JAN 23:00 0 0 0 - 121 06 JAN 00:00 0 0 0 - 122 06 JAN 01:00 0 0 0 - 123 06 JAN 02:00 0 0 0 - 124 06 JAN 03:00 0 0 0 - 125 06 JAN 04:00 0 0 0 - 126 06 JAN 05:00 0 0 0 - 127 06 JAN 06:00 0 0 0 - 128 06 JAN 07:00 0 0 0 - 129 06 JAN 08:00 0 0 0 - 130 06 JAN 09:00 0 0 0 - 131 06 JAN 10:00 0 0 0 - 132 06 JAN 11:00 0 0 0 - 133 06 JAN 12:00 0 0 0 - 134 06 JAN 13:00 0 0 0 - 135 06 JAN 14:00 0 0 0 - 136 06 JAN 15:00 0 0 0 - 137 06 JAN 16:00 888 176 8 - 138 06 JAN 17:00 888 16 8 - 139 06 JAN 18:00 1731 16 8 - 140 06 JAN 19:00 0 0 0 - 141 06 JAN 20:00 0 0 0 - 142 06 JAN 21:00 0 0 0 - 143 06 JAN 22:00 2018 264 12 - 144 06 JAN 23:00 2873 46 13 - 145 07 JAN 00:00 2652 24 12 - 146 07 JAN 01:00 0 0 0 - 147 07 JAN 02:00 0 0 0 - 148 07 JAN 03:00 0 0 0 - 149 07 JAN 04:00 0 0 0 - 150 07 JAN 05:00 0 0 0 - 151 07 JAN 06:00 0 0 0 - 152 07 JAN 07:00 2652 264 12 - 153 07 JAN 08:00 2652 24 12 - 154 07 JAN 09:00 1332 24 12 - 155 07 JAN 10:00 2527 24 12 - 156 07 JAN 11:00 2526 24 12 - 157 07 JAN 12:00 2500 24 12 - 158 07 JAN 13:00 2474 24 12 - 159 07 JAN 14:00 0 0 0 - 160 07 JAN 15:00 0 0 0 - 161 07 JAN 16:00 0 0 0 - 162 07 JAN 17:00 0 0 0 - 163 07 JAN 18:00 2652 264 12 - 164 07 JAN 19:00 2652 24 12 - 165 07 JAN 20:00 2652 24 12 - 166 07 JAN 21:00 2652 24 12 - 167 07 JAN 22:00 222 4 2 - 168 07 JAN 23:00 392 4 2 - 169 08 JAN 00:00 2873 246 13 - 170 08 JAN 01:00 2873 26 13 - 171 08 JAN 02:00 2873 26 13 - 172 08 JAN 03:00 2873 26 13 - 173 08 JAN 04:00 2873 26 13 - 174 08 JAN 05:00 2873 26 13 - 175 08 JAN 06:00 2873 26 13 - 176 08 JAN 07:00 2873 26 13 - 177 08 JAN 08:00 2873 26 13 - 178 08 JAN 09:00 1332 24 12 - 179 08 JAN 10:00 2454 24 12 - 180 08 JAN 11:00 2482 24 12 - 181 08 JAN 12:00 2482 24 12 - 182 08 JAN 13:00 2432 24 12 - 183 08 JAN 14:00 0 0 0 - 184 08 JAN 15:00 0 0 0 - 185 08 JAN 16:00 0 0 0 - 186 08 JAN 17:00 0 0 0 - 187 08 JAN 18:00 0 0 0 - 188 08 JAN 19:00 0 0 0 - 189 08 JAN 20:00 0 0 0 - 190 08 JAN 21:00 0 0 0 - 191 08 JAN 22:00 0 0 0 - 192 08 JAN 23:00 0 0 0 - 193 09 JAN 00:00 0 0 0 - 194 09 JAN 01:00 0 0 0 - 195 09 JAN 02:00 0 0 0 - 196 09 JAN 03:00 0 0 0 - 197 09 JAN 04:00 0 0 0 - 198 09 JAN 05:00 0 0 0 - 199 09 JAN 06:00 0 0 0 - 200 09 JAN 07:00 2652 264 12 - 201 09 JAN 08:00 1332 24 12 - 202 09 JAN 09:00 1332 24 12 - 203 09 JAN 10:00 2348 22 11 - 204 09 JAN 11:00 2348 22 11 - 205 09 JAN 12:00 2348 22 11 - 206 09 JAN 13:00 0 0 0 - 207 09 JAN 14:00 0 0 0 - 208 09 JAN 15:00 0 0 0 - 209 09 JAN 16:00 0 0 0 - 210 09 JAN 17:00 1332 264 12 - 211 09 JAN 18:00 1934 24 12 - 212 09 JAN 19:00 2652 24 12 - 213 09 JAN 20:00 0 0 0 - 214 09 JAN 21:00 0 0 0 - 215 09 JAN 22:00 0 0 0 - 216 09 JAN 23:00 0 0 0 - 217 10 JAN 00:00 0 0 0 - 218 10 JAN 01:00 0 0 0 - 219 10 JAN 02:00 0 0 0 - 220 10 JAN 03:00 0 0 0 - 221 10 JAN 04:00 0 0 0 - 222 10 JAN 05:00 0 0 0 - 223 10 JAN 06:00 0 0 0 - 224 10 JAN 07:00 1110 220 10 - 225 10 JAN 08:00 1963 20 10 - 226 10 JAN 09:00 2210 20 10 - 227 10 JAN 10:00 0 0 0 - 228 10 JAN 11:00 0 0 0 - 229 10 JAN 12:00 0 0 0 - 230 10 JAN 13:00 0 0 0 - 231 10 JAN 14:00 0 0 0 - 232 10 JAN 15:00 0 0 0 - 233 10 JAN 16:00 0 0 0 - 234 10 JAN 17:00 0 0 0 - 235 10 JAN 18:00 0 0 0 - 236 10 JAN 19:00 0 0 0 - 237 10 JAN 20:00 2210 220 10 - 238 10 JAN 21:00 2210 20 10 - 239 10 JAN 22:00 2210 20 10 - 240 10 JAN 23:00 2210 20 10 - 241 11 JAN 00:00 2652 64 12 - 242 11 JAN 01:00 2652 24 12 - 243 11 JAN 02:00 2652 24 12 - 244 11 JAN 03:00 2652 24 12 - 245 11 JAN 04:00 2652 24 12 - 246 11 JAN 05:00 2652 24 12 - 247 11 JAN 06:00 2652 24 12 - 248 11 JAN 07:00 2652 24 12 - 249 11 JAN 08:00 444 8 4 - 250 11 JAN 09:00 705 8 4 - 251 11 JAN 10:00 729 8 4 - 252 11 JAN 11:00 0 0 0 - 253 11 JAN 12:00 0 0 0 - 254 11 JAN 13:00 0 0 0 - 255 11 JAN 14:00 0 0 0 - 256 11 JAN 15:00 0 0 0 - 257 11 JAN 16:00 0 0 0 - 258 11 JAN 17:00 0 0 0 - 259 11 JAN 18:00 0 0 0 - 260 11 JAN 19:00 0 0 0 - 261 11 JAN 20:00 0 0 0 - 262 11 JAN 21:00 0 0 0 - 263 11 JAN 22:00 0 0 0 - 264 11 JAN 23:00 0 0 0 - 265 12 JAN 00:00 0 0 0 - 266 12 JAN 01:00 0 0 0 - 267 12 JAN 02:00 0 0 0 - 268 12 JAN 03:00 0 0 0 - 269 12 JAN 04:00 0 0 0 - 270 12 JAN 05:00 0 0 0 - 271 12 JAN 06:00 0 0 0 - 272 12 JAN 07:00 0 0 0 - 273 12 JAN 08:00 0 0 0 - 274 12 JAN 09:00 754 88 4 - 275 12 JAN 10:00 679 8 4 - 276 12 JAN 11:00 626 8 4 - 277 12 JAN 12:00 0 0 0 - 278 12 JAN 13:00 0 0 0 - 279 12 JAN 14:00 0 0 0 - 280 12 JAN 15:00 0 0 0 - 281 12 JAN 16:00 0 0 0 - 282 12 JAN 17:00 0 0 0 - 283 12 JAN 18:00 0 0 0 - 284 12 JAN 19:00 0 0 0 - 285 12 JAN 20:00 0 0 0 - 286 12 JAN 21:00 1403 154 7 - 287 12 JAN 22:00 777 14 7 - 288 12 JAN 23:00 1094 14 7 - 289 13 JAN 00:00 0 0 0 - 290 13 JAN 01:00 0 0 0 - 291 13 JAN 02:00 0 0 0 - 292 13 JAN 03:00 0 0 0 - 293 13 JAN 04:00 0 0 0 - 294 13 JAN 05:00 333 66 3 - 295 13 JAN 06:00 1054 50 5 - 296 13 JAN 07:00 991 10 5 - 297 13 JAN 08:00 222 4 2 - 298 13 JAN 09:00 631 26 3 - 299 13 JAN 10:00 444 28 4 - 300 13 JAN 11:00 754 8 4 - 301 13 JAN 12:00 752 8 4 - 302 13 JAN 13:00 0 0 0 - 303 13 JAN 14:00 0 0 0 - 304 13 JAN 15:00 0 0 0 - 305 13 JAN 16:00 0 0 0 - 306 13 JAN 17:00 0 0 0 - 307 13 JAN 18:00 0 0 0 - 308 13 JAN 19:00 0 0 0 - 309 13 JAN 20:00 299 44 2 - 310 13 JAN 21:00 1768 136 8 - 311 13 JAN 22:00 1768 16 8 - 312 13 JAN 23:00 1768 16 8 - 313 14 JAN 00:00 2431 82 11 - 314 14 JAN 01:00 2431 22 11 - 315 14 JAN 02:00 2431 22 11 - 316 14 JAN 03:00 2431 22 11 - 317 14 JAN 04:00 2431 22 11 - 318 14 JAN 05:00 2431 22 11 - 319 14 JAN 06:00 2431 22 11 - 320 14 JAN 07:00 2431 22 11 - 321 14 JAN 08:00 0 0 0 - 322 14 JAN 09:00 0 0 0 - 323 14 JAN 10:00 0 0 0 - 324 14 JAN 11:00 221 22 1 - 325 14 JAN 12:00 202 2 1 - 326 14 JAN 13:00 202 2 1 - 327 14 JAN 14:00 0 0 0 - 328 14 JAN 15:00 0 0 0 - 329 14 JAN 16:00 0 0 0 - 330 14 JAN 17:00 0 0 0 - 331 14 JAN 18:00 0 0 0 - 332 14 JAN 19:00 0 0 0 - 333 14 JAN 20:00 1184 132 6 - 334 14 JAN 21:00 1161 12 6 - 335 14 JAN 22:00 1135 12 6 - 336 14 JAN 23:00 1135 12 6 diff --git a/tests/functional/data_second_complex_case/milp/0/values-hourly.txt b/tests/functional/data_second_complex_case/milp/0/values-hourly.txt deleted file mode 100644 index c39189ca..00000000 --- a/tests/functional/data_second_complex_case/milp/0/values-hourly.txt +++ /dev/null @@ -1,343 +0,0 @@ -41_NL area va hourly - VARIABLES BEGIN END - 8 1 336 - -41_NL hourly OV. COST OP. COST MISC. NDG LOAD H. ROR GAS UNSP. ENRG SPIL. ENRG - Euro Euro MWh MWh MWh MWh MWh MWh - index day month hour - 1 01 JAN 00:00 9100 0 0 -910 0 0 0 910 - 2 01 JAN 01:00 3200 0 0 -320 0 0 0 320 - 3 01 JAN 02:00 3470 0 0 -347 0 0 0 347 - 4 01 JAN 03:00 3470 0 0 -347 0 0 0 347 - 5 01 JAN 04:00 3720 0 0 -372 0 0 0 372 - 6 01 JAN 05:00 188546 188546 0 1610 0 1610 0 0 - 7 01 JAN 06:00 244824 244824 0 2092 0 2092 0 0 - 8 01 JAN 07:00 1128590 258590 0 3370 0 2210 1160 0 - 9 01 JAN 08:00 5877590 258590 0 9702 0 2210 7492 0 - 10 01 JAN 09:00 552590 258590 0 2602 0 2210 392 0 - 11 01 JAN 10:00 440840 258590 0 2453 0 2210 243 0 - 12 01 JAN 11:00 122041 122041 0 1043 0 1043 0 0 - 13 01 JAN 12:00 35230 0 0 -3523 0 0 0 3523 - 14 01 JAN 13:00 35770 0 0 -3577 0 0 0 3577 - 15 01 JAN 14:00 43030 0 0 -4303 0 0 0 4303 - 16 01 JAN 15:00 43310 0 0 -4331 0 0 0 4331 - 17 01 JAN 16:00 35440 0 0 -3544 0 0 0 3544 - 18 01 JAN 17:00 61740 0 0 -6174 0 0 0 6174 - 19 01 JAN 18:00 110800 0 0 -11080 0 0 0 11080 - 20 01 JAN 19:00 111310 0 0 -11131 0 0 0 11131 - 21 01 JAN 20:00 62630 0 0 -6263 0 0 0 6263 - 22 01 JAN 21:00 38760 0 0 -3876 0 0 0 3876 - 23 01 JAN 22:00 67450 0 0 -6745 0 0 0 6745 - 24 01 JAN 23:00 83060 0 0 -8306 0 0 0 8306 - 25 02 JAN 00:00 52690 0 0 -5269 0 0 0 5269 - 26 02 JAN 01:00 50690 0 0 -5069 0 0 0 5069 - 27 02 JAN 02:00 81990 0 0 -8199 0 0 0 8199 - 28 02 JAN 03:00 82230 0 0 -8223 0 0 0 8223 - 29 02 JAN 04:00 75010 0 0 -7501 0 0 0 7501 - 30 02 JAN 05:00 2420 0 0 -242 0 0 0 242 - 31 02 JAN 06:00 1160290 258790 0 3412 0 2210 1202 0 - 32 02 JAN 07:00 187220 187220 0 1600 0 1600 0 0 - 33 02 JAN 08:00 505340 258590 0 2539 0 2210 329 0 - 34 02 JAN 09:00 6982340 258590 0 11175 0 2210 8965 0 - 35 02 JAN 10:00 7004090 258590 0 11204 0 2210 8994 0 - 36 02 JAN 11:00 7006340 258590 0 11207 0 2210 8997 0 - 37 02 JAN 12:00 7007840 258590 0 11209 0 2210 8999 0 - 38 02 JAN 13:00 7007090 258590 0 11208 0 2210 8998 0 - 39 02 JAN 14:00 6986090 258590 0 11180 0 2210 8970 0 - 40 02 JAN 15:00 6985340 258590 0 11179 0 2210 8969 0 - 41 02 JAN 16:00 6965840 258590 0 11153 0 2210 8943 0 - 42 02 JAN 17:00 4490090 258590 0 7852 0 2210 5642 0 - 43 02 JAN 18:00 432590 258590 0 2442 0 2210 232 0 - 44 02 JAN 19:00 177800 129890 0 -3681 0 1110 0 4791 - 45 02 JAN 20:00 134219 134219 0 1147 0 1147 0 0 - 46 02 JAN 21:00 1301840 258590 0 3601 0 2210 1391 0 - 47 02 JAN 22:00 1283090 258590 0 3576 0 2210 1366 0 - 48 02 JAN 23:00 759590 258590 0 2878 0 2210 668 0 - 49 03 JAN 00:00 1125219 284469 0 3552 0 2431 1121 0 - 50 03 JAN 01:00 581449 284449 0 2827 0 2431 396 0 - 51 03 JAN 02:00 1106449 284449 0 3527 0 2431 1096 0 - 52 03 JAN 03:00 281524 281524 0 2406 0 2406 0 0 - 53 03 JAN 04:00 398449 284449 0 2583 0 2431 152 0 - 54 03 JAN 05:00 222790 222790 0 1904 0 1904 0 0 - 55 03 JAN 06:00 150059 142879 0 503 0 1221 0 718 - 56 03 JAN 07:00 253795 253795 0 2169 0 2169 0 0 - 57 03 JAN 08:00 963199 284449 0 3336 0 2431 905 0 - 58 03 JAN 09:00 44240 0 0 -4424 0 0 0 4424 - 59 03 JAN 10:00 43990 0 0 -4399 0 0 0 4399 - 60 03 JAN 11:00 44010 0 0 -4401 0 0 0 4401 - 61 03 JAN 12:00 44030 0 0 -4403 0 0 0 4403 - 62 03 JAN 13:00 44280 0 0 -4428 0 0 0 4428 - 63 03 JAN 14:00 288020 0 0 -28802 0 0 0 28802 - 64 03 JAN 15:00 242460 0 0 -24246 0 0 0 24246 - 65 03 JAN 16:00 210588 26018 0 -18235 0 222 0 18457 - 66 03 JAN 17:00 121378 25978 0 -9318 0 222 0 9540 - 67 03 JAN 18:00 166722 166722 0 1424 0 1424 0 0 - 68 03 JAN 19:00 88545 64945 0 -1805 0 555 0 2360 - 69 03 JAN 20:00 65865 64945 0 463 0 555 0 92 - 70 03 JAN 21:00 13069 12989 0 103 0 111 0 8 - 71 03 JAN 22:00 8640 0 0 -864 0 0 0 864 - 72 03 JAN 23:00 12700 0 0 -1270 0 0 0 1270 - 73 04 JAN 00:00 13210 0 0 -1321 0 0 0 1321 - 74 04 JAN 01:00 4190 0 0 -419 0 0 0 419 - 75 04 JAN 02:00 2350 0 0 -235 0 0 0 235 - 76 04 JAN 03:00 13720 0 0 -1372 0 0 0 1372 - 77 04 JAN 04:00 18772 22 0 25 0 0 25 0 - 78 04 JAN 05:00 10870 0 0 -1087 0 0 0 1087 - 79 04 JAN 06:00 13490 0 0 -1349 0 0 0 1349 - 80 04 JAN 07:00 3095669 284669 0 6179 0 2431 3748 0 - 81 04 JAN 08:00 4916449 284449 0 8607 0 2431 6176 0 - 82 04 JAN 09:00 1225699 284449 0 3686 0 2431 1255 0 - 83 04 JAN 10:00 166279 142879 0 -1119 0 1221 0 2340 - 84 04 JAN 11:00 319699 284449 0 2478 0 2431 47 0 - 85 04 JAN 12:00 31420 0 0 -3142 0 0 0 3142 - 86 04 JAN 13:00 71040 0 0 -7104 0 0 0 7104 - 87 04 JAN 14:00 104010 0 0 -10401 0 0 0 10401 - 88 04 JAN 15:00 104300 0 0 -10430 0 0 0 10430 - 89 04 JAN 16:00 104530 0 0 -10453 0 0 0 10453 - 90 04 JAN 17:00 104770 0 0 -10477 0 0 0 10477 - 91 04 JAN 18:00 105290 0 0 -10529 0 0 0 10529 - 92 04 JAN 19:00 105780 0 0 -10578 0 0 0 10578 - 93 04 JAN 20:00 106540 0 0 -10654 0 0 0 10654 - 94 04 JAN 21:00 106500 0 0 -10650 0 0 0 10650 - 95 04 JAN 22:00 81710 0 0 -8171 0 0 0 8171 - 96 04 JAN 23:00 106950 0 0 -10695 0 0 0 10695 - 97 05 JAN 00:00 107470 0 0 -10747 0 0 0 10747 - 98 05 JAN 01:00 107450 0 0 -10745 0 0 0 10745 - 99 05 JAN 02:00 76910 0 0 -7691 0 0 0 7691 - 100 05 JAN 03:00 37570 0 0 -3757 0 0 0 3757 - 101 05 JAN 04:00 33940 0 0 -3394 0 0 0 3394 - 102 05 JAN 05:00 13970 0 0 -1397 0 0 0 1397 - 103 05 JAN 06:00 13690 0 0 -1369 0 0 0 1369 - 104 05 JAN 07:00 12450 0 0 -1245 0 0 0 1245 - 105 05 JAN 08:00 81090 0 0 -8109 0 0 0 8109 - 106 05 JAN 09:00 98390 0 0 -9839 0 0 0 9839 - 107 05 JAN 10:00 110690 0 0 -11069 0 0 0 11069 - 108 05 JAN 11:00 110700 0 0 -11070 0 0 0 11070 - 109 05 JAN 12:00 110960 0 0 -11096 0 0 0 11096 - 110 05 JAN 13:00 111230 0 0 -11123 0 0 0 11123 - 111 05 JAN 14:00 111480 0 0 -11148 0 0 0 11148 - 112 05 JAN 15:00 271170 0 0 -27117 0 0 0 27117 - 113 05 JAN 16:00 331990 0 0 -33199 0 0 0 33199 - 114 05 JAN 17:00 251050 0 0 -25105 0 0 0 25105 - 115 05 JAN 18:00 173420 0 0 -17342 0 0 0 17342 - 116 05 JAN 19:00 105900 0 0 -10590 0 0 0 10590 - 117 05 JAN 20:00 105730 0 0 -10573 0 0 0 10573 - 118 05 JAN 21:00 106710 0 0 -10671 0 0 0 10671 - 119 05 JAN 22:00 107220 0 0 -10722 0 0 0 10722 - 120 05 JAN 23:00 107530 0 0 -10753 0 0 0 10753 - 121 06 JAN 00:00 108890 0 0 -10889 0 0 0 10889 - 122 06 JAN 01:00 108900 0 0 -10890 0 0 0 10890 - 123 06 JAN 02:00 109160 0 0 -10916 0 0 0 10916 - 124 06 JAN 03:00 109180 0 0 -10918 0 0 0 10918 - 125 06 JAN 04:00 109170 0 0 -10917 0 0 0 10917 - 126 06 JAN 05:00 84180 0 0 -8418 0 0 0 8418 - 127 06 JAN 06:00 83910 0 0 -8391 0 0 0 8391 - 128 06 JAN 07:00 75630 0 0 -7563 0 0 0 7563 - 129 06 JAN 08:00 73630 0 0 -7363 0 0 0 7363 - 130 06 JAN 09:00 43000 0 0 -4300 0 0 0 4300 - 131 06 JAN 10:00 55160 0 0 -5516 0 0 0 5516 - 132 06 JAN 11:00 54640 0 0 -5464 0 0 0 5464 - 133 06 JAN 12:00 54890 0 0 -5489 0 0 0 5489 - 134 06 JAN 13:00 55380 0 0 -5538 0 0 0 5538 - 135 06 JAN 14:00 55600 0 0 -5560 0 0 0 5560 - 136 06 JAN 15:00 55610 0 0 -5561 0 0 0 5561 - 137 06 JAN 16:00 168792 104072 0 -5584 0 888 0 6472 - 138 06 JAN 17:00 168902 103912 0 -5611 0 888 0 6499 - 139 06 JAN 18:00 202543 202543 0 1731 0 1731 0 0 - 140 06 JAN 19:00 18900 0 0 -1890 0 0 0 1890 - 141 06 JAN 20:00 51150 0 0 -5115 0 0 0 5115 - 142 06 JAN 21:00 40240 0 0 -4024 0 0 0 4024 - 143 06 JAN 22:00 236370 236370 0 2018 0 2018 0 0 - 144 06 JAN 23:00 1411687 336187 0 4307 0 2873 1434 0 - 145 07 JAN 00:00 1860558 310308 0 4719 0 2652 2067 0 - 146 07 JAN 01:00 40120 0 0 -4012 0 0 0 4012 - 147 07 JAN 02:00 48730 0 0 -4873 0 0 0 4873 - 148 07 JAN 03:00 48730 0 0 -4873 0 0 0 4873 - 149 07 JAN 04:00 48730 0 0 -4873 0 0 0 4873 - 150 07 JAN 05:00 48730 0 0 -4873 0 0 0 4873 - 151 07 JAN 06:00 44770 0 0 -4477 0 0 0 4477 - 152 07 JAN 07:00 888798 310548 0 3423 0 2652 771 0 - 153 07 JAN 08:00 2730558 310308 0 5879 0 2652 3227 0 - 154 07 JAN 09:00 236858 155868 0 -6767 0 1332 0 8099 - 155 07 JAN 10:00 295683 295683 0 2527 0 2527 0 0 - 156 07 JAN 11:00 295566 295566 0 2526 0 2526 0 0 - 157 07 JAN 12:00 292524 292524 0 2500 0 2500 0 0 - 158 07 JAN 13:00 289482 289482 0 2474 0 2474 0 0 - 159 07 JAN 14:00 235580 0 0 -23558 0 0 0 23558 - 160 07 JAN 15:00 217530 0 0 -21753 0 0 0 21753 - 161 07 JAN 16:00 161470 0 0 -16147 0 0 0 16147 - 162 07 JAN 17:00 37020 0 0 -3702 0 0 0 3702 - 163 07 JAN 18:00 4016298 310548 0 7593 0 2652 4941 0 - 164 07 JAN 19:00 1160808 310308 0 3786 0 2652 1134 0 - 165 07 JAN 20:00 5604558 310308 0 9711 0 2652 7059 0 - 166 07 JAN 21:00 4697808 310308 0 8502 0 2652 5850 0 - 167 07 JAN 22:00 28108 25978 0 9 0 222 0 213 - 168 07 JAN 23:00 45868 45868 0 392 0 392 0 0 - 169 08 JAN 00:00 2153637 336387 0 5296 0 2873 2423 0 - 170 08 JAN 01:00 2538167 336167 0 5809 0 2873 2936 0 - 171 08 JAN 02:00 2454167 336167 0 5697 0 2873 2824 0 - 172 08 JAN 03:00 3081917 336167 0 6534 0 2873 3661 0 - 173 08 JAN 04:00 459167 336167 0 3037 0 2873 164 0 - 174 08 JAN 05:00 624167 336167 0 3257 0 2873 384 0 - 175 08 JAN 06:00 2037917 336167 0 5142 0 2873 2269 0 - 176 08 JAN 07:00 1916417 336167 0 4980 0 2873 2107 0 - 177 08 JAN 08:00 1998167 336167 0 5089 0 2873 2216 0 - 178 08 JAN 09:00 170098 155868 0 -91 0 1332 0 1423 - 179 08 JAN 10:00 287142 287142 0 2454 0 2454 0 0 - 180 08 JAN 11:00 290418 290418 0 2482 0 2482 0 0 - 181 08 JAN 12:00 290418 290418 0 2482 0 2482 0 0 - 182 08 JAN 13:00 284568 284568 0 2432 0 2432 0 0 - 183 08 JAN 14:00 156970 0 0 -15697 0 0 0 15697 - 184 08 JAN 15:00 270690 0 0 -27069 0 0 0 27069 - 185 08 JAN 16:00 300910 0 0 -30091 0 0 0 30091 - 186 08 JAN 17:00 259050 0 0 -25905 0 0 0 25905 - 187 08 JAN 18:00 139850 0 0 -13985 0 0 0 13985 - 188 08 JAN 19:00 53460 0 0 -5346 0 0 0 5346 - 189 08 JAN 20:00 61760 0 0 -6176 0 0 0 6176 - 190 08 JAN 21:00 62230 0 0 -6223 0 0 0 6223 - 191 08 JAN 22:00 62490 0 0 -6249 0 0 0 6249 - 192 08 JAN 23:00 62990 0 0 -6299 0 0 0 6299 - 193 09 JAN 00:00 63240 0 0 -6324 0 0 0 6324 - 194 09 JAN 01:00 63500 0 0 -6350 0 0 0 6350 - 195 09 JAN 02:00 63480 0 0 -6348 0 0 0 6348 - 196 09 JAN 03:00 63490 0 0 -6349 0 0 0 6349 - 197 09 JAN 04:00 63260 0 0 -6326 0 0 0 6326 - 198 09 JAN 05:00 62980 0 0 -6298 0 0 0 6298 - 199 09 JAN 06:00 62790 0 0 -6279 0 0 0 6279 - 200 09 JAN 07:00 544548 310548 0 2964 0 2652 312 0 - 201 09 JAN 08:00 196088 155868 0 -2690 0 1332 0 4022 - 202 09 JAN 09:00 158368 155868 0 1082 0 1332 0 250 - 203 09 JAN 10:00 274738 274738 0 2348 0 2348 0 0 - 204 09 JAN 11:00 274738 274738 0 2348 0 2348 0 0 - 205 09 JAN 12:00 274738 274738 0 2348 0 2348 0 0 - 206 09 JAN 13:00 77830 0 0 -7783 0 0 0 7783 - 207 09 JAN 14:00 199490 0 0 -19949 0 0 0 19949 - 208 09 JAN 15:00 201620 0 0 -20162 0 0 0 20162 - 209 09 JAN 16:00 203610 0 0 -20361 0 0 0 20361 - 210 09 JAN 17:00 236928 156108 0 -6750 0 1332 0 8082 - 211 09 JAN 18:00 226302 226302 0 1934 0 1934 0 0 - 212 09 JAN 19:00 2085558 310308 0 5019 0 2652 2367 0 - 213 09 JAN 20:00 20980 0 0 -2098 0 0 0 2098 - 214 09 JAN 21:00 4240 0 0 -424 0 0 0 424 - 215 09 JAN 22:00 20610 0 0 -2061 0 0 0 2061 - 216 09 JAN 23:00 47790 0 0 -4779 0 0 0 4779 - 217 10 JAN 00:00 43450 0 0 -4345 0 0 0 4345 - 218 10 JAN 01:00 47140 0 0 -4714 0 0 0 4714 - 219 10 JAN 02:00 57490 0 0 -5749 0 0 0 5749 - 220 10 JAN 03:00 57490 0 0 -5749 0 0 0 5749 - 221 10 JAN 04:00 57460 0 0 -5746 0 0 0 5746 - 222 10 JAN 05:00 57200 0 0 -5720 0 0 0 5720 - 223 10 JAN 06:00 56700 0 0 -5670 0 0 0 5670 - 224 10 JAN 07:00 196640 130090 0 -5545 0 1110 0 6655 - 225 10 JAN 08:00 229691 229691 0 1963 0 1963 0 0 - 226 10 JAN 09:00 1651340 258590 0 4067 0 2210 1857 0 - 227 10 JAN 10:00 9450 0 0 -945 0 0 0 945 - 228 10 JAN 11:00 2200 0 0 -220 0 0 0 220 - 229 10 JAN 12:00 2470 0 0 -247 0 0 0 247 - 230 10 JAN 13:00 2720 0 0 -272 0 0 0 272 - 231 10 JAN 14:00 9730 0 0 -973 0 0 0 973 - 232 10 JAN 15:00 44730 0 0 -4473 0 0 0 4473 - 233 10 JAN 16:00 43690 0 0 -4369 0 0 0 4369 - 234 10 JAN 17:00 11160 0 0 -1116 0 0 0 1116 - 235 10 JAN 18:00 54920 0 0 -5492 0 0 0 5492 - 236 10 JAN 19:00 9070 0 0 -907 0 0 0 907 - 237 10 JAN 20:00 3843040 258790 0 6989 0 2210 4779 0 - 238 10 JAN 21:00 2596340 258590 0 5327 0 2210 3117 0 - 239 10 JAN 22:00 2614340 258590 0 5351 0 2210 3141 0 - 240 10 JAN 23:00 2612840 258590 0 5349 0 2210 3139 0 - 241 11 JAN 00:00 3010348 310348 0 6252 0 2652 3600 0 - 242 11 JAN 01:00 3009558 310308 0 6251 0 2652 3599 0 - 243 11 JAN 02:00 2990058 310308 0 6225 0 2652 3573 0 - 244 11 JAN 03:00 2990058 310308 0 6225 0 2652 3573 0 - 245 11 JAN 04:00 2989308 310308 0 6224 0 2652 3572 0 - 246 11 JAN 05:00 2971308 310308 0 6200 0 2652 3548 0 - 247 11 JAN 06:00 2970558 310308 0 6199 0 2652 3547 0 - 248 11 JAN 07:00 6104808 310308 0 10378 0 2652 7726 0 - 249 11 JAN 08:00 65546 51956 0 -915 0 444 0 1359 - 250 11 JAN 09:00 82493 82493 0 705 0 705 0 0 - 251 11 JAN 10:00 85301 85301 0 729 0 729 0 0 - 252 11 JAN 11:00 16870 0 0 -1687 0 0 0 1687 - 253 11 JAN 12:00 36480 0 0 -3648 0 0 0 3648 - 254 11 JAN 13:00 36740 0 0 -3674 0 0 0 3674 - 255 11 JAN 14:00 37020 0 0 -3702 0 0 0 3702 - 256 11 JAN 15:00 37270 0 0 -3727 0 0 0 3727 - 257 11 JAN 16:00 37000 0 0 -3700 0 0 0 3700 - 258 11 JAN 17:00 43960 0 0 -4396 0 0 0 4396 - 259 11 JAN 18:00 104430 0 0 -10443 0 0 0 10443 - 260 11 JAN 19:00 104950 0 0 -10495 0 0 0 10495 - 261 11 JAN 20:00 88460 0 0 -8846 0 0 0 8846 - 262 11 JAN 21:00 61150 0 0 -6115 0 0 0 6115 - 263 11 JAN 22:00 55200 0 0 -5520 0 0 0 5520 - 264 11 JAN 23:00 45070 0 0 -4507 0 0 0 4507 - 265 12 JAN 00:00 55280 0 0 -5528 0 0 0 5528 - 266 12 JAN 01:00 63070 0 0 -6307 0 0 0 6307 - 267 12 JAN 02:00 82500 0 0 -8250 0 0 0 8250 - 268 12 JAN 03:00 82760 0 0 -8276 0 0 0 8276 - 269 12 JAN 04:00 82740 0 0 -8274 0 0 0 8274 - 270 12 JAN 05:00 82730 0 0 -8273 0 0 0 8273 - 271 12 JAN 06:00 66660 0 0 -6666 0 0 0 6666 - 272 12 JAN 07:00 77250 0 0 -7725 0 0 0 7725 - 273 12 JAN 08:00 54910 0 0 -5491 0 0 0 5491 - 274 12 JAN 09:00 88306 88306 0 754 0 754 0 0 - 275 12 JAN 10:00 79451 79451 0 679 0 679 0 0 - 276 12 JAN 11:00 73250 73250 0 626 0 626 0 0 - 277 12 JAN 12:00 15550 0 0 -1555 0 0 0 1555 - 278 12 JAN 13:00 37770 0 0 -3777 0 0 0 3777 - 279 12 JAN 14:00 38000 0 0 -3800 0 0 0 3800 - 280 12 JAN 15:00 38290 0 0 -3829 0 0 0 3829 - 281 12 JAN 16:00 37280 0 0 -3728 0 0 0 3728 - 282 12 JAN 17:00 38690 0 0 -3869 0 0 0 3869 - 283 12 JAN 18:00 102850 0 0 -10285 0 0 0 10285 - 284 12 JAN 19:00 74770 0 0 -7477 0 0 0 7477 - 285 12 JAN 20:00 24760 0 0 -2476 0 0 0 2476 - 286 12 JAN 21:00 164305 164305 0 1403 0 1403 0 0 - 287 12 JAN 22:00 128873 90923 0 -3018 0 777 0 3795 - 288 12 JAN 23:00 128012 128012 0 1094 0 1094 0 0 - 289 13 JAN 00:00 17350 0 0 -1735 0 0 0 1735 - 290 13 JAN 01:00 17730 0 0 -1773 0 0 0 1773 - 291 13 JAN 02:00 20410 0 0 -2041 0 0 0 2041 - 292 13 JAN 03:00 6930 0 0 -693 0 0 0 693 - 293 13 JAN 04:00 13300 0 0 -1330 0 0 0 1330 - 294 13 JAN 05:00 39777 39027 0 258 0 333 0 75 - 295 13 JAN 06:00 123368 123368 0 1054 0 1054 0 0 - 296 13 JAN 07:00 115957 115957 0 991 0 991 0 0 - 297 13 JAN 08:00 47458 25978 0 -1926 0 222 0 2148 - 298 13 JAN 09:00 73853 73853 0 631 0 631 0 0 - 299 13 JAN 10:00 60636 51976 0 -422 0 444 0 866 - 300 13 JAN 11:00 88226 88226 0 754 0 754 0 0 - 301 13 JAN 12:00 87992 87992 0 752 0 752 0 0 - 302 13 JAN 13:00 21740 0 0 -2174 0 0 0 2174 - 303 13 JAN 14:00 97690 0 0 -9769 0 0 0 9769 - 304 13 JAN 15:00 100390 0 0 -10039 0 0 0 10039 - 305 13 JAN 16:00 104210 0 0 -10421 0 0 0 10421 - 306 13 JAN 17:00 97170 0 0 -9717 0 0 0 9717 - 307 13 JAN 18:00 93520 0 0 -9352 0 0 0 9352 - 308 13 JAN 19:00 9920 0 0 -992 0 0 0 992 - 309 13 JAN 20:00 35027 35027 0 299 0 299 0 0 - 310 13 JAN 21:00 3216742 206992 0 5781 0 1768 4013 0 - 311 13 JAN 22:00 3098122 206872 0 5623 0 1768 3855 0 - 312 13 JAN 23:00 3060622 206872 0 5573 0 1768 3805 0 - 313 14 JAN 00:00 2315509 284509 0 5139 0 2431 2708 0 - 314 14 JAN 01:00 2280199 284449 0 5092 0 2431 2661 0 - 315 14 JAN 02:00 2273449 284449 0 5083 0 2431 2652 0 - 316 14 JAN 03:00 1530199 284449 0 4092 0 2431 1661 0 - 317 14 JAN 04:00 1530949 284449 0 4093 0 2431 1662 0 - 318 14 JAN 05:00 1440199 284449 0 3972 0 2431 1541 0 - 319 14 JAN 06:00 1017199 284449 0 3408 0 2431 977 0 - 320 14 JAN 07:00 1935199 284449 0 4632 0 2431 2201 0 - 321 14 JAN 08:00 9200 0 0 -920 0 0 0 920 - 322 14 JAN 09:00 6040 0 0 -604 0 0 0 604 - 323 14 JAN 10:00 13390 0 0 -1339 0 0 0 1339 - 324 14 JAN 11:00 31129 25879 0 228 0 221 7 0 - 325 14 JAN 12:00 23636 23636 0 202 0 202 0 0 - 326 14 JAN 13:00 23636 23636 0 202 0 202 0 0 - 327 14 JAN 14:00 13620 0 0 -1362 0 0 0 1362 - 328 14 JAN 15:00 20140 0 0 -2014 0 0 0 2014 - 329 14 JAN 16:00 42840 0 0 -4284 0 0 0 4284 - 330 14 JAN 17:00 84070 0 0 -8407 0 0 0 8407 - 331 14 JAN 18:00 13640 0 0 -1364 0 0 0 1364 - 332 14 JAN 19:00 53510 0 0 -5351 0 0 0 5351 - 333 14 JAN 20:00 138660 138660 0 1184 0 1184 0 0 - 334 14 JAN 21:00 135849 135849 0 1161 0 1161 0 0 - 335 14 JAN 22:00 132807 132807 0 1135 0 1135 0 0 - 336 14 JAN 23:00 132807 132807 0 1135 0 1135 0 0 diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 740888e2..7f4d80a9 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -364,43 +364,6 @@ ) -def test_milp_version() -> None: - """ """ - number_hours = 168 - scenarios = 1 - - for scenario in range(scenarios): - for week in range(2): - problem = create_complex_problem( - {"G" + str(i): ConstantData(0) for i in range(1, 7)}, - number_hours, - lp_relaxation=False, - fast=False, - week=week, - scenario=scenario, - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) - - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - check_output_values(problem, "milp", week, scenario=scenario) - - expected_cost = [[123092396 - 22, 95357001]] - assert problem.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] - ) - - def check_output_values( problem: OptimizationProblem, mode: str, week: int, scenario: int ) -> None: @@ -622,86 +585,6 @@ def test_fast_heuristic() -> None: ) -def create_complex_problem( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - lp_relaxation: bool, - fast: bool, - week: int, - scenario: int, -) -> OptimizationProblem: - - database = generate_database( - lower_bound, number_hours, week=week, scenario=scenario - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - if fast: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") - gen4 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G4") - gen5 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G5") - gen6 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G6") - elif lp_relaxation: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") - gen4 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G4") - gen5 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G5") - gen6 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G6") - else: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") - gen4 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G4") - gen5 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G5") - gen6 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G6") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") - - network = Network("test") - network.add_node(node) - network.add_component(demand) - # network.add_component(gen1) - network.add_component(gen2) - # network.add_component(gen3) - # network.add_component(gen4) - # network.add_component(gen5) - # network.add_component(gen6) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - # network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) - # network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) - # network.connect(PortRef(gen4, "balance_port"), PortRef(node, "balance_port")) - # network.connect(PortRef(gen5, "balance_port"), PortRef(node, "balance_port")) - # network.connect(PortRef(gen6, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - return problem - - def generate_database( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, From add82e9a70a912c796d99050cb0ff3a37dd1abf2 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 13 Jun 2024 16:28:39 +0200 Subject: [PATCH 17/93] Add test accurate for second test case --- .../accurate/itr1_accurate_cluster1.txt | 168 + .../accurate/itr1_accurate_cluster2.txt | 168 + .../accurate/itr1_accurate_cluster3.txt | 168 + .../accurate/itr1_accurate_cluster4.txt | 168 + .../accurate/itr1_accurate_cluster5.txt | 168 + .../accurate/itr1_accurate_cluster6.txt | 168 + .../accurate/itr2_accurate_cluster1.txt | 168 + .../accurate/itr2_accurate_cluster2.txt | 168 + .../accurate/itr2_accurate_cluster3.txt | 168 + .../accurate/itr2_accurate_cluster4.txt | 168 + .../accurate/itr2_accurate_cluster5.txt | 168 + .../accurate/itr2_accurate_cluster6.txt | 168 + .../data_second_complex_case/series_G1.txt | 8760 +++++++++++++++++ .../data_second_complex_case/series_G3.txt | 8760 +++++++++++++++++ .../data_second_complex_case/series_G4.txt | 8760 +++++++++++++++++ .../data_second_complex_case/series_G5.txt | 8760 +++++++++++++++++ .../data_second_complex_case/series_G6.txt | 8760 +++++++++++++++++ .../test_heuristic_second_complex_case.py | 204 +- 18 files changed, 45879 insertions(+), 141 deletions(-) create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt create mode 100644 tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt create mode 100644 tests/functional/data_second_complex_case/series_G1.txt create mode 100644 tests/functional/data_second_complex_case/series_G3.txt create mode 100644 tests/functional/data_second_complex_case/series_G4.txt create mode 100644 tests/functional/data_second_complex_case/series_G5.txt create mode 100644 tests/functional/data_second_complex_case/series_G6.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt new file mode 100644 index 00000000..bd865f9e --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.743750000000000000e+01 +1.789062500000000000e+01 +1.793750000000000000e+01 +1.796875000000000000e+01 +1.795312500000000000e+01 +1.751562500000000000e+01 +1.750000000000000000e+01 +1.709375000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt new file mode 100644 index 00000000..5e14ec30 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000178e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +1.000000000000000178e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.638009049773756054e+00 +2.638009049773756054e+00 +1.143438914027149345e+01 +8.796380090497738280e+00 +8.796380090497738280e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.200000000000000178e+01 +1.200000000000000178e+01 +1.200000000000000178e+01 +1.200000000000000178e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt new file mode 100644 index 00000000..00928311 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.312757201646090888e+00 +3.312757201646090888e+00 +7.853909465020576519e+00 +1.000000000000000000e+01 +2.146090534979423925e+00 +2.146090534979423925e+00 +2.146090534979423925e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +7.020576131687243482e+00 +7.020576131687243482e+00 +7.020576131687243482e+00 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +1.100000000000000178e+01 +5.024691358024691468e+00 +0.000000000000000000e+00 +2.360082304526749386e+00 +7.409465020576131877e+00 +7.358024691358025393e+00 +7.308641975308642458e+00 +7.308641975308642458e+00 +7.257201646090535974e+00 +7.257201646090535974e+00 +5.314814814814814881e+00 +5.314814814814814881e+00 +3.917695473251029181e+00 +2.592783505154639290e+00 +6.864197530864197816e+00 +6.864197530864197816e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.080246913580247270e+00 +2.032921810699588772e+00 +9.526748971193416127e-01 +9.526748971193416127e-01 +2.119341563786008298e-01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +9.440717447006756302e+00 +1.000000000000000000e+01 +4.311087817377124765e+00 +4.201646090534979727e+00 +4.201646090534979727e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.664609053497942526e+00 +2.664609053497942526e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.152263374485596792e+00 +9.709876543209876587e+00 +9.709876543209876587e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.188481090441874777e+00 +5.090534979423869011e+00 +5.090534979423869011e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.764409762662733527e+00 +8.764409762662733527e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt new file mode 100644 index 00000000..e5b6153c --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +1.357798165137614754e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.146788990825688137e-01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +1.798165137614678999e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt new file mode 100644 index 00000000..a32397fb --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +7.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +6.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt new file mode 100644 index 00000000..aeac4f37 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +6.024999999999997691e+00 +8.784591194968554007e+00 +1.253459119496855401e+01 +6.509591194968556316e+00 +3.750000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.622641509433962348e+00 +4.622641509433962348e+00 +4.622641509433962348e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.068710691823897996e+00 +9.881210691823898884e+00 +9.993710691823899595e+00 +6.925000000000000711e+00 +1.125000000000000028e-01 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt new file mode 100644 index 00000000..cec951c8 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +1.800000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt new file mode 100644 index 00000000..ac88aace --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.000000000000000000e+00 +3.000000000000000000e+00 +1.200000000000000000e+01 +9.000000000000000000e+00 +9.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.200000000000000000e+01 +1.200000000000000000e+01 +1.200000000000000000e+01 +1.200000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt new file mode 100644 index 00000000..7338f469 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.000000000000000000e+00 +4.000000000000000000e+00 +8.000000000000000000e+00 +1.000000000000000000e+01 +3.000000000000000000e+00 +3.000000000000000000e+00 +3.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +1.100000000000000000e+01 +6.000000000000000000e+00 +0.000000000000000000e+00 +3.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +8.000000000000000000e+00 +6.000000000000000000e+00 +6.000000000000000000e+00 +4.000000000000000000e+00 +3.000000000000000000e+00 +7.000000000000000000e+00 +7.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +3.000000000000000000e+00 +1.000000000000000000e+00 +1.000000000000000000e+00 +1.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +5.000000000000000000e+00 +5.000000000000000000e+00 +5.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.000000000000000000e+00 +3.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.000000000000000000e+00 +6.000000000000000000e+00 +6.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +9.000000000000000000e+00 +9.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt new file mode 100644 index 00000000..b2ea86cb --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 +2.000000000000000000e+00 +0.000000000000000000e+00 +2.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt new file mode 100644 index 00000000..a32397fb --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +7.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +6.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt new file mode 100644 index 00000000..2b965331 --- /dev/null +++ b/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +7.000000000000000000e+00 +9.000000000000000000e+00 +1.300000000000000000e+01 +7.000000000000000000e+00 +4.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +1.300000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.000000000000000000e+00 +5.000000000000000000e+00 +5.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.000000000000000000e+00 +1.000000000000000000e+01 +1.000000000000000000e+01 +7.000000000000000000e+00 +1.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/series_G1.txt b/tests/functional/data_second_complex_case/series_G1.txt new file mode 100644 index 00000000..833f7215 --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G1.txt @@ -0,0 +1,8760 @@ +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1216 832 1024 960 896 1024 960 1088 1216 1024 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 896 960 960 1152 1088 1088 1152 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1152 896 1088 1088 1088 1024 896 1088 1088 960 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1216 896 1088 1088 1024 896 960 1088 1216 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1280 960 1152 896 1024 1088 896 1152 1088 1024 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1152 832 1088 1088 1024 960 768 1280 1024 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1216 896 960 1024 1024 1024 704 1088 1152 960 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 832 1088 1024 1088 1024 896 1280 1088 1088 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1152 896 896 1088 1088 1088 640 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1216 1024 1152 1088 1088 1152 960 1216 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1280 960 1088 1152 1216 1088 768 1280 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1152 960 1088 960 1216 1152 896 1216 960 1024 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1024 1088 1088 832 1280 1024 896 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1344 896 1024 1152 1024 1088 896 1152 1024 960 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1152 832 1216 1088 1152 960 960 1280 1088 1088 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1280 832 896 1024 1216 1024 1024 1088 1024 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1344 896 1216 1088 1216 1152 832 1152 960 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1280 768 1088 1024 1216 1088 1024 1152 1088 1024 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 768 1152 1088 1216 1024 896 1280 1024 960 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1216 960 1088 1024 1088 1024 832 1216 1088 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1152 768 1024 1152 1216 1216 960 1216 1024 1088 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1344 1024 1152 1152 1280 1088 960 1280 832 1152 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1216 896 1152 1088 1280 1216 960 1152 1024 1216 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1280 1088 1280 1088 1152 1216 960 1152 1024 960 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 896 1216 1024 1088 1152 960 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1024 1280 1152 1152 1152 896 1152 960 1088 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1344 1152 1280 1216 1216 1216 960 1280 1088 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1088 1216 1280 1216 1216 1216 768 1216 960 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1216 1216 1344 1088 1088 1152 1024 1088 1024 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1088 1216 1024 1216 1216 1088 1216 1088 1152 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1152 1280 1216 1088 1088 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1152 1088 1344 1088 960 1216 960 1280 1088 1024 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1088 1216 1024 1216 1152 960 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1152 1152 1088 1152 1152 1152 1088 960 1088 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1216 1088 1216 1152 1152 1216 1152 1152 1024 1024 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +1024 1024 1152 1152 1088 1152 1152 1152 1216 768 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +896 960 1344 1024 1088 1280 1216 1216 1216 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1216 1024 1152 1152 1024 1216 1280 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1088 960 1216 1024 1216 1216 1152 1088 1024 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1280 1152 1216 1088 1024 1280 1280 1216 1088 896 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1024 1280 1280 1024 1280 1216 1088 1088 832 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1216 1280 1088 1216 1216 1216 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1088 1152 1280 1088 1280 1280 1152 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1152 1024 1088 1024 1152 1280 1280 1088 960 768 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 960 1280 1280 1088 1344 1216 1024 960 704 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1152 1280 1088 1152 1216 1216 1024 1088 768 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1088 1088 1152 1216 1152 1280 1280 1024 1088 704 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1024 1088 1152 1088 1088 1344 1216 1088 960 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1088 1088 1152 1088 1088 1216 1216 1024 1024 832 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1024 1152 1216 1216 1152 1216 1280 1024 1024 704 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1088 1152 1088 1088 1024 1216 1152 960 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1216 1152 1216 1152 1152 1152 1152 896 1088 832 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1088 1088 1216 960 1152 1152 1216 1024 1024 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1152 1088 1152 1152 1088 1280 1152 1024 960 960 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 1088 1280 1152 1152 1216 1152 1024 896 1024 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1280 896 1280 1280 1216 1152 1024 896 1024 832 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1216 1152 1152 1280 1152 1152 1152 896 1088 960 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1024 1152 1280 1280 1216 1088 1152 896 960 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1088 1024 1280 1280 1024 896 1152 1024 1024 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1024 1088 1152 1152 1088 1024 1152 832 1088 1024 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1088 1152 1216 1088 1024 1088 1216 960 1152 960 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +1024 1152 1152 1152 1024 1216 1152 1024 960 1024 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1216 960 1280 1152 1152 1088 960 1088 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +896 1152 1152 1280 1216 1024 1152 1024 1152 1088 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +960 1024 1216 1280 1152 1152 1216 1024 1088 960 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +1024 1280 1280 1152 1152 1024 1216 960 1152 832 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +832 1216 1088 1216 1152 1024 1152 1024 1152 960 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1280 1088 1216 1024 960 1088 960 1024 1088 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +960 1216 1152 1280 1152 960 1024 960 1216 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1216 1216 1088 1216 960 1152 1088 1088 1024 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1152 1152 1152 1024 832 1152 1088 1088 1152 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1088 1152 1280 960 960 1152 1152 1216 1024 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1280 1024 1088 1088 896 1024 960 1088 1152 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +1024 1216 1152 1280 1088 896 1024 1216 1152 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +896 1280 1088 1152 1152 896 1152 1024 1088 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1216 1088 1280 1088 896 1216 1088 1216 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +1024 1280 1024 1344 1088 1024 1024 1216 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +896 1280 1152 1216 960 896 1152 1280 1152 1088 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +960 1152 960 1216 1088 832 1088 1280 1024 1152 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +1024 1216 1088 1024 1024 896 1088 1344 1216 1088 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1024 1152 1216 960 768 1216 1344 1216 1152 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +960 1152 1152 1152 1152 896 1088 1280 1216 1024 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +1024 1216 1024 1216 1024 1024 1216 1216 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1216 1152 1280 1088 1024 1152 1344 1088 1088 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +960 1024 1088 1280 1088 896 1216 1344 1152 1024 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1088 1216 1152 1280 1088 960 1216 1280 1152 1152 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1152 1152 1280 1152 960 1024 1344 1088 1088 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1152 1088 1152 1280 1024 960 1152 1280 1088 960 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1216 1088 1216 1088 1024 1216 1344 1152 1088 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 960 1152 1088 896 1280 1024 1088 1152 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1280 1024 1216 1152 1024 1280 1280 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 1088 1152 1024 1024 1088 1344 1152 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1216 1152 960 1344 1024 1024 1152 1344 1216 1088 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1152 1216 1024 1216 1088 1216 1280 1216 1088 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1024 1152 960 1344 1216 1152 1280 1344 1216 1216 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1216 1088 1088 1152 1216 1024 1152 1152 1152 1024 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1152 1088 1088 1280 1152 1088 1216 1280 1216 1088 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1280 1152 1088 1024 1088 1216 1280 1152 1216 1216 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1216 1088 1152 1344 1280 1152 1152 1216 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1152 1088 1216 1344 1152 1088 1216 1152 1152 1152 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1280 1024 1152 1280 1216 1216 1216 1216 1024 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1216 1024 1152 1344 1152 1280 1088 1280 1152 1216 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1024 1088 1088 1280 1280 1280 1280 1344 1216 1024 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1152 1088 1216 1152 1152 1280 1152 1216 960 1216 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1024 1152 1024 1088 1024 1344 1280 1216 1152 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1088 1088 1216 1344 1088 1216 1152 1344 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1152 1152 1280 1216 1344 1216 1216 1088 1280 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1280 1088 1152 1216 1280 1152 1344 1152 1216 1216 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1152 1216 1024 1280 1216 1216 1344 1280 1152 1088 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1024 1280 1088 1216 1280 1344 1344 1280 1152 1280 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1088 1152 960 1280 1216 1152 1216 1152 1088 1152 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1152 1024 1344 1280 1344 1216 1280 1216 1216 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1280 1088 1088 1088 1152 1152 1344 1152 1152 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1216 1216 1152 1216 1216 1216 1344 1216 1344 1216 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1088 1024 1152 1280 1216 1216 1152 1280 1344 1088 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1152 1216 1216 1280 1088 1344 1280 1280 1216 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1344 1088 1088 1280 1216 1280 1280 1344 1024 1152 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1216 1216 896 1280 1216 1344 1216 1280 1280 1216 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1280 1280 1024 1152 1280 1216 1344 1152 1216 1152 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1216 1344 1088 1280 1216 1216 1216 1280 1344 1216 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1280 1280 1152 1344 1216 1024 1152 1088 1152 1280 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1216 1216 1088 1280 1344 1216 1280 1280 1152 1152 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1344 1280 1216 1088 1152 1216 1280 1280 1344 1344 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1152 1152 1216 1216 1088 1344 1280 1344 1344 1280 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1216 1024 1216 1280 1152 1280 1152 1344 1216 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1280 1280 1216 1216 1344 1216 1216 1344 1216 1280 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1088 1152 1088 1152 1216 1344 1216 1216 1152 1216 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1280 1280 1088 1344 1344 1216 1216 1088 1152 1344 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1216 1280 1152 1216 1152 1280 1088 1216 1280 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1344 1216 1216 1088 1344 1280 1216 1280 1344 1216 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1280 1152 1088 1152 1280 1216 1152 1152 1088 1280 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +1344 1216 1152 1216 1280 1280 1280 1280 1280 1344 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +960 1216 1152 1216 1216 1344 1344 1216 1152 1216 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1280 1024 1216 1024 1280 1216 1280 1216 1280 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1216 1152 1152 1152 1152 1280 1152 1280 1152 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1088 1280 1088 1344 1280 1088 1152 1024 1216 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1152 1216 1280 1216 1216 1216 1280 1280 1152 1088 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1216 1216 1216 1280 1216 1216 1280 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1280 1088 1280 1216 1216 1344 1216 1152 1216 1152 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1216 1216 1088 1088 1216 1216 1280 1152 1280 1280 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1280 1152 1216 1152 1344 1216 1280 1216 1280 1216 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1344 1216 1152 1216 1280 1344 1280 1152 1280 1280 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1280 1216 1088 1216 1216 1344 1216 1280 1088 1216 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1216 1152 1216 1216 1216 1216 1152 1280 1216 1280 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1152 1024 1152 1216 1024 1344 1280 1152 1216 1152 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1344 1088 1280 1152 1088 1152 1280 1280 1280 1280 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1216 1216 1280 1216 1152 1216 1152 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1280 1152 1152 1088 1280 1216 1280 1344 1280 1344 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1216 960 1280 1152 1280 1152 1088 1280 1280 1152 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1280 1024 1216 1216 1216 1280 1216 1280 1216 1280 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1088 1216 1344 1088 1216 1216 1024 1152 1344 1344 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1152 1216 1024 1280 1152 1280 1344 1216 1216 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1216 1216 1344 1216 1088 1344 1152 1280 1088 1344 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1344 1280 1216 1088 1024 1216 1152 1280 1216 1216 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1152 1280 1216 1088 1216 1280 1216 1152 1216 1152 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1280 1216 1216 1152 1216 1344 1088 1280 1088 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1216 1152 1216 1152 1024 1280 1152 1344 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1152 1152 1280 1088 1152 1344 1088 1024 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1152 1216 1216 1216 1280 1216 1280 1216 1216 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1088 1280 1152 1280 1088 1024 1024 1216 1216 1152 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1280 1280 1152 1088 1088 1280 1152 1216 1088 1216 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1216 1216 1280 1216 960 1344 1280 1344 1216 1152 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1152 1344 1216 1152 1088 1280 1280 1280 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1280 1152 1344 1152 1216 1344 1088 1344 1280 1216 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1344 1152 1152 1088 1280 1216 1280 1152 1280 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1152 1280 1280 1152 1152 1280 1280 1280 1280 1216 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1280 1152 1152 1216 1152 1216 1216 1280 960 1088 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1216 1344 1280 1088 1280 1216 1344 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1280 1216 1216 896 1216 1088 1280 1088 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1216 1344 1344 1152 1216 1216 1216 1280 1216 1280 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1280 1344 1280 1152 1088 1280 1216 1152 1216 1152 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1088 1088 1152 1152 1088 1152 1216 1280 1088 1216 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1024 1344 1280 1152 1280 1344 1024 1280 1280 1088 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1024 1152 1152 1280 1152 1024 1280 1152 1152 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +1152 1280 1216 1216 1216 1280 1152 1344 1152 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +960 960 1280 1216 1024 1216 1152 1280 1216 1280 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1152 1280 1216 1088 1280 1216 1088 1344 1024 1216 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1024 1216 1280 1088 1216 1280 1216 1152 1216 1152 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1216 1280 1152 1088 1280 1152 1280 1280 1216 1088 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1152 1216 1152 960 1024 1152 1280 1344 1280 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1088 1216 1216 1216 1152 1280 1152 1216 1216 1152 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1344 1280 1088 1152 1280 1344 1152 1216 1088 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1280 1024 1216 1152 1280 1344 1216 1216 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1152 960 1152 1344 1280 1280 1024 1088 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1216 1280 1152 1024 1216 1344 1216 1152 1024 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1216 1280 1216 1088 1216 1216 1216 1344 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1280 1280 1280 1088 1344 1152 1152 1280 1344 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1216 1280 1280 1280 1216 1216 1344 1088 1280 1280 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1280 1152 1216 1088 1280 1280 1344 1344 1216 1216 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1216 1088 960 1280 1344 1344 1280 1088 1280 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1216 1344 1280 1088 1216 1088 1216 1344 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1280 1216 1280 1216 1216 1280 1280 1216 1216 1216 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1152 1152 1152 1280 1216 1280 1088 1280 1088 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1280 1024 1216 1344 1344 1280 1216 1216 1344 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1088 1152 1088 1280 1344 1280 1280 1216 1216 1216 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1280 1024 1216 1152 1344 1344 1344 1216 1280 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1152 1216 1216 1216 1344 1280 1216 1344 1152 1344 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1216 1152 1152 1344 1280 1280 1344 1344 1280 1280 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1280 1216 1152 1344 1344 1280 1152 1216 1216 1344 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1344 1152 1152 1216 1088 1344 1280 1152 1280 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1344 1280 1216 1216 1280 1280 1344 1280 1280 1152 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1280 1280 1216 1216 1152 1280 1216 1152 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1344 1216 1216 1216 1088 1280 1344 1344 1216 1280 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1280 1152 1280 1152 1152 1280 1280 1216 1280 1216 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1216 1216 1216 1152 1280 1280 1344 1344 1216 1152 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1280 1152 1280 1216 1280 1152 1280 1216 1088 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1344 1344 1152 1216 1280 1280 1280 1216 1152 1280 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1280 1216 1152 1344 1152 1280 1344 1216 1344 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1152 1216 1152 1088 1280 1344 1344 1344 1024 1280 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1024 1088 1088 1280 1344 1152 1344 1344 1280 1152 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1344 1280 1152 1280 1280 1280 1344 1152 1216 1216 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1216 1280 1280 1152 1216 1280 1280 1280 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1280 1280 1024 1152 1152 1344 1280 1280 1280 1216 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1216 1216 1216 1216 1216 1216 1280 1280 1280 1280 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1280 960 1216 1344 1280 1280 1216 1152 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1344 1216 1152 1280 1344 1216 1280 1280 1280 1152 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1280 1280 1216 1088 1280 1280 1216 1344 1344 1216 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1216 1152 1088 1280 1344 1280 1216 1280 1280 1280 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1216 1216 1344 1344 1344 1216 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1280 1280 1152 1344 1216 1280 1152 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1088 1216 1280 1216 1280 1152 1152 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1280 1152 1344 1344 1216 1280 1280 1088 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1280 1216 1280 1216 1280 1280 1280 1280 1280 1216 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1152 1344 1088 1024 1280 1344 1216 1216 1280 1152 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1280 1280 1152 1152 1344 1216 1280 1216 1216 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1216 1216 1280 1216 1216 1344 1280 1280 1280 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +1344 1280 1088 1280 1280 1344 1344 1152 1152 1088 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +960 1344 1216 1280 1344 1152 1280 1344 1344 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1280 1216 1344 1152 1216 1280 1280 1152 1216 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1280 1344 1152 1280 1280 1280 1344 1280 1280 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1344 1280 1088 1216 1344 1344 1216 1216 1344 1344 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1280 1216 1280 1344 1344 1344 1216 1152 1216 1152 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1344 1216 1280 1344 1344 1344 1280 1344 1280 1344 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1344 1152 1152 1216 1280 1152 1152 1152 1152 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1280 1152 1344 1216 1152 1152 1088 1216 1216 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1216 1280 1344 1280 1152 1280 1152 1088 1152 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1216 1216 1152 1344 1216 1280 1216 1280 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1280 1280 1152 1152 1280 1152 1152 1280 1216 1216 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1216 1344 1280 1344 1216 1088 1152 1088 1152 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1344 1344 1280 1344 1088 1216 1280 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1280 1216 1344 1216 1152 1216 1216 1280 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1344 1344 1216 1344 1280 1216 1280 1216 1152 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1280 1280 1280 1152 1280 1088 1088 1216 1088 1344 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1088 1280 1152 1216 1216 1216 1152 1280 1216 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1280 1280 1280 1280 1216 1088 1216 1344 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1024 1216 1344 1344 1344 1152 1088 1024 1280 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1280 1280 1216 1280 1280 1216 1088 1344 1216 1280 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1152 1216 1152 1216 1024 1280 1216 1280 1152 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1216 1280 1088 1280 1280 1216 1152 1280 1216 1344 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1280 1280 1280 1280 1280 1152 1152 1280 1216 1088 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1216 1152 1280 1088 1280 1088 1088 1344 1280 1216 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1216 1216 1216 1344 1088 1216 1152 1152 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1152 1088 1216 1280 1280 1280 1024 1344 1088 1152 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1280 1280 1280 1280 1280 1152 1152 1280 1088 1216 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1280 1152 1216 1280 1280 1280 1344 1280 1152 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1216 1152 1344 1216 1216 1152 1088 1216 1216 1216 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1088 1152 1344 1216 1216 1216 1024 1280 1216 1280 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1280 1280 1280 1280 1280 1152 1088 1152 1152 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1088 1216 1344 1152 1344 1152 1216 1216 1216 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1344 1216 1216 1152 1088 1216 1216 1280 1152 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1280 1280 1280 1152 1280 1152 1280 1024 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1216 1152 1152 1216 1216 1152 1216 1280 1152 1088 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +1280 1280 1216 1152 1344 1152 1280 1152 1280 1216 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +960 1216 1216 1216 1344 1216 1216 1344 1344 960 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1024 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1216 1088 1344 1344 1344 1152 1280 1280 1152 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1344 1152 1344 1280 1152 1216 1280 1152 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1088 1280 1280 1152 1344 1088 1280 960 1280 1024 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1216 1216 1216 1344 1344 1216 1216 1280 1344 1216 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1088 1152 1344 1088 1280 1152 1280 1280 1280 1152 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1152 1280 1344 1280 1216 1216 1216 1280 1344 1216 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1216 1280 1216 1088 1280 1216 1216 1280 1088 1024 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1024 1280 1152 1344 1216 1280 1280 1152 1216 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1152 1152 1216 1280 1280 1344 1152 1280 1280 1152 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1152 1152 1024 1344 1216 1216 1280 1344 1088 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1216 1280 1152 1344 1152 1280 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1216 1280 1280 1280 1344 1280 1216 1216 1216 1152 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1152 1216 1280 1152 1152 1152 1024 1216 1152 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1280 1216 1280 1344 1280 960 1216 1216 1024 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1216 1216 1280 1216 1216 1216 1024 1216 1216 1216 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1024 1216 1152 1216 1152 1344 1152 1152 1216 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1088 1216 1216 1088 1344 1152 1088 1344 1280 1152 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1216 1024 1152 1216 1216 1216 1280 1216 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1152 1088 1152 1088 1216 1216 1024 1216 1280 1216 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1216 1088 1088 1024 1280 1152 1152 1280 1280 1152 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1088 1088 1152 1152 1344 1280 1088 1152 1344 1280 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1024 1216 1088 1152 1344 1280 1024 1088 1344 960 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1088 1280 1152 1088 1280 1280 1088 1280 1344 1216 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1280 960 1024 1344 1280 960 1344 1024 1088 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1152 1088 1088 1344 1344 1024 1344 1216 1280 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1152 1216 1152 1024 1152 1280 1024 1344 1280 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1152 1152 1024 1280 1280 1088 1152 1344 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1216 1216 1088 960 1280 1280 1152 1152 1152 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1280 1280 1152 1152 1280 1152 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1152 1152 1152 1152 1216 1152 960 1088 1152 1088 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1216 1024 1152 1024 1088 1088 1152 1216 1216 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1024 1152 1152 1024 1152 1152 1216 1280 1088 960 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1152 1216 896 1152 1216 1088 1216 1280 1216 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +1088 1152 1088 1024 1088 1152 1088 1280 1152 1088 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +960 1216 1088 1088 1216 1152 1152 1216 1152 1024 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1024 1152 1024 960 1152 1216 1152 1344 1152 1152 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1088 1088 1088 1088 1088 1216 1152 1344 1216 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1024 1024 960 1152 1152 1152 1216 1152 1152 1088 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1024 1024 1216 1152 1088 1152 1216 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1088 1088 1216 1088 1088 1088 1216 1024 1152 1024 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1152 1152 1216 1088 1088 960 1088 1280 1216 1088 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1024 1216 1088 896 1216 1216 1216 1216 1216 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1216 1152 1024 1152 896 1152 1152 1280 1088 896 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1280 1088 1152 1216 1024 1152 960 1216 1152 1088 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1152 960 1280 1216 1088 1088 1024 1280 1024 1152 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1216 1088 1024 1280 1024 1152 1088 1216 1152 1024 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1280 1152 1216 1088 832 1152 1216 1280 1088 832 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +1152 1088 1088 1152 1088 1152 1152 1280 1152 896 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +960 1152 1280 1216 1024 1088 1088 1216 1216 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1152 1152 1024 1024 1024 1152 1344 1152 1024 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1216 1088 1216 1280 1024 960 1152 1088 1088 960 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1152 1344 1024 1024 1024 1152 1024 896 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 1152 1216 1216 1024 1024 1024 1280 1088 960 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1152 896 1216 1152 1024 960 1152 1216 1088 1024 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1088 1280 1344 960 1088 1152 1344 896 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1088 1152 1024 1280 1024 1152 1216 1344 1152 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1216 1280 1088 1088 1152 1344 1024 960 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1152 960 1152 1344 1216 1152 1152 1216 1024 832 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1216 1088 1152 1216 1088 1216 1152 1280 1024 1088 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1024 1152 1216 1152 1152 1088 1216 1152 1024 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1152 1280 1280 1216 1024 1216 1216 1152 1088 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1088 1152 1280 1152 1024 1024 1344 1152 1024 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1152 1152 1216 1344 1216 1088 1024 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1216 1152 1280 1152 1088 1024 1280 1216 1152 1088 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1152 1088 1216 1280 1152 1024 1152 1152 1216 896 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1152 1216 1216 1152 1088 1152 1088 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1216 1216 1280 1216 960 960 1216 1280 1216 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1152 1152 1152 1152 1280 1088 1024 1088 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +1088 1152 1216 1280 1216 1152 1216 1152 1216 960 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +896 1088 1152 1088 1216 960 1280 1088 1152 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1280 1280 1152 1216 1152 1280 1152 896 1088 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1088 1152 1216 1152 1280 1088 1280 1024 1216 1024 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1088 1216 1216 1280 1152 1344 1216 1216 1280 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1152 1216 1280 1152 1216 1088 1152 1216 1152 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +1216 1152 1280 1216 1280 960 1216 832 1088 1216 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +960 896 1216 1216 1152 1088 1152 1088 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1088 1152 1280 1216 1216 1024 1152 1216 1152 1280 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1152 1152 1088 960 1152 1152 960 1152 1280 1152 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1088 1024 1280 1088 1088 1024 1088 1152 1152 1280 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1152 1152 1216 1152 1152 1152 1088 1152 1280 1216 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1216 1088 1216 1088 1216 1024 1216 1344 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +1088 1152 1152 1152 1280 960 1088 1216 896 1280 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +960 1152 960 1088 1216 896 1024 960 1152 1216 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1088 1152 1024 1088 1152 896 896 1152 1088 1280 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1152 1216 960 1216 1024 1152 960 1216 1216 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1088 1088 1280 768 1152 1088 1088 1152 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1152 1088 1216 1024 1216 960 1152 960 1152 1216 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1024 1088 1216 896 1280 832 1088 1088 1152 1280 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1152 1024 1024 960 1280 896 1216 1152 1216 1216 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1088 1024 1088 960 1216 960 1088 1088 1152 1152 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1024 1152 1088 832 1216 960 1152 1216 1216 1216 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +1088 1024 1088 1024 1216 1024 1088 1216 1024 1088 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +960 1024 1088 896 1216 896 1088 1088 960 1280 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +1024 1088 1152 960 1216 1024 1152 1152 1216 1216 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1088 1152 960 960 896 1088 1216 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +960 1024 1216 960 1216 640 1152 1152 1088 1280 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1024 1216 960 1216 832 1152 1152 1024 1152 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +832 1088 1152 960 1024 896 1216 1280 1088 1088 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +768 960 1024 832 1152 960 1152 1152 960 1024 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 +896 1024 1088 960 1152 896 1088 1280 1024 1216 diff --git a/tests/functional/data_second_complex_case/series_G3.txt b/tests/functional/data_second_complex_case/series_G3.txt new file mode 100644 index 00000000..8bd8b62f --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G3.txt @@ -0,0 +1,8760 @@ +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +4860 5346 5832 4860 5832 5346 4374 4860 5346 6318 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5346 5346 6318 5346 4860 5346 3888 5346 5832 5346 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +5832 5346 6318 5346 4860 5346 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 6318 5346 5346 5832 5346 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +4860 5832 5832 4860 4860 5832 4860 5832 5832 6318 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +5346 4860 6318 5832 5346 5346 5346 4860 5346 5832 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +4860 5346 5346 5346 4860 4860 5346 5346 5832 5346 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 5346 5346 5346 4374 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +3888 5832 6318 5346 5346 4860 5346 5832 5346 6318 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +4374 5832 5832 5832 4374 4860 4860 5832 5832 5832 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3888 4374 6318 4860 4860 5346 5346 5832 5346 6318 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3402 5832 5832 5346 4860 5832 5346 4860 6318 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 5832 5346 5832 5346 5832 5346 5832 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 6318 4860 5346 5346 5346 5346 4860 5346 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3888 5832 5346 5832 5346 5832 5346 6318 6318 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3402 5346 6318 5832 5346 5832 5346 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 5832 5346 5346 4374 6318 5832 5832 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 4860 5346 5832 4860 5832 4860 3888 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 4860 6318 5346 5346 5832 4860 6318 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5346 4374 5832 5346 5346 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +3888 5346 5832 5346 4860 5832 4374 6318 6318 4860 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +4374 5346 5832 4860 4860 5832 5346 5832 5832 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +3888 5346 6318 5346 5346 5832 5832 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 5346 4860 5832 6318 6318 4860 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 4374 3888 5346 5832 4860 5346 5346 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 5346 5346 5346 5832 5832 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +4374 5832 6318 4860 4860 5832 4860 4860 4860 4860 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +3888 5832 5832 4860 5346 5832 5346 5346 5346 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5832 6318 4374 5832 4860 5832 5832 4860 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5346 5832 3888 5346 5346 5832 5832 5346 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4374 5832 5832 4374 5346 5346 5832 5832 4860 5346 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5346 4860 4860 5832 5832 6318 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5832 5832 5832 5346 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +4860 5832 5832 4860 5346 5346 6318 5346 4374 4860 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +5832 5346 6318 4374 5346 5832 6318 5346 4860 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +4374 5832 5832 3888 5346 5832 5832 5346 5346 5346 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +5346 4860 6318 3888 5346 5832 5346 5832 4860 4374 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +4374 5346 5832 3402 5346 5832 4860 5832 5346 4860 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +5832 5832 6318 4374 5832 5346 4860 5832 4374 4374 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +6318 5346 5832 3888 5832 5346 4374 5832 4374 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +4860 5832 5346 3888 5832 5832 4860 5346 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +6318 5832 5346 4374 5346 5832 4374 5832 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +5832 5832 5832 4374 5832 5832 5346 5346 4860 5346 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5346 4374 5346 5832 5346 5832 3888 4860 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5832 5346 4860 4374 4860 5346 4374 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 5346 5346 5346 5832 4374 4860 3402 5346 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +6318 6318 4374 3888 4860 5346 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5832 5832 5346 4860 3888 5832 5346 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +5346 5832 4860 4374 4374 5346 4860 4374 4374 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5832 5346 4860 4374 5346 5346 4374 3888 5832 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 5346 5346 5346 3888 5346 4374 4860 4860 4860 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +6318 4860 4374 5346 4374 5832 4860 5346 4860 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +5832 5832 4860 4860 4374 5346 4860 5346 4374 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 4860 3402 5346 3888 4860 4860 4860 3888 5346 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +6318 5346 4374 5346 4374 5346 4374 5346 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +5346 5346 4374 5832 4860 4860 4374 4860 4860 5832 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 4374 5346 4860 3888 4860 5346 4374 5346 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5832 3888 4860 4374 4374 4860 4860 4860 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +6318 5346 3888 3888 4374 4860 4374 5346 4374 5832 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +5346 5346 4374 3402 4860 5346 4374 4860 4374 5346 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5346 4374 3402 4860 4860 3888 5346 4860 5832 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5832 3888 4860 4860 5346 4860 5346 4860 5346 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 4374 4374 4374 4860 4374 5346 4374 4860 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 5346 2916 3402 3888 5346 3888 4374 4860 5832 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +6318 4860 3888 4860 3888 4860 5346 5346 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 5346 3888 4860 3888 5346 5346 4860 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +5832 4860 4860 4860 3888 4860 5346 5346 4860 5346 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 5346 4860 4374 3888 5346 5346 5346 5346 5832 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4860 4860 3888 5346 4860 5346 5346 5346 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +6318 4860 4374 4374 3888 5346 5346 5346 5346 4860 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +5832 5346 3888 4860 3402 4374 4374 5346 5346 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 4860 4860 3402 5346 4374 4860 5832 5832 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 5346 3888 4374 3888 5346 4374 5832 5832 4860 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4374 4374 5346 4860 6318 5832 5832 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4860 4374 4860 4374 5346 4860 6318 5346 5346 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +6318 4374 4860 4860 4860 5346 5346 6318 4860 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +5832 5832 4860 4374 5346 5346 5346 6318 5346 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +6318 5346 4860 3402 4860 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 3888 5346 4860 5346 6318 5832 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 5346 4860 5346 5346 5832 6318 5346 5832 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +5832 5832 4860 4860 5346 5346 5832 5832 5832 5346 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +6318 5346 4860 4374 4860 5346 5832 5832 5346 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 4860 4860 4374 5832 5346 5346 4374 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +5832 5346 5832 4860 4860 5832 5832 5346 5346 5832 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 4860 5832 4860 5346 4860 6318 5832 5346 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 5832 4860 4860 5346 6318 4860 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +6318 5832 5832 6318 4374 5346 3888 6318 5832 5832 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +5832 5346 5346 5346 4860 5346 5832 6318 4860 4860 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +6318 5346 5346 5832 4374 5346 5346 5346 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4860 6318 5346 5346 5346 4860 5832 4374 5832 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +4374 5346 5346 5346 5832 5346 5832 5346 5346 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 6318 5832 5346 5346 3888 5832 4374 5832 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5346 5832 5832 4860 4860 4374 5346 5832 5346 6318 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5832 5346 5346 4860 5346 5346 4860 5832 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +5832 6318 5346 5832 4860 4860 5346 5832 5346 6318 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +4860 6318 5346 5832 5346 4860 6318 5832 5832 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5832 5832 5832 5346 5346 4374 6318 4860 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5346 5346 5832 5832 5346 4860 5832 5832 4860 5832 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5832 6318 5832 5346 5346 4860 5832 5346 5346 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5346 6318 5832 5346 4860 4860 5832 5346 5832 6318 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 5832 5832 5346 4374 4374 6318 5346 5832 5832 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 6318 5346 4860 4374 4374 5346 5832 6318 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +5832 5832 5346 5832 5346 4860 4860 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +4860 6318 5832 5832 5346 4860 5832 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5832 6318 5832 4860 4860 4860 6318 5832 5832 6318 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5346 6318 5832 5832 5346 4860 6318 4374 5832 5832 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5832 5832 5832 5346 5346 4860 5832 4860 5832 5346 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5346 5832 5832 5346 4374 4860 5832 5832 6318 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5346 5832 5346 4374 5832 5346 5346 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 6318 5832 5346 5832 4374 6318 4860 6318 6318 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 5832 5832 5832 5832 4860 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 6318 5346 5346 5832 5832 6318 5346 6318 5832 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5832 5832 5832 5832 5832 5346 6318 5832 6318 6318 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5346 5832 5832 5832 5346 5832 6318 4860 6318 5832 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 5832 4860 6318 5832 5832 5832 5346 6318 6318 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +5832 6318 5832 6318 5346 5346 6318 5832 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5346 5832 6318 5832 5832 4860 5346 5832 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +6318 5832 5346 5832 5832 5832 6318 5832 6318 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +5832 5832 5346 6318 5832 5832 5832 5832 5832 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 5346 4860 6318 5346 6318 5832 6318 6318 5832 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 6318 5346 6318 5832 5832 5832 6318 6318 5346 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +6318 5346 5832 5346 6318 5832 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +5832 6318 5832 5832 6318 6318 6318 5832 6318 5832 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +6318 5832 5346 5346 6318 5832 5832 5832 6318 6318 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +5832 4860 5832 5346 6318 5346 6318 5346 5832 5832 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +6318 6318 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +5832 6318 5832 5832 5346 5832 5346 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +6318 5832 4860 6318 5346 6318 6318 5346 6318 6318 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +5346 5832 5346 6318 6318 5832 6318 6318 5346 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +6318 5832 5346 5832 5832 5832 6318 6318 6318 5832 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 4860 5832 5832 5346 6318 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +5832 5832 5832 6318 6318 5346 6318 6318 6318 5832 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 6318 5832 5832 6318 5832 6318 5832 5346 6318 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +6318 4860 6318 5346 5832 6318 5346 6318 5346 5832 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +5832 5346 5346 5346 5832 6318 5832 5832 6318 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +6318 5832 5832 6318 5832 5346 6318 6318 4860 6318 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5346 6318 5832 6318 5346 5346 5346 6318 5832 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +5832 5832 6318 6318 5832 5832 5346 6318 6318 6318 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +6318 5832 6318 6318 5832 5346 6318 6318 5832 5346 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 5346 5832 6318 6318 5832 6318 6318 6318 5832 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +5832 4860 6318 5832 6318 5346 6318 6318 6318 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 6318 6318 6318 5832 6318 5346 5832 6318 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 4860 5832 4374 5832 5346 6318 6318 5832 5346 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5346 6318 5832 6318 6318 5832 5346 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5832 5832 4860 6318 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 5346 5832 6318 5832 6318 5832 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 4374 5832 6318 5346 6318 5346 5832 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5346 6318 5832 5832 6318 6318 4374 5832 6318 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 6318 6318 5832 5832 6318 5832 5832 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +6318 5832 5832 6318 5346 6318 6318 5832 4374 5832 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5832 5832 6318 5346 5832 5832 5832 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +5346 5832 6318 6318 5832 5346 6318 5832 5832 6318 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +6318 5832 6318 5832 5346 6318 6318 5346 5346 5346 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 5832 5832 5832 5832 5832 5832 5832 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +5346 5346 6318 4860 5346 5832 6318 4860 5832 6318 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +6318 5832 4860 4860 5832 5346 5832 5346 5832 5832 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 4860 6318 5832 5832 5832 5832 5832 5832 5346 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +5346 5832 6318 5832 5832 5832 4860 5346 5832 6318 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +6318 5832 6318 5832 5346 6318 6318 5346 5832 5832 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +5832 5346 5832 6318 5832 6318 5832 5346 4860 6318 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +6318 4860 6318 5832 5832 5832 6318 5832 5346 5346 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 6318 6318 5832 5346 6318 6318 5832 5832 4860 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +5832 5832 6318 6318 5832 5346 5832 5832 5832 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 6318 6318 5832 4860 5832 4860 5346 6318 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 5832 5346 6318 6318 5346 4860 5832 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +6318 6318 5832 6318 5346 5832 6318 5832 5346 6318 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 6318 5832 5832 6318 5832 5346 5346 5346 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 6318 5832 6318 4860 6318 5832 5346 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 5832 5832 6318 5346 6318 5346 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 6318 5832 5832 5832 6318 5832 5832 5832 6318 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5832 5832 5346 5832 5832 5832 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +5832 5832 6318 5346 5832 6318 5832 6318 5346 6318 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 6318 5832 5832 5832 5832 5832 5832 5346 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 5346 5832 5832 6318 6318 5346 5832 6318 5832 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 6318 5346 5832 5346 4860 5346 5832 5832 6318 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +6318 5346 5832 6318 6318 5832 5832 6318 6318 5346 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 4860 5832 6318 6318 6318 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +5346 5346 5832 6318 5832 5832 5832 6318 6318 6318 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 5832 4860 5346 6318 5346 5346 4860 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 6318 5832 4860 5346 5832 5832 6318 6318 5832 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +6318 5346 4860 5832 6318 5346 5832 5346 6318 5346 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +5346 5832 5832 5346 5832 6318 5832 5832 6318 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +6318 5346 5832 5346 6318 6318 5346 6318 5832 5832 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 5832 5832 4860 5346 5346 5832 5832 6318 6318 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 6318 5346 5832 6318 5346 4860 4860 5346 4860 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +5832 5346 5832 4374 6318 6318 5832 5832 6318 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +6318 6318 4860 5346 6318 6318 5346 6318 5832 5832 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 6318 5346 5832 6318 6318 5832 6318 6318 6318 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5832 5832 5346 5832 6318 5832 5832 6318 5832 5832 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5346 6318 5346 5832 6318 6318 4860 6318 6318 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +5832 5346 5346 4860 5346 6318 5832 5832 5832 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +6318 6318 4860 5346 6318 6318 5832 6318 4860 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +4860 6318 5346 5832 5346 6318 5346 5832 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +5832 5346 5346 4860 5832 6318 5832 6318 6318 6318 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 6318 5346 4860 6318 6318 6318 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5346 5832 6318 5832 5832 5832 6318 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5832 5832 5832 6318 5832 6318 5832 5832 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 5832 5346 4374 5832 6318 5832 5832 5832 6318 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +6318 6318 5832 5832 6318 5346 6318 5832 6318 5832 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5346 5832 5346 5346 5832 6318 6318 4860 6318 6318 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +5832 6318 6318 5832 5832 5832 5832 6318 4860 5346 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5346 5832 5346 5346 4860 6318 6318 6318 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +6318 5832 6318 5832 5832 5832 6318 6318 4374 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 6318 6318 5832 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +6318 5832 5346 5832 5346 5346 5346 4860 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 5832 5832 5832 5832 6318 6318 6318 6318 6318 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 5832 6318 5832 5832 6318 5832 6318 5832 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +5832 6318 6318 5346 5346 6318 5832 6318 5832 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 5832 5832 4860 5832 6318 6318 6318 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 6318 6318 6318 6318 5832 5832 5346 6318 5832 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 5832 6318 5346 6318 5832 6318 5832 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5832 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +6318 6318 5832 4860 5832 5346 6318 6318 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 6318 5832 5832 6318 5832 5346 5346 6318 6318 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 5346 5832 5346 5346 6318 6318 5832 5832 5832 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5832 6318 5832 5832 5346 5832 5832 5832 5832 5346 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +5346 6318 5832 5346 5832 6318 6318 6318 6318 6318 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 5346 6318 5832 6318 5832 5832 6318 5832 5346 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +6318 6318 6318 5832 6318 5832 5346 6318 5346 6318 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 5346 5832 5832 6318 6318 5832 5832 6318 5346 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +5832 6318 6318 5346 6318 6318 6318 6318 5832 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +4860 5346 5832 5346 4860 5346 6318 6318 6318 5832 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5832 6318 5832 5346 5832 5346 6318 5832 6318 5346 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +5346 5832 6318 5346 6318 6318 5832 6318 5832 6318 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +6318 5346 6318 4860 5832 6318 5832 6318 5832 5346 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5832 5832 5346 6318 6318 5832 6318 6318 5832 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 5346 6318 4860 5832 6318 5832 4860 5346 4860 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +5832 4860 6318 5346 5832 5832 6318 6318 6318 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +6318 5832 6318 5346 6318 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 4860 5832 5832 5832 6318 5832 5832 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +5832 5832 5832 5346 6318 5832 6318 6318 5832 4374 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5832 4374 4860 5832 5832 5832 6318 6318 5346 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5346 6318 5346 6318 6318 6318 5832 5832 5832 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 6318 5832 6318 6318 6318 5346 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +6318 5832 5832 5346 5832 5832 6318 5832 5832 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +5832 5832 5832 5346 5832 5832 5832 5346 6318 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +4860 5832 5832 5346 6318 5346 6318 6318 5832 5832 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +6318 5346 5832 5346 5832 5832 6318 5832 5346 4860 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5832 5832 6318 5832 5346 6318 5832 5832 5832 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +5346 5832 5346 5832 5832 6318 6318 5832 6318 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +6318 5346 5832 5346 5346 6318 6318 5346 5832 5832 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5832 5832 6318 5832 5346 5832 6318 6318 5832 5346 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5346 5832 5832 5832 6318 5832 6318 5346 5832 5832 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +5832 5832 6318 4860 6318 6318 5832 6318 6318 4374 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +6318 5832 6318 4860 6318 6318 5832 5832 5346 5832 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +4860 5832 5832 5832 6318 5832 5832 6318 6318 5346 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 6318 5832 5346 5832 5346 5832 5832 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5832 5832 5832 5832 5832 5832 5346 5832 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5346 5832 6318 5832 6318 5832 5832 6318 6318 5832 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5832 5832 6318 5832 6318 5832 5832 6318 6318 4860 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5346 5832 5346 5832 5832 6318 5346 6318 5832 5346 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5832 6318 5832 5832 5832 5832 5346 5832 5832 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5346 5832 5346 6318 6318 6318 5346 5346 6318 6318 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +5832 6318 6318 5346 6318 6318 5346 5832 5832 5346 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +4860 6318 5346 6318 6318 5346 5832 6318 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 6318 6318 6318 6318 5832 5346 5832 6318 6318 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 5832 6318 5832 5832 6318 4860 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5832 6318 5832 6318 5832 5832 5346 6318 5832 5832 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5346 6318 5832 5346 6318 6318 5346 5346 5346 6318 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 6318 5832 6318 6318 4860 5832 6318 5346 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 5346 5346 5832 6318 6318 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5832 5832 5832 6318 6318 6318 5346 4860 6318 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5346 5832 5832 6318 6318 5346 5346 5832 5832 5832 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5346 6318 5346 5832 5832 5346 5346 5832 4860 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 5832 6318 6318 6318 6318 5346 5832 5346 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +5832 6318 5832 5346 6318 6318 4374 5346 5832 6318 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4860 6318 4860 6318 6318 5832 5346 4860 5832 3888 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4374 6318 6318 5346 6318 5832 5346 5832 5832 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 5832 6318 4860 5346 6318 6318 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 5832 6318 5832 6318 6318 5346 5832 5346 5832 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 6318 5832 6318 5832 5346 4374 5832 6318 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +4860 6318 5346 5346 5832 5346 5346 4374 5346 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5832 6318 5832 6318 6318 4860 5346 5832 6318 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +5346 6318 6318 5832 6318 5832 5832 5832 5832 5832 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +4374 5832 5832 6318 5832 5346 5832 5832 6318 6318 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 6318 5832 5832 6318 5832 5832 5832 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5346 5832 6318 6318 5832 5832 5832 5346 6318 5832 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 5346 5832 5346 6318 5346 5346 5346 5832 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 6318 5832 6318 6318 5832 5346 5346 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5832 5832 5832 5832 5346 5832 3888 6318 6318 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +5832 5346 6318 6318 6318 5346 5832 4860 5832 5832 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +4860 5832 6318 5832 5832 5346 5832 4374 5832 6318 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +5832 6318 5832 5832 6318 5346 5346 4860 5832 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +4860 6318 5832 5832 6318 5346 5346 5346 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5832 5346 5832 5832 5832 5346 4860 4374 6318 5832 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5346 5346 6318 5832 5346 5346 6318 5346 5832 4860 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5832 5346 5832 5346 5346 4860 6318 4860 5346 5346 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5346 4374 5832 5832 6318 4860 6318 4374 5832 4860 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +5832 5346 5832 6318 5832 4374 5832 5346 4374 5346 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4374 5832 6318 6318 6318 4374 6318 4860 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +4860 5346 6318 5832 6318 4860 5346 5346 5346 4860 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 6318 6318 6318 4374 6318 5346 5832 5346 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 5832 5832 6318 4860 5832 4860 5832 4374 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 5832 4860 6318 4860 5832 4860 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +5832 5832 6318 6318 6318 3888 6318 5346 5832 4374 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +6318 4374 5832 6318 5346 4860 5346 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5346 5346 5346 5346 5832 4860 6318 5346 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5832 6318 5832 5346 5346 5346 4860 5832 5346 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5346 6318 5832 5832 4860 6318 5346 5346 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5832 5832 5832 5346 5832 4860 6318 4860 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5346 5346 6318 5346 5832 5346 6318 5346 5832 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5832 5832 5832 5832 4374 6318 5346 4860 4860 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5832 5346 5832 5832 5832 5346 6318 5346 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +5346 5346 6318 5346 5832 4860 5832 4860 5346 5346 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 4860 5832 5346 5346 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +4860 5832 6318 5832 5346 5346 6318 4860 4860 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +5346 5346 6318 5832 5346 4860 5832 4860 5346 4860 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5832 5832 5346 5832 4860 5346 5346 4860 5346 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +4860 5346 5832 5346 5832 4860 5832 5346 5346 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 4860 6318 4374 5346 5346 5346 4860 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +5346 5832 6318 4860 5832 5346 5832 5346 4860 4860 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5832 6318 4860 5832 5346 5832 5346 4374 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4374 5346 5832 4860 5346 4374 5346 5346 4860 5346 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4860 5346 5832 4860 5832 5832 5832 4374 5346 4860 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4374 6318 5832 4860 5832 5832 5832 5832 5832 5832 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +4860 5832 6318 4374 5832 5346 5832 5346 5832 4860 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3888 5832 6318 3888 5832 5346 5346 4860 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +3402 5832 6318 4374 5832 5346 5346 5346 5346 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 5346 4860 5832 5832 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 5832 4860 5832 5832 4860 4374 5832 5346 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 5832 5832 4374 4374 4374 5832 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5832 6318 4860 4860 5832 4374 4374 5346 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 5346 6318 4860 5346 5832 5346 4860 4860 5346 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 4860 6318 5346 5832 5832 5346 3888 4374 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5832 6318 4374 5832 5832 4860 4860 5346 5832 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +4860 5346 5832 5346 5832 4860 4860 3888 5346 5346 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +5346 5346 6318 4860 6318 5346 4374 3402 4374 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +4860 5346 4860 5346 5346 5832 4860 4374 5346 5832 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4374 6318 4860 5346 5832 5346 4374 5832 5346 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +5346 4860 5832 5346 5832 5832 5346 4374 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +4860 5346 5832 5346 5832 5346 4860 3888 5832 4860 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5832 4860 5346 5346 5832 5832 5346 4374 3402 5346 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5346 4860 6318 4860 5832 5346 5346 3888 4860 4860 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5832 4860 6318 5346 4860 6318 4374 4860 5346 5346 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 6318 5346 5832 5832 4860 4860 4860 4374 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4860 5832 5346 5832 6318 4860 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +5346 4374 6318 6318 5832 6318 5832 4860 4860 5346 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 3888 5832 6318 5832 5832 5346 3888 5346 5832 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +4860 4860 6318 6318 5832 6318 3888 4860 5346 5346 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 6318 5832 5832 6318 5346 4374 5346 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4860 5346 6318 5832 4860 5346 4374 4374 5832 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 4374 5832 5832 5832 5832 5346 4860 4860 4860 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5832 5346 6318 6318 5346 5832 5346 3888 5346 5832 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5346 5346 6318 6318 5832 6318 4860 4374 5346 5346 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 6318 5832 6318 4860 4860 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5832 5346 6318 5832 5832 5346 5346 5832 5346 5832 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 5832 4860 6318 5832 5346 5346 4374 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 5346 6318 6318 4860 5832 5832 5346 5346 4860 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5346 4860 5346 5346 5346 6318 4860 4860 5832 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +5832 3888 5346 5346 4860 5832 5832 4860 5346 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +4860 5346 5346 6318 4860 5832 5346 5346 5832 5346 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5346 4374 5346 5832 5346 6318 5346 5346 5832 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5832 5346 4860 5832 4860 5832 5346 5832 4860 4860 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 5832 5832 5832 5346 6318 4860 4860 5832 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5346 4860 5832 6318 5346 6318 5346 4860 5346 5346 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 5832 5346 5832 5832 5832 5346 5832 4860 5832 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 4860 5832 6318 5832 6318 5346 5832 5832 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5832 5346 5346 6318 5346 5346 5346 4860 4374 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 5346 5832 5346 5346 5832 6318 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 6318 5346 6318 5832 5346 4860 5346 5832 5346 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5346 5832 5832 6318 5832 4374 4860 4860 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5832 6318 5832 6318 5832 4860 5346 5832 6318 4860 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 +5346 6318 5832 6318 5832 4860 4860 5832 6318 5346 diff --git a/tests/functional/data_second_complex_case/series_G4.txt b/tests/functional/data_second_complex_case/series_G4.txt new file mode 100644 index 00000000..e73f109f --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G4.txt @@ -0,0 +1,8760 @@ +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 218 436 218 218 436 218 436 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 436 436 436 218 218 436 436 218 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 218 436 436 218 218 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 218 0 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +218 436 218 436 436 436 436 436 0 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +436 436 436 436 0 436 436 436 218 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +218 436 436 218 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 218 436 218 436 436 436 218 218 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 0 436 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 436 436 218 218 436 218 436 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 218 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 218 0 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 218 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 436 436 436 436 218 436 218 436 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 436 218 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 436 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 436 218 436 436 436 218 218 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +436 0 436 436 436 436 436 0 436 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +218 218 436 436 436 436 436 436 218 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 218 436 436 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 218 218 218 218 436 218 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 218 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 436 218 436 436 218 436 436 436 218 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 218 218 436 436 218 218 436 436 218 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 0 218 218 436 436 218 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 436 218 436 218 436 218 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 218 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 218 218 218 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 436 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 218 218 436 436 436 436 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 218 436 218 218 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 218 436 0 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +436 436 436 218 436 436 436 436 218 218 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 218 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +218 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 218 436 218 436 436 436 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +218 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 218 436 218 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +218 218 436 436 218 436 436 436 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 218 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 218 436 218 218 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +218 436 218 218 436 436 436 436 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 218 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 218 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 436 436 218 218 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 0 218 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +436 436 436 436 218 218 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +218 436 218 218 218 436 436 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 436 218 436 218 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +218 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 218 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +436 218 436 436 218 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 218 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 218 218 436 436 436 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +218 436 436 436 436 218 218 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +218 436 436 436 436 436 218 436 436 218 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 218 436 436 436 436 0 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 218 218 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 0 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 218 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +218 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 218 436 436 436 218 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 218 436 218 436 436 436 218 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +218 436 436 436 436 436 436 436 0 436 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 436 218 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 218 436 436 436 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 436 436 436 436 218 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 218 436 436 436 436 436 436 218 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 218 436 436 436 218 436 218 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 436 436 436 436 436 218 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 218 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 218 436 218 436 218 436 436 436 436 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 218 436 436 436 218 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 218 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 436 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +436 436 0 218 436 436 436 218 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +218 436 0 218 436 436 436 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 218 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 218 0 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 0 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 436 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 218 218 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 218 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 218 218 436 436 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +436 218 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +218 436 218 436 218 436 436 436 436 218 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 0 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 436 436 436 436 218 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 218 436 436 436 436 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +436 436 218 218 218 436 436 436 218 218 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +218 218 218 218 218 436 436 436 218 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 218 436 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 436 218 218 436 218 436 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 218 218 218 436 436 218 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 218 218 436 436 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +436 436 218 218 436 436 436 218 436 436 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +218 436 218 0 436 218 436 436 436 218 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 218 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 436 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +218 436 436 436 218 436 436 436 436 218 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 218 436 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 218 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 218 436 436 436 436 436 436 436 218 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 218 218 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +436 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +218 436 436 436 436 436 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 218 436 436 436 436 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 436 436 436 436 436 218 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 436 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 +436 218 436 218 218 436 436 436 436 436 diff --git a/tests/functional/data_second_complex_case/series_G5.txt b/tests/functional/data_second_complex_case/series_G5.txt new file mode 100644 index 00000000..2d7c0f68 --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G5.txt @@ -0,0 +1,8760 @@ +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 145 203 174 203 203 145 203 203 145 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +203 174 174 174 203 203 145 174 145 174 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +174 174 174 174 174 203 145 203 203 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 203 145 174 203 174 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +145 174 174 174 174 174 116 203 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 145 203 174 145 203 145 174 174 203 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +174 87 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +145 116 203 174 116 203 145 203 203 174 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +174 116 174 174 145 174 145 145 174 145 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +145 145 145 174 174 145 116 145 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +174 116 203 203 174 174 116 174 174 174 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +116 145 174 203 116 174 145 145 145 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 116 203 174 174 174 116 174 174 145 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +145 145 203 203 174 174 145 174 145 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +116 116 203 203 174 174 145 174 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 116 145 203 116 174 174 116 174 174 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 174 203 145 145 145 174 174 145 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +145 145 203 174 145 145 145 174 174 174 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +87 116 174 203 116 174 145 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 145 145 203 145 174 174 174 174 145 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 203 174 174 116 145 145 174 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 116 145 145 174 145 203 145 116 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +174 174 203 203 145 116 203 174 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 145 174 203 145 116 203 145 145 174 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +145 174 203 174 174 145 203 174 145 145 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +116 203 174 174 145 174 203 203 203 174 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 116 203 145 145 145 203 174 116 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +174 174 174 145 174 174 174 203 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 203 174 174 174 174 145 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 145 174 174 145 203 203 145 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 174 174 116 145 174 203 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 174 116 145 174 203 174 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 174 203 174 203 174 145 203 203 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +203 145 203 145 174 174 145 203 145 145 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +174 116 174 116 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 145 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +203 116 203 87 203 174 174 203 203 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +174 116 116 87 203 203 174 203 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +145 145 174 116 203 203 145 174 174 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +174 145 174 145 203 145 145 116 203 174 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +145 145 174 145 203 203 174 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +174 116 174 174 174 203 145 174 203 145 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +145 145 174 174 203 203 174 174 203 174 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +174 145 174 145 203 203 145 174 203 203 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +87 87 174 145 203 203 203 174 203 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 145 174 145 145 203 174 145 145 174 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +145 116 145 174 203 203 203 116 203 203 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +116 145 145 174 174 174 203 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 145 174 174 174 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 116 174 174 203 174 203 116 203 174 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 87 174 174 174 145 203 87 203 203 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 174 174 203 145 174 174 87 203 116 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +145 145 116 203 145 145 203 87 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +116 174 174 203 174 116 174 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 174 203 174 174 116 203 116 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +145 116 203 203 174 145 203 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +174 174 203 174 203 145 174 145 203 174 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +145 116 203 145 203 116 203 145 203 116 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 174 203 116 203 145 203 116 203 174 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 145 174 203 203 116 203 87 203 145 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +174 174 174 203 203 145 203 145 203 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +203 174 203 145 174 145 203 116 145 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +174 203 174 203 174 116 203 174 174 174 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 174 203 145 203 174 145 116 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 203 203 203 145 203 174 174 145 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 174 203 174 145 203 203 145 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +203 174 203 174 174 145 203 174 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +174 203 203 174 174 116 174 203 174 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +145 174 203 203 174 145 203 174 116 174 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 203 145 203 203 203 145 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 174 174 174 203 203 174 145 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 203 203 174 145 174 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 203 174 174 174 203 145 145 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 174 174 174 203 145 174 174 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 174 203 203 145 145 203 174 174 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +174 145 174 174 145 203 174 145 145 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +145 145 174 116 145 203 203 203 174 203 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 203 203 174 203 203 203 174 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +174 174 174 145 145 203 174 203 203 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +145 145 174 174 174 203 203 203 174 174 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +174 145 203 145 174 203 203 174 174 203 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 174 203 145 174 174 174 203 203 174 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 174 203 174 203 145 174 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +145 116 203 203 145 145 203 203 203 203 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 174 174 145 203 174 203 116 174 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 145 203 174 174 203 203 116 145 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 174 116 203 174 203 174 203 203 203 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 145 145 203 145 174 203 174 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +174 174 145 174 174 203 174 145 203 174 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 203 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 174 145 203 174 203 203 174 203 203 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +116 116 174 203 145 203 203 203 174 174 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +145 174 203 203 145 203 203 203 174 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +116 174 174 174 145 145 174 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +87 174 174 203 145 203 203 203 203 203 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 145 174 174 116 203 203 203 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 174 174 203 203 174 203 174 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 203 145 174 145 203 203 203 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +145 174 203 145 145 203 203 203 174 145 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +174 203 203 174 174 174 203 174 203 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +145 203 203 174 174 145 203 174 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +116 203 203 174 203 203 203 203 174 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +174 203 145 174 203 203 203 145 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +116 203 203 174 174 145 116 203 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 174 203 145 203 203 174 174 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 203 174 145 203 174 174 203 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +174 174 203 174 174 203 174 174 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +203 203 174 174 174 174 174 203 203 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 174 174 145 203 174 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +174 203 174 174 203 203 145 203 203 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 145 203 174 174 203 174 203 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +203 174 203 174 174 203 174 203 174 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +174 203 145 145 203 203 174 203 203 174 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 174 174 174 203 203 174 174 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +203 145 174 174 174 145 145 145 203 145 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 203 203 174 174 174 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 174 203 203 174 203 145 174 145 203 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 203 174 174 145 174 174 203 174 174 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 145 174 203 145 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +174 203 145 203 174 203 174 174 174 116 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +203 203 203 174 203 174 174 116 145 174 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 174 203 203 174 174 203 203 174 203 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 203 203 203 174 203 203 145 174 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +174 203 145 203 203 174 174 203 145 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 174 203 203 174 145 203 145 174 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +203 203 203 174 174 145 203 203 145 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +174 174 203 174 203 203 145 145 116 203 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 203 145 203 174 174 203 203 174 174 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 145 174 145 203 203 203 145 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 145 203 174 174 203 174 174 174 203 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +203 203 174 174 145 174 203 174 174 145 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 174 203 174 203 145 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +145 203 203 145 145 145 174 203 174 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +174 174 203 145 145 203 145 203 145 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 174 203 116 174 174 203 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 203 203 116 145 203 174 203 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +203 145 174 174 174 203 203 174 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +174 145 174 174 145 174 145 203 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +145 203 174 174 145 203 174 174 203 203 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +203 174 203 145 174 174 203 203 203 174 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +174 203 174 116 174 203 203 203 203 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 203 203 174 174 174 203 203 174 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 174 203 145 174 174 203 203 203 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +203 203 203 174 174 174 174 203 174 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +174 174 145 145 174 203 203 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 203 174 174 174 203 145 203 145 203 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +203 174 203 174 174 174 174 203 203 174 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +174 203 174 203 203 174 174 203 203 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +203 203 203 174 174 145 174 203 145 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 203 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 203 174 174 174 203 174 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +203 174 203 174 174 203 145 203 203 145 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +174 116 174 174 203 145 116 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 174 203 203 203 174 203 203 203 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 174 203 203 174 203 145 203 203 174 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 145 203 203 203 203 174 174 174 116 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +203 145 203 203 203 174 145 203 203 203 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +145 174 145 203 203 203 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 174 174 174 174 174 174 203 174 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 145 203 203 203 203 145 203 203 203 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 174 174 203 203 174 174 203 174 145 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 145 174 174 203 203 174 203 203 174 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +203 174 174 145 145 203 203 203 203 203 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +145 145 203 174 203 145 203 203 145 174 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +203 174 174 174 174 174 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 174 174 145 174 145 203 203 174 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +174 145 203 174 203 203 174 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 203 174 203 145 203 203 203 203 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 203 145 174 203 145 174 145 203 174 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +203 174 203 174 174 174 203 174 174 203 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +174 174 203 145 203 145 203 203 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 174 203 145 203 203 174 174 203 174 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 174 145 203 174 203 203 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +203 203 203 174 145 203 145 174 203 203 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +174 203 203 87 203 174 203 203 203 174 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 174 145 203 174 203 203 174 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +203 174 203 174 203 145 203 174 145 203 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +174 174 203 174 145 203 203 174 203 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +203 145 203 174 145 203 174 174 174 174 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +174 174 203 174 203 174 174 203 203 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 203 174 203 145 203 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 174 203 145 174 203 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +203 174 174 203 203 203 203 174 174 174 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +174 145 203 203 203 174 174 203 174 116 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +145 145 203 174 203 203 174 203 203 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 203 203 174 174 174 203 174 203 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 174 174 203 145 203 203 203 203 145 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 203 203 203 174 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +203 145 174 116 203 203 203 203 203 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 203 174 203 203 203 174 203 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 174 174 174 203 203 203 145 203 145 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +174 145 174 203 203 145 116 203 174 203 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +203 174 174 203 174 145 203 174 174 174 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +174 203 203 203 174 174 145 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +203 145 203 203 203 174 203 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +174 203 203 203 203 203 174 203 203 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 203 145 203 145 174 203 203 174 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 174 174 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +203 174 203 203 203 203 203 203 203 203 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +145 174 145 203 203 174 203 145 174 174 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +203 174 203 174 145 203 174 203 203 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +174 174 174 145 174 174 174 203 174 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +145 174 203 203 174 203 174 174 203 203 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +203 145 174 174 203 203 203 174 174 174 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +145 145 203 174 203 174 203 203 174 203 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +174 174 203 203 203 174 116 203 203 174 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 116 203 203 203 174 203 174 174 203 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 145 145 145 203 174 174 174 203 174 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +203 174 145 203 203 203 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +174 145 174 145 203 174 203 203 203 203 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +203 116 203 174 145 203 174 145 203 145 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +174 145 203 203 203 203 203 174 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 145 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 174 203 174 174 203 174 203 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 145 174 203 203 145 145 174 203 174 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +203 174 203 203 203 174 174 145 203 116 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +145 174 174 203 174 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +174 203 203 203 203 203 174 203 203 174 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 174 203 174 116 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 203 174 203 174 203 203 203 203 174 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 174 174 203 145 174 174 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 174 203 203 203 174 203 203 203 145 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +203 203 203 174 203 174 203 203 203 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 174 145 145 174 203 174 174 174 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +174 203 203 203 203 174 203 174 203 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 174 203 203 203 174 174 116 145 174 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 203 203 203 174 203 203 203 145 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 174 203 203 203 174 174 203 203 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 203 203 203 174 174 203 203 203 174 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 145 203 203 145 174 203 174 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +203 174 203 203 174 174 203 203 203 145 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +145 203 174 203 174 203 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +174 203 174 203 203 174 203 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +203 174 116 203 203 203 203 203 174 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 174 203 145 203 203 203 203 174 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +174 174 203 174 174 174 203 203 203 203 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +203 203 203 203 203 174 174 203 174 174 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +174 203 203 174 145 174 174 203 203 203 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 174 174 203 174 203 203 203 174 174 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 116 145 203 203 203 203 203 174 203 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +203 203 116 203 203 203 203 174 174 174 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +174 203 203 203 203 203 203 203 174 145 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 203 174 174 203 116 203 174 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 145 174 203 203 203 145 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +203 203 203 174 203 203 203 203 203 174 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +174 174 203 174 174 203 203 174 203 203 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +203 203 174 174 203 203 203 203 203 174 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 203 203 145 174 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +174 203 203 203 203 174 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 174 145 145 203 203 203 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 174 174 203 203 203 174 203 203 174 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 174 174 203 174 203 203 203 203 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +203 203 203 203 203 203 203 203 174 174 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +174 203 174 203 203 203 203 203 174 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 203 174 203 203 203 174 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +203 203 174 174 203 203 174 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 203 203 174 203 145 203 203 203 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 174 203 203 145 203 203 203 87 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 203 174 203 174 174 203 203 203 203 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +174 145 145 203 174 203 174 203 145 174 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +145 145 203 203 174 203 203 203 203 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +174 203 203 145 174 174 203 203 174 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +145 203 174 174 203 174 174 203 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 203 174 203 174 203 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 203 174 174 203 203 174 174 203 203 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +174 174 174 203 203 174 203 203 203 145 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +87 203 203 203 203 174 203 174 203 174 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +174 203 203 174 174 174 203 145 174 203 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +145 203 203 203 203 203 203 203 203 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 203 203 203 174 203 203 203 174 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 174 174 203 203 203 203 174 203 174 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +174 203 203 203 203 203 145 203 145 203 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +145 174 203 203 203 203 116 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +174 203 203 174 174 174 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 145 174 203 203 203 203 203 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 203 203 203 203 203 145 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 203 174 116 203 174 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +203 174 145 174 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +174 174 174 145 203 174 174 203 203 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +203 145 145 203 145 203 203 203 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 116 174 203 203 203 203 145 174 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +174 116 116 203 174 203 203 116 174 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +203 174 145 174 174 203 174 203 203 116 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +174 174 87 116 203 174 203 174 203 87 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 145 174 203 174 203 174 174 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 174 203 174 203 145 145 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 174 174 203 174 174 203 203 174 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 145 145 174 174 203 174 203 203 116 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +203 174 174 203 174 174 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +174 174 174 203 203 203 203 203 203 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 203 174 203 203 203 145 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 174 174 174 203 174 174 174 174 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 174 174 174 203 203 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 174 203 203 174 174 174 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 203 145 203 174 174 203 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 203 174 116 174 203 203 174 203 145 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 174 145 145 203 174 174 203 174 116 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +203 203 203 174 203 174 203 174 174 145 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +174 203 203 174 174 174 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 174 203 174 203 203 174 203 174 174 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 203 174 203 203 203 203 203 145 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 203 174 145 174 203 145 203 174 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 145 203 145 174 203 145 203 203 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +203 174 203 116 203 145 145 174 145 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +174 203 145 174 145 203 174 145 174 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +203 203 203 174 145 203 145 174 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 174 145 145 174 145 174 203 203 174 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +174 203 174 145 174 174 174 203 203 145 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 203 145 174 145 203 116 203 174 174 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +203 174 145 174 174 203 174 203 174 145 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +145 174 145 203 174 174 145 174 174 174 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +174 174 145 203 174 174 145 203 203 145 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 203 145 203 174 174 174 203 174 174 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +203 145 145 203 174 203 174 203 203 145 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 174 174 145 203 174 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +174 203 116 203 145 174 174 203 203 174 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +203 174 145 203 145 203 145 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 203 145 203 145 174 174 203 203 145 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +174 174 145 174 145 145 145 174 174 116 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +203 203 116 203 174 174 203 203 174 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +174 203 145 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +145 203 116 203 145 174 203 203 203 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 174 116 174 203 174 203 203 145 174 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +174 145 116 174 203 174 145 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +203 174 145 203 174 174 203 174 145 145 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 174 203 145 203 203 174 174 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +174 203 145 203 203 174 203 203 174 145 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 203 174 203 203 174 174 203 174 174 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +203 174 116 174 174 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +145 174 174 174 145 145 203 203 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 116 174 174 203 174 174 174 174 203 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +203 174 174 203 174 174 203 203 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 203 174 174 174 174 174 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +174 174 174 203 174 174 145 145 174 145 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +203 174 174 174 145 174 174 203 145 203 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 145 174 203 203 174 203 203 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 116 203 203 174 174 174 174 174 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +174 174 174 174 203 203 174 174 174 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +116 145 203 174 203 174 203 145 145 203 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +87 145 203 203 203 203 174 145 203 174 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 203 174 203 203 203 174 145 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +145 145 174 203 174 174 203 145 174 203 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 145 203 203 174 174 203 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 203 203 203 174 174 174 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +116 145 174 203 174 203 174 145 203 203 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 174 203 174 203 174 203 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 203 203 174 174 145 116 174 174 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 174 203 174 174 203 174 203 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +145 145 145 203 174 203 203 145 145 203 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 116 203 203 203 203 174 174 174 174 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 145 203 174 174 203 145 116 203 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 174 203 174 174 203 203 174 145 203 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +116 145 203 203 174 174 174 145 174 145 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 145 203 174 203 203 203 203 203 203 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +145 174 203 203 145 174 203 174 203 174 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 203 174 203 174 203 174 203 203 203 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 145 174 174 203 203 174 203 203 174 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 203 145 203 174 203 174 174 174 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 145 203 203 174 203 203 203 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 174 203 203 174 203 145 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 174 174 203 203 116 203 116 174 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 +174 203 116 203 203 174 203 174 203 174 diff --git a/tests/functional/data_second_complex_case/series_G6.txt b/tests/functional/data_second_complex_case/series_G6.txt new file mode 100644 index 00000000..ba33a610 --- /dev/null +++ b/tests/functional/data_second_complex_case/series_G6.txt @@ -0,0 +1,8760 @@ +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2226 2067 2226 2226 1749 2385 2067 2067 2067 1908 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 2067 2544 2226 1749 2544 1749 2067 1908 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +2067 1908 2226 2067 1908 2067 1908 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2067 2385 1908 1749 2544 1272 2067 2067 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +1908 2226 2385 2067 1908 2385 1908 1908 1908 2226 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2067 1908 2385 1908 1749 2544 1749 1908 1908 1908 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2226 2067 2226 2067 1590 2544 1590 2067 2226 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 2067 2385 1749 1749 2067 1749 2067 2067 2067 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +2067 1749 2385 2067 1431 2067 1749 1908 2067 2226 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 2067 2226 2226 1590 2544 2067 2067 1908 2067 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 1908 2544 1749 1908 2067 1908 2067 2067 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1908 2067 2385 2067 1590 2226 1749 1908 2226 2226 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1749 1908 2544 1908 1749 2226 1749 1908 1908 2067 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 2067 2544 2067 2067 2385 1908 1590 2226 1908 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1590 2226 1749 1272 2226 1431 1908 2226 2226 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1749 2226 1908 1908 2385 1749 2226 2067 1908 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2226 1749 1749 2544 1908 1908 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1908 2385 1908 2067 2385 2067 2226 2226 2067 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +1908 1749 2226 2067 1749 2226 1908 1908 2226 2226 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 2067 2067 2067 1749 2544 2067 2067 2226 1908 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +2067 1749 2067 2226 2385 2226 2226 2067 2385 2226 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1749 1908 1908 1908 2226 2226 2226 2226 2385 2067 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1590 1908 2385 1908 2226 2226 2226 2226 2067 2226 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +1908 2067 2067 2067 2067 2385 2226 2385 2385 2067 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +2067 1908 1908 2067 2544 2544 1749 1749 1908 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +1749 1590 1908 2067 2385 2385 1908 2226 1749 2385 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +2226 1908 1749 1908 2226 2544 2067 2226 1908 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +1590 2067 2067 2226 2067 2385 2067 2067 2067 2226 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2067 2067 2067 2385 2067 2385 1908 2067 1590 2385 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 1908 2385 2544 2544 2226 2067 2067 2226 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 2067 2067 2544 2385 2067 2226 1749 2544 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +2226 1908 1908 2226 2385 2226 2385 2226 2226 2226 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +1908 1590 2226 2226 2067 2544 2226 2385 2226 2385 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +2226 2067 1749 2067 2067 2544 2385 2067 2385 2226 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1749 2067 2226 2385 2385 2385 1908 2067 1749 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1908 2067 2385 2067 2226 1908 2226 2385 1908 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +1908 1590 2067 2385 2067 2226 2226 2385 2067 1749 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2226 1590 2067 1908 2067 2226 1749 2385 2385 2067 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2385 1908 1749 2226 2067 2226 2544 2544 2067 1749 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2226 2067 2067 2226 2385 2544 1590 2385 2067 1590 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2385 1749 1908 2067 2226 2385 2226 1908 2067 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 2067 2067 1908 2385 2544 2385 2544 2226 1908 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1590 2226 1749 2226 2544 2385 2544 2385 2067 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2226 1749 2385 2067 2226 2226 2385 2226 1908 1908 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2226 2226 2226 2226 2385 2067 2226 1749 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2544 1908 2385 2226 2226 2385 2067 2067 2385 2067 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2385 2067 2385 1749 2385 2385 1590 2385 1908 1908 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2226 1749 2385 2226 2226 2385 2385 2067 2385 2067 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2544 1590 2226 2067 2226 2385 2385 2067 2067 1908 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2067 1431 2226 1908 2226 2385 2385 2385 2067 1749 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 2385 2067 1272 2067 1749 2067 1749 2067 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2544 1749 1908 2067 1749 2385 2385 2067 2067 1908 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +2226 1908 2385 1908 2385 2544 2385 2385 2385 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +1908 1908 2385 1908 2226 2067 2067 2067 2226 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1749 2385 1749 2226 2385 1749 2385 1908 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1908 2385 1749 1908 2385 2385 2226 2226 2067 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 1749 2226 1908 2226 2385 2226 2385 2067 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 2067 2067 1749 2226 2544 2226 2385 2226 1908 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2226 1908 2067 1908 1908 2226 2067 2385 2067 1590 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2385 1590 2067 1908 1908 2385 2226 2067 2067 1749 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 2067 2226 1908 1908 2544 2226 2226 1749 2067 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2226 1908 1749 1749 2067 2385 2226 2067 2226 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2067 2067 2226 2067 1908 2385 2226 2067 2067 2226 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 2067 2385 2067 2067 2226 1908 2226 1749 2067 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +2226 1908 2226 2067 2067 2544 1908 2226 1908 2226 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +1908 2226 2226 2067 2067 2385 1908 1908 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 2067 2226 1908 2067 2385 1908 2067 2226 2067 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2067 1908 2385 1908 2067 2385 1749 1749 2226 1908 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +2226 2067 2226 1908 2226 2226 2067 1908 2067 2226 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +1908 2226 2067 2067 2226 2385 2067 1908 2226 2385 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +2226 2385 1908 1908 2067 2385 1908 2067 2067 2067 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1749 2226 2226 1908 2067 2544 2385 1908 1590 2226 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 2385 2385 2067 2067 2385 1908 1908 2226 1749 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +1908 1908 2226 2067 2067 2385 2385 2067 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2067 1431 2067 1908 2067 2385 1908 1908 2067 1908 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2226 2385 2385 2067 2067 2226 2385 2226 2385 2226 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2067 2067 2067 2226 2385 2067 2226 2067 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2067 2226 2385 2067 1908 2385 2385 1749 2385 2226 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2385 2067 2067 1749 2544 2385 1908 2226 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 2067 1590 2544 2385 1908 2385 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +2226 2226 2226 1749 1590 2226 2385 1749 2226 2067 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +1908 2226 2226 2067 1749 2385 2067 1908 2544 2226 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 2226 2067 2385 2067 2544 2385 1590 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2385 1908 2226 2385 1590 2067 2385 1749 2385 1908 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +2067 2385 2226 2226 1908 2067 2226 1590 2544 2226 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +1908 2067 2385 2385 2226 2067 2385 2067 2226 1908 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2067 2385 2385 1908 2067 2385 2385 1749 1908 2385 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2385 1908 2226 2067 2067 2067 2385 2067 2544 2067 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 2385 2385 2067 2067 2385 2226 2226 2544 2226 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2226 1908 2067 1908 1590 2226 2067 2067 2385 2067 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2067 2067 2067 1749 2067 1908 2226 2544 1749 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2226 2385 2226 1590 2067 2067 2067 2544 2067 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +2067 2067 2226 2226 2226 2226 1749 2067 2385 2226 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +1908 2385 2226 2226 2067 2067 2067 1590 2385 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +2067 2226 2385 2226 2226 2067 1590 2385 2544 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +1749 2385 2067 2544 2067 2067 1590 2067 2067 2067 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +2067 2385 2226 2385 1908 2067 1908 2226 2544 1908 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1749 2385 2067 2067 2226 1908 2067 1908 2544 2067 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +1908 2067 2067 2226 2067 2067 2067 2385 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2385 2385 2226 2226 1749 2226 2385 2226 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +2067 2226 2226 2226 2067 2226 2067 2385 2226 2067 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2067 2067 2226 2067 2226 2067 2067 2385 2385 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1749 2226 2067 2385 2385 2067 2067 2226 2385 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1908 2544 2226 2067 2067 2226 1908 2067 2226 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +1749 2226 1908 1908 2385 1749 1749 2385 2544 2226 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +2067 2385 2226 2385 2385 2226 1908 2067 2544 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +1749 2226 2544 2544 2226 2067 1908 2385 2385 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +2067 2544 2385 2385 2385 2226 1908 2544 2226 2385 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +1908 2544 2544 2385 2544 2067 1590 2544 2544 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +2067 2226 2544 2226 2226 2067 1908 2226 2226 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +1749 2385 2385 2226 2544 2226 1908 2385 2544 2226 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +2067 2385 2067 2226 2385 2226 2067 2544 2226 2067 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +1908 2226 2067 2226 2385 1908 1908 2385 2226 2226 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +2067 2226 2385 2226 2544 2067 1908 2067 2226 1908 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1749 2544 2385 2385 2226 2067 1908 2385 2385 2226 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +1908 2385 2226 2385 2385 2067 1908 2385 2385 2544 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2385 2385 2067 2226 2067 2226 2226 2385 2544 2385 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 1908 2067 2385 2385 2226 2385 2544 2226 2544 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2067 2385 2385 2226 2544 2385 2544 2544 2544 2226 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2226 2385 1908 2544 2385 2067 2067 2067 2226 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2544 2544 2226 2544 2226 2544 2226 2385 2067 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2385 2544 2226 2544 2544 2544 2226 2385 2226 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2067 2385 1908 2544 2226 2544 2385 2226 2385 2385 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2226 2385 2226 2385 2385 2067 2385 2385 2385 2544 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2385 2226 2385 2544 2226 1908 2544 2226 2226 2385 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2385 1908 2067 2067 1590 2544 2226 2385 2226 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2544 2385 2544 2544 2226 2226 2385 2385 2544 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2067 2385 2226 2385 2385 2385 2385 2544 2067 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +2226 2544 2385 2226 2385 2226 2067 2385 2385 2385 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +1908 2226 2067 2385 2226 2385 2385 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2226 2385 2067 2226 2067 2226 2544 2385 2067 2226 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2067 2544 2226 2544 2544 2385 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2544 2226 2226 2226 2385 2226 1908 2226 2067 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2226 2385 1749 2385 2226 2385 2226 2544 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2226 2544 1908 2067 2385 2226 2067 2067 2385 2385 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2385 2385 2385 2226 2385 2067 2226 2385 2385 2226 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2226 2067 2385 2385 2544 1908 2385 2385 2226 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2385 2067 1908 2385 2385 2226 2385 2385 2385 2385 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2544 2226 2385 2226 2385 2226 2544 2226 2226 2226 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2226 2226 2385 2226 2226 2385 2226 2544 2226 2067 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2544 2385 2226 2067 2544 2067 2385 2385 2544 2385 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2385 2385 2385 2226 2067 2226 2385 2385 2544 2226 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2385 2226 1908 2385 1749 2385 2385 2385 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2226 2544 2544 1908 2544 2067 2226 2385 2226 2385 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2544 2385 1908 2226 1908 2544 2544 1908 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 2067 2385 2385 2544 2385 2226 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2544 2385 2544 1908 2544 2226 2385 2385 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2067 2385 2544 2385 2226 2226 1908 2067 2385 2226 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2544 2226 1749 2226 2385 2385 2226 2544 2067 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 2226 2226 2226 2067 1908 2385 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2544 2226 1749 2226 2067 2226 2226 2067 2544 2385 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2226 2385 2385 2226 2544 2385 2226 2544 2067 2226 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2067 2226 2067 2226 2544 2226 2385 2226 2385 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2067 2544 2385 2385 2226 2544 2067 2544 1908 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 1431 2226 2226 2385 2385 2226 2226 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2385 2544 2544 2067 2544 2544 2544 2385 2385 2385 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2544 2544 2226 2067 2067 2226 2226 2544 2544 2226 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +2385 2226 2544 2544 2544 2067 2226 2544 2385 1908 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +1908 2385 2385 2067 2385 2385 1908 2226 2544 2385 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2226 2226 2385 2385 2226 2067 2226 2226 2385 2226 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2385 2067 2226 2385 2226 2385 2544 2385 2385 2385 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2385 2385 2385 2385 2385 2226 2385 2226 2226 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2226 2226 2385 2226 2385 2385 2067 2226 2385 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +2544 2385 2226 2385 2067 2544 2226 2544 2385 2067 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +1908 2226 2226 2385 2544 2544 2067 2544 2385 2226 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2385 2385 2385 2385 2544 2544 2544 2226 2544 2385 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2067 2067 2385 2544 1908 2544 2385 2385 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2067 2385 2385 2067 2226 2226 1749 2385 2067 2067 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2385 2226 2385 2385 2544 1908 2385 2385 2385 2385 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2226 2226 2385 2385 2385 2544 2544 2385 2385 2544 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2385 2067 2385 2226 2544 2544 1908 2385 2067 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2226 2067 2226 2226 2226 2385 2385 2226 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2385 2067 2385 2385 2385 2544 2385 2385 2385 2385 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2226 2067 2385 2226 2226 2544 2226 2067 1908 2067 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2067 2226 2385 2226 2544 1908 2544 2385 2385 1908 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2544 2385 2544 2544 2544 2067 1908 2067 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2385 2385 2385 2544 2385 2226 2067 2226 2385 2385 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +2067 2385 2226 2226 2385 2544 2385 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1749 2067 2544 2544 2385 2385 2544 2385 2226 2226 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +1908 2226 2385 2226 2544 2226 2067 2385 2226 2067 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +2067 2226 2544 2544 2544 2544 2226 2067 2385 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +1908 2226 2067 2385 2544 2385 2385 2067 2544 2226 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2385 2067 2226 2385 2385 2226 2385 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2226 2226 2544 2385 2544 2226 2544 2385 2226 2385 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2544 2226 2544 2544 2226 2385 2226 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2067 1908 2544 2226 2544 2544 2226 2226 2544 2067 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2544 2385 2226 2544 2544 2067 2385 2385 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2385 2385 2385 2067 2385 2544 2226 2385 2226 2385 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2226 2067 2385 2385 2544 2067 2385 2226 1908 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2544 2067 2226 2544 2385 2385 2226 2544 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2226 2385 2226 2385 2067 2544 2385 1749 2226 2067 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2544 2067 2385 2544 2385 1908 2067 2226 2385 2385 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2067 2385 2226 2385 2544 2067 2226 2067 2385 2067 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2544 1908 2226 2385 2385 2385 2067 2544 2226 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2226 2385 2226 2226 2226 2067 1749 2544 2385 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2067 2226 2385 2544 2544 2385 2385 2544 2067 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2385 2544 2385 2385 2226 2385 2226 2385 2226 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2385 2067 2385 2385 2226 2544 2067 2385 2385 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2226 2226 2544 2067 2385 2385 2067 2544 2226 2067 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2544 2226 2385 2226 2067 2385 1908 2385 2544 2226 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2385 2226 2544 2226 2226 2385 1908 2385 2544 2385 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2226 2385 2544 2385 2544 2385 2385 2226 2385 2226 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2544 2067 2226 2067 2544 2385 2226 2385 2226 2544 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2067 2226 2544 2067 2385 2385 2385 2385 2385 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2067 2067 2544 2385 2067 2385 2226 2544 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2385 2226 2226 2226 2385 2067 2385 2544 2385 2385 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2544 2385 2544 2226 2544 2226 2226 2226 2385 2226 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2385 2385 2385 2544 2385 2067 2226 2226 2544 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2385 2226 2067 2544 2385 2385 2067 2385 2067 2226 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2067 2067 2385 2067 2385 2385 2067 2385 2226 2385 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 1908 2226 2544 2226 2067 2385 2226 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2385 2385 2226 2067 2385 2385 2226 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2385 2067 2226 2226 2385 2385 1908 2226 2544 2067 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2544 2385 2385 2226 2385 2067 2067 2226 2544 2226 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2385 2385 2226 2544 2385 2385 2067 2385 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2544 2067 2226 2544 2226 2385 2067 2226 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2067 2385 2385 2385 2385 2385 2226 2385 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2385 2385 2385 2226 2544 2544 2226 2544 2544 2385 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2385 2067 2544 2385 2544 2226 2544 2385 2226 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2067 2067 2385 2226 2385 1908 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2544 2226 2385 2544 2226 2544 2226 2385 2385 2385 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2385 2385 2226 2226 1908 2067 1908 2544 2544 2226 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2067 2067 2385 2385 2385 2544 2385 2226 2226 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2226 2226 2226 1908 2226 2067 2544 2385 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 2226 2385 2385 2226 2067 2385 2226 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2385 2544 1908 2067 2544 2226 2385 2385 2385 2385 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2067 2226 2544 2544 2544 2226 2385 2226 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2067 2544 2226 2067 2544 2544 2226 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2067 2385 2544 2385 2385 2544 2385 2385 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2385 2385 2226 2385 2544 2385 2226 2067 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2544 2544 2385 2226 2544 2385 1908 2067 2226 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2067 2226 2226 2544 2226 2544 2226 2067 2385 2226 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2385 2226 2226 2067 2226 2385 2067 2544 2385 1908 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2226 2067 2385 2385 2226 2544 2226 2385 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2385 2067 2385 2385 2544 2226 2544 2067 2226 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2226 2226 2226 2067 2544 2544 2226 2067 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2226 2385 2226 2385 2385 1908 2544 2385 2226 2385 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2385 2385 1908 2385 2385 2385 2544 2544 2067 2544 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2544 2385 1908 2226 2067 2226 2544 2226 2067 2067 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2067 2544 2067 2226 2385 2385 2385 2226 2067 2385 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2385 2067 2385 2067 2226 2385 2544 2385 2067 2544 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2544 2226 2067 2385 2385 2385 2385 2226 2385 2226 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2226 2385 1908 2385 2385 2067 2544 2544 2226 2385 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2544 2226 2226 2226 2544 2226 2385 2226 2385 2226 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2067 2385 2226 2226 2226 2385 2385 2544 2226 2385 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2385 2226 2385 2385 2544 2385 2067 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2385 2226 2067 2385 2385 2385 2385 2544 2226 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2544 2544 2385 2544 2385 2226 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2067 2226 2385 2385 2067 2385 2385 2385 2385 2226 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 1749 2385 1908 2544 2226 2226 2385 2544 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2226 2385 2226 2067 2067 2385 2067 2544 2226 2385 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2544 2544 2067 2544 2385 2067 2544 2544 2226 1908 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2226 2385 2544 2544 1908 2544 2067 1749 2067 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2226 2385 2226 1908 2226 2544 2226 1908 1908 2544 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2385 2544 2226 2544 2226 2385 2226 2385 2226 2385 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2226 2226 2067 2385 2544 2226 2385 2544 2067 2544 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2067 2226 2226 2544 2544 2067 2544 2544 2385 2067 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2226 1908 2385 2226 2385 2226 2544 2544 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 2067 2385 2226 2385 2385 2544 2385 2385 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2385 2385 1908 2385 2067 2544 2226 2226 2385 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2544 2226 2544 2544 2226 2385 2226 2226 2544 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2226 2067 2067 2385 2544 2067 2544 2385 2385 2067 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 1908 2226 2385 2385 2385 2226 2385 2385 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2067 2385 2385 2544 2385 2385 1908 2226 2385 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2385 2544 2385 2385 2385 2385 2226 2226 2544 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2544 2067 2385 2544 2544 2544 2226 2385 2385 2385 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2226 2226 2385 2226 2544 2385 2385 2067 2067 2544 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2385 2226 2544 2544 2226 2385 2226 1749 2544 2385 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2226 2385 2226 2226 2226 2226 2385 2226 2226 2544 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2544 2544 2385 2385 2385 2226 2544 2385 2226 2226 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2226 2226 2544 2226 2067 2544 2067 2226 2544 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2226 2544 2544 2385 2385 2385 2067 2544 2385 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2385 2067 2544 2385 2226 1908 2385 2385 2067 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2385 2544 2226 2385 2385 2385 1749 1590 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2226 2067 2544 2385 2544 2067 2544 2226 2067 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2385 2385 2067 2226 1908 2385 2067 2067 2226 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2544 2544 2067 2544 2067 2385 2226 2067 2067 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2385 2544 2544 2067 2385 2385 1908 2067 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2226 2385 2544 2385 2226 2385 1908 2385 2226 2385 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2385 2067 2544 2067 2226 2385 2385 2226 1908 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +2226 2226 2544 2067 2067 1908 2385 1908 2067 2067 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +1749 2544 2544 1908 1749 1749 2385 2226 1749 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2385 2226 2544 2067 2067 1590 2226 2385 2226 2385 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2544 2385 2067 2067 2067 2226 2067 1908 1590 2226 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2385 2385 2385 1590 2067 1908 1908 2226 1908 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2544 2067 1908 2067 2226 2067 1908 2226 1590 2544 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2226 2385 2544 2067 1908 2067 1908 2385 1749 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2067 2385 2385 1908 1749 2385 2067 2067 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2385 2385 2226 1908 2067 1908 2067 1908 1908 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2544 2544 2544 1908 2226 2226 2067 2226 1749 2226 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2226 2067 1749 1749 2226 1908 2226 1908 2067 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +2385 2544 2385 1749 2067 2067 2067 1908 1590 2544 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +1908 2385 2226 1590 1908 2385 1908 2226 1908 2385 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2385 2385 2544 1908 1908 2385 1908 1749 1749 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2385 2385 1908 2226 2385 2067 2067 1590 2544 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2226 2544 2067 1749 2226 2385 2067 2067 1590 2385 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2385 2385 1908 1749 1749 1908 2067 1908 1590 2544 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2226 2226 2226 1908 2226 2067 1749 1908 1908 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2385 2226 2226 1749 2067 2385 1908 2067 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2226 2544 1908 2067 2385 2067 1431 1749 2226 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2067 2385 2067 1749 2226 1749 1431 1908 2067 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2067 2385 2067 2067 2067 2385 1749 2067 1749 2544 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2226 2385 2544 2067 1749 2226 2226 1749 1749 2226 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2544 2226 1908 2067 2226 1908 1908 1908 2544 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2067 2226 2067 2226 2067 2385 2226 2067 1749 2385 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2226 2544 2226 1908 2226 1908 2067 1590 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +2067 2067 2226 2067 1749 2544 2226 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +1590 2544 2226 1908 1908 2226 2067 1908 1908 2544 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2067 2385 2067 2067 1908 2544 2226 1908 1908 2067 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +2226 2226 2226 2544 2067 2385 1908 1749 1908 2385 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +1908 2385 2067 2385 1908 2385 2385 1431 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +2067 2385 2067 2385 2067 2226 1908 1908 2226 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +1590 2226 2226 2385 1908 2385 2385 1431 1908 2067 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2067 2067 2067 1749 2226 2226 1749 2067 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +2226 2226 1908 2226 1749 2067 2385 1749 2226 2226 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1908 2067 1749 2385 1908 1749 1908 1908 2226 2385 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +1749 2385 1749 2544 2067 2067 2226 1908 1908 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +2067 2067 1431 2544 2226 2067 2226 1908 2226 2226 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +1908 1749 1908 2544 2067 2067 2067 1908 2067 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2067 2067 1431 2385 2067 2067 2226 1749 1749 2067 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2226 1908 1590 2067 2067 1908 2226 2226 2226 1908 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 2067 1431 2385 2067 1908 2226 2226 2226 2067 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2067 1908 1590 2385 1908 1908 1908 1749 2226 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2226 2067 1431 2226 2067 2067 2067 2067 1749 2226 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 1908 1431 2544 1908 1749 1908 1908 2067 2067 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2067 2067 1590 2385 2067 1908 2226 2226 2385 2226 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 2067 1272 2385 2067 1908 2067 2226 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2226 1908 1590 2385 1749 1749 1908 2385 2385 2067 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2067 1431 1431 1749 2067 1590 2226 1908 2067 2226 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2385 2067 1590 2067 2226 1590 2226 2067 2226 2067 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 2067 1431 2226 2226 1431 2226 2226 2385 1749 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2226 1908 1272 2226 1908 1749 2226 2226 1908 2067 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 2067 1590 2226 2067 1590 2067 2226 2226 1749 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2067 1749 1749 2067 1908 1590 2067 1908 2226 2067 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 1590 1590 2385 2226 1749 2067 2226 1908 2226 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +2226 2067 1749 2067 1908 1590 2226 2544 2226 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1908 1908 1590 1908 2385 1749 2067 2544 2067 2385 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1908 1749 1749 2385 1908 2067 2385 2226 2226 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +1749 1590 1590 1908 2226 1908 2067 2544 2067 1749 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2385 1749 1590 1908 2067 1908 1908 2226 2226 2067 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 1749 1749 2067 2226 1590 2226 2385 1908 2226 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +2067 2067 1749 2067 2226 1749 2226 2385 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +1908 1749 1590 1749 2067 1590 1749 2226 2067 2067 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2226 1908 1908 2067 2067 1590 2067 2067 2226 2226 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1908 2385 1749 2226 2226 2226 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2385 1908 2067 1590 2226 1908 2067 2226 1908 2067 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2226 2226 1590 2385 2067 2226 2067 2226 2226 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2067 2067 1908 1749 2226 1749 1908 2067 2067 1908 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2226 1749 2067 1908 2067 1749 2067 2226 2385 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2067 2067 1749 2067 2067 1590 2385 2067 2226 2226 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2226 2385 2067 1590 2226 1908 2385 2226 2226 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2067 2226 1908 1908 1749 1908 2385 2067 2067 2067 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2226 2067 1908 2226 1749 2385 1908 2067 1908 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2385 1908 2385 2067 2067 1749 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2067 2067 1749 2226 2226 2385 2067 2385 1908 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2226 2226 1590 1749 2067 1908 2385 2067 2067 1590 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2385 2385 2226 1908 2067 2067 2385 2067 2067 1908 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2226 1908 2226 1749 2385 1749 1908 1749 2226 1749 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +2067 2226 2067 1590 2226 2067 1908 2067 2226 2067 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1590 2544 2067 2385 1590 2226 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2226 2067 1749 2544 1908 2226 2067 2385 1749 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1749 2067 2226 1431 2544 1908 2067 1908 1749 1908 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2226 2226 1908 2544 1908 1749 2067 2067 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1908 2067 2226 1749 2067 1749 1908 2067 1749 2067 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 +1749 2067 2067 1908 2544 2067 1749 2067 1908 1908 diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 7f4d80a9..63faf64d 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -171,6 +171,7 @@ int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), float_parameter("max_generating", TIME_AND_SCENARIO_FREE), int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), ], variables=[ float_variable( @@ -241,10 +242,7 @@ var("nb_stop") .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) .sum() - - param("max_failure") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + <= param("nb_units_max_min_down_time") - var("nb_on"), ), # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. ], @@ -299,7 +297,10 @@ float_parameter("d_min_up", CONSTANT), float_parameter("d_min_down", CONSTANT), int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), ], variables=[ float_variable( @@ -313,6 +314,12 @@ lower_bound=literal(0), structure=ANTICIPATIVE_TIME_VARYING, ), + float_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), float_variable( "nb_start", lower_bound=literal(0), @@ -324,11 +331,18 @@ "NODU balance", var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), Constraint( "Min up time", var("nb_start") .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() <= var("nb_on"), ), Constraint( @@ -336,7 +350,7 @@ var("nb_stop") .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), + <= param("nb_units_max_min_down_time") - var("nb_on"), ), # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. ], @@ -430,92 +444,55 @@ def test_accurate_heuristic() -> None: """ number_hours = 168 - scenarios = 2 + scenario = 0 + week = 0 parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - for scenario in range(scenarios): - for week in range(2): - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=False, - week=week, - scenario=scenario, - ) - status = problem_optimization_1.solver.Solve(parameters) - - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units and round it to integer - output_1 = OutputValues(problem_optimization_1) - nb_on_min: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round( - np.array(output_1.component(g).var("nb_on").value), 12 - ) - ) - ), - index=[i for i in range(number_hours)], - columns=[0], - ) - n_guide = TimeScenarioSeriesData(nb_on_1) - - # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - {g: n_guide}, - number_hours, - thermal_cluster=g, - week=week, - scenario=scenario, - ) - status = problem_accurate_heuristic.solver.Solve(parameters) - - assert status == problem_accurate_heuristic.solver.OPTIMAL - - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil( - np.array(output_heuristic.component(g).var("nb_on").value) - ) - ), - index=[i for i in range(number_hours)], - columns=[0], + for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round( + np.loadtxt( + f"tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster{j+1}.txt" + ), + 12, + ) ) - nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) - - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - nb_on_min, - number_hours, - lp_relaxation=True, - fast=False, - week=week, - scenario=scenario, - ) - status = problem_optimization_2.solver.Solve(parameters) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + + # Solve heuristic problem + problem_accurate_heuristic = create_problem_accurate_heuristic( + { + "G" + str(i): ConstantData(0) if "G" + str(i) != cluster else n_guide + for i in range(1, 7) + }, + number_hours, + thermal_cluster=cluster, + week=week, + scenario=scenario, + ) + status = problem_accurate_heuristic.solver.Solve(parameters) - assert status == problem_optimization_2.solver.OPTIMAL + assert status == problem_accurate_heuristic.solver.OPTIMAL - check_output_values( - problem_optimization_2, "accurate", week, scenario=scenario - ) + output_heuristic = OutputValues(problem_accurate_heuristic) + nb_on_heuristic = np.transpose( + np.ceil(np.array(output_heuristic.component(cluster).var("nb_on").value)) + ) - expected_cost = [ - [78996726, 102215087 - 69500], - [17587733, 17650089 - 10081], - ] - assert problem_optimization_2.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] - ) + expected_output = np.loadtxt( + f"tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster{j+1}.txt" + ) + for time_step in range(number_hours): + assert nb_on_heuristic[time_step, 0] == expected_output[time_step] def test_fast_heuristic() -> None: @@ -720,64 +697,9 @@ def create_problem_accurate_heuristic( scenario: int, ) -> OptimizationProblem: - database = DataBase() - - if thermal_cluster == "G1": - - database.add_data("G1", "p_max", ConstantData(410)) - database.add_data("G1", "p_min", ConstantData(180)) - database.add_data("G1", "cost", ConstantData(96)) - database.add_data("G1", "startup_cost", ConstantData(100500)) - database.add_data("G1", "fixed_cost", ConstantData(1)) - database.add_data("G1", "d_min_up", ConstantData(8)) - database.add_data("G1", "d_min_down", ConstantData(8)) - database.add_data("G1", "nb_units_min", lower_bound["G1"]) - database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data( - "G1", - "failures", - TimeScenarioSeriesData( - get_failures_for_cluster(week, scenario, "G1", number_hours) - ), - ) - database.add_data("G1", "mingen", lower_bound["G1"]) - elif thermal_cluster == "G2": - database.add_data("G2", "p_max", ConstantData(90)) - database.add_data("G2", "p_min", ConstantData(60)) - database.add_data("G2", "cost", ConstantData(137)) - database.add_data("G2", "startup_cost", ConstantData(24500)) - database.add_data("G2", "fixed_cost", ConstantData(1)) - database.add_data("G2", "d_min_up", ConstantData(11)) - database.add_data("G2", "d_min_down", ConstantData(11)) - database.add_data("G2", "nb_units_min", lower_bound["G2"]) - database.add_data("G2", "nb_units_max", ConstantData(3)) - database.add_data( - "G2", - "failures", - TimeScenarioSeriesData( - get_failures_for_cluster(week, scenario, "G2", number_hours) - ), - ) - database.add_data("G2", "mingen", lower_bound["G2"]) - elif thermal_cluster == "G3": - - database.add_data("G3", "p_max", ConstantData(275)) - database.add_data("G3", "p_min", ConstantData(150)) - database.add_data("G3", "cost", ConstantData(107)) - database.add_data("G3", "startup_cost", ConstantData(69500)) - database.add_data("G3", "fixed_cost", ConstantData(1)) - database.add_data("G3", "d_min_up", ConstantData(9)) - database.add_data("G3", "d_min_down", ConstantData(9)) - database.add_data("G3", "nb_units_min", lower_bound["G3"]) - database.add_data("G3", "nb_units_max", ConstantData(4)) - database.add_data( - "G3", - "failures", - TimeScenarioSeriesData( - get_failures_for_cluster(week, scenario, "G3", number_hours) - ), - ) - database.add_data("G3", "mingen", lower_bound["G3"]) + database = generate_database( + lower_bound, number_hours, week=week, scenario=scenario + ) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 From 40282a078f691384a81d8fcd4776f3fb8c77c002 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 13 Jun 2024 17:35:18 +0200 Subject: [PATCH 18/93] Add fast test for second test case --- .../fast/itr1_fast_cluster1.txt | 168 ++++++++++++++++++ .../fast/itr1_fast_cluster2.txt | 168 ++++++++++++++++++ .../fast/itr1_fast_cluster3.txt | 168 ++++++++++++++++++ .../fast/itr1_fast_cluster4.txt | 168 ++++++++++++++++++ .../fast/itr1_fast_cluster5.txt | 168 ++++++++++++++++++ .../fast/itr1_fast_cluster6.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster1.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster2.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster3.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster4.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster5.txt | 168 ++++++++++++++++++ .../fast/itr2_fast_cluster6.txt | 168 ++++++++++++++++++ .../test_heuristic_second_complex_case.py | 86 +++------ 13 files changed, 2040 insertions(+), 62 deletions(-) create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt create mode 100644 tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt new file mode 100644 index 00000000..d62a4866 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.116000000000000000e+03 +1.145000000000000000e+03 +1.148000000000000000e+03 +1.150000000000000000e+03 +1.149000000000000000e+03 +1.121000000000000000e+03 +1.120000000000000000e+03 +1.094000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt new file mode 100644 index 00000000..7986c133 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.210000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +2.210000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.319000000000000000e+03 +2.431000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.019000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.652000000000000000e+03 +0.000000000000000000e+00 +2.652000000000000000e+03 +2.652000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt new file mode 100644 index 00000000..f4e5170f --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.610000000000000000e+03 +2.092000000000000000e+03 +3.370000000000000000e+03 +4.860000000000000000e+03 +2.602000000000000000e+03 +2.453000000000000000e+03 +1.043000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.412000000000000000e+03 +1.600000000000000000e+03 +2.539000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +5.346000000000000000e+03 +2.442000000000000000e+03 +0.000000000000000000e+00 +1.147000000000000000e+03 +3.601000000000000000e+03 +3.576000000000000000e+03 +2.878000000000000000e+03 +3.552000000000000000e+03 +2.827000000000000000e+03 +3.527000000000000000e+03 +2.406000000000000000e+03 +2.583000000000000000e+03 +1.904000000000000000e+03 +5.030000000000000000e+02 +2.169000000000000000e+03 +3.336000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.424000000000000000e+03 +0.000000000000000000e+00 +4.630000000000000000e+02 +1.030000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.500000000000000000e+01 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.860000000000000000e+03 +4.860000000000000000e+03 +3.686000000000000000e+03 +0.000000000000000000e+00 +2.478000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.731000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.018000000000000000e+03 +4.307000000000000000e+03 +4.719000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +3.423000000000000000e+03 +4.860000000000000000e+03 +0.000000000000000000e+00 +2.527000000000000000e+03 +2.526000000000000000e+03 +2.500000000000000000e+03 +2.474000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.860000000000000000e+03 +3.786000000000000000e+03 +4.860000000000000000e+03 +4.860000000000000000e+03 +9.000000000000000000e+00 +3.920000000000000000e+02 diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt new file mode 100644 index 00000000..65295624 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.360000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +4.360000000000000000e+02 +2.960000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.360000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.100000000000000000e+01 +0.000000000000000000e+00 +4.360000000000000000e+02 +4.360000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt new file mode 100644 index 00000000..260c4253 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt new file mode 100644 index 00000000..69d61844 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.196000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +2.067000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.800000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.763000000000000000e+03 +5.540000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt new file mode 100644 index 00000000..77276369 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +5.760000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt new file mode 100644 index 00000000..af3626a2 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +1.110000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.221000000000000000e+03 +1.221000000000000000e+03 +1.221000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.550000000000000000e+02 +5.550000000000000000e+02 +5.550000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.332000000000000000e+03 +1.332000000000000000e+03 +1.332000000000000000e+03 +1.332000000000000000e+03 +1.332000000000000000e+03 +1.332000000000000000e+03 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt new file mode 100644 index 00000000..be104b7e --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt @@ -0,0 +1,168 @@ +1.940000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +9.700000000000000000e+02 +9.700000000000000000e+02 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +5.820000000000000000e+02 +5.820000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +2.134000000000000000e+03 +5.820000000000000000e+02 +5.820000000000000000e+02 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +7.760000000000000000e+02 +7.760000000000000000e+02 +1.358000000000000000e+03 +1.358000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.820000000000000000e+02 +5.820000000000000000e+02 +1.940000000000000000e+02 +1.940000000000000000e+02 +1.940000000000000000e+02 +1.940000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.940000000000000000e+02 +1.940000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.552000000000000000e+03 +1.552000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +7.760000000000000000e+02 +7.760000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +9.700000000000000000e+02 +9.700000000000000000e+02 +1.940000000000000000e+03 +1.940000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +1.164000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.940000000000000000e+03 +1.940000000000000000e+02 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt new file mode 100644 index 00000000..82d3330d --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.740000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +1.740000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.740000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.700000000000000000e+01 +0.000000000000000000e+00 +1.740000000000000000e+02 +1.740000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt new file mode 100644 index 00000000..260c4253 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt new file mode 100644 index 00000000..db3eb6a7 --- /dev/null +++ b/tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt @@ -0,0 +1,168 @@ +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.120000000000000000e+03 +1.120000000000000000e+03 +1.120000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +1.040000000000000000e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +4.800000000000000000e+02 +4.800000000000000000e+02 +4.800000000000000000e+02 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +9.600000000000000000e+02 +9.600000000000000000e+02 +9.600000000000000000e+02 +0.000000000000000000e+00 diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 63faf64d..8b656160 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -499,67 +499,29 @@ def test_fast_heuristic() -> None: """ Solve the same problem as before with the heuristic fast of Antares """ - number_hours = 168 - scenarios = 2 - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - - for scenario in range(scenarios): - for week in range(2): - # First optimization - problem_optimization_1 = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=True, - week=week, - scenario=scenario, - ) - status = problem_optimization_1.solver.Solve(parameters) - - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units - output_1 = OutputValues(problem_optimization_1) - - # Solve heuristic problem - mingen: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: - mingen_heuristic = create_problem_fast_heuristic( - output_1.component(g).var("generation").value, # type:ignore - number_hours, - thermal_cluster=g, - week=week, - scenario=scenario, - ) - - mingen[g] = TimeScenarioSeriesData(mingen_heuristic) - - # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( - mingen, - number_hours, - lp_relaxation=True, - fast=True, - week=week, - scenario=scenario, - ) - status = problem_optimization_2.solver.Solve(parameters) + scenario = 0 + week = 0 - assert status == problem_optimization_2.solver.OPTIMAL + for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): + nb_on_1 = np.loadtxt( + f"tests/functional/data_second_complex_case/fast/itr1_fast_cluster{j+1}.txt" + ) - check_output_values(problem_optimization_2, "fast", week, scenario) + # Solve heuristic problem + mingen_heuristic = create_problem_fast_heuristic( + nb_on_1, # type:ignore + number_hours, + thermal_cluster=cluster, + week=week, + scenario=scenario, + ) - expected_cost = [ - [79277215 - 630089, 102461792 - 699765], - [17803738 - 661246, 17720390 - 661246], - ] - assert problem_optimization_2.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] - ) + expected_output = np.loadtxt( + f"tests/functional/data_second_complex_case/fast/itr2_fast_cluster{j+1}.txt" + ) + for time_step in range(number_hours): + assert mingen_heuristic.values[time_step, 0] == expected_output[time_step] def generate_database( @@ -724,7 +686,7 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], + lower_bound: List[float], number_hours: int, thermal_cluster: str, week: int, @@ -746,9 +708,9 @@ def create_problem_fast_heuristic( for h in range(delta + 1): cost_h = 0 n_k = max( - [convert_to_integer(lower_bound[0][j] / pmax) for j in range(h)] + [convert_to_integer(lower_bound[j] / pmax) for j in range(h)] + [ - convert_to_integer(lower_bound[0][j] / pmax) + convert_to_integer(lower_bound[j] / pmax) for j in range(number_hours - delta + h, number_hours) ] ) @@ -760,7 +722,7 @@ def create_problem_fast_heuristic( k = floor((t - h) / delta) * delta + h n_k = max( [ - convert_to_integer(lower_bound[0][j] / pmax) + convert_to_integer(lower_bound[j] / pmax) for j in range(k, min(number_hours - delta + h, k + delta)) ] ) @@ -771,7 +733,7 @@ def create_problem_fast_heuristic( hmin = np.argmin(cost.values[:, 0]) mingen_heuristic = pd.DataFrame( - np.minimum(n[:, hmin, :] * pmin, pdispo[thermal_cluster]), + np.minimum(n[:, hmin, :] * pmin, pdispo.values), index=[i for i in range(number_hours)], columns=[0], ) From 5700856e1c5fa9bafdbd2f1378b383661f2b60a6 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 5 Jun 2024 13:22:48 +0200 Subject: [PATCH 19/93] convert fast to optimization problem --- .../functional/test_heuristic_complex_case.py | 222 ++++++++++++++---- 1 file changed, 176 insertions(+), 46 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 7d4f76d2..c8baf463 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -312,23 +312,113 @@ ) BLOCK_MODEL_FAST_HEURISTIC = model( - id="GEN", - parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", NON_ANTICIPATIVE_TIME_VARYING), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + float_parameter("nopt", NON_ANTICIPATIVE_TIME_VARYING), + ], variables=[ + float_variable( + "n", + # lower_bound=param("n_guide"), + # upper_bound=param("n_max"), + lower_bound=param("nopt"), + upper_bound=param("nopt"), + structure=NON_ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "n_block", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ), + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT, + ), int_variable( - "t_ajust", + "time_step_in_block", lower_bound=literal(0), upper_bound=literal(1), structure=TIME_AND_SCENARIO_FREE, - ) + ), + int_variable( + "time_step_in_ajust", + lower_bound=literal(0), + upper_bound=literal(1), + structure=NON_ANTICIPATIVE_TIME_VARYING, + ), ], constraints=[ + # Constraint( + # "Definition of n block", + # var("n_block") >= param("n_guide") * var("time_step_in_block"), + # ), + # Constraint( + # "Definition of n ajust", + # var("n_ajust") >= param("n_guide") * var("time_step_in_ajust"), + # ), Constraint( - "Choose one t ajust", - var("t_ajust").sum() == literal(1), - ) + "Each time step in a block or in ajust", + var("time_step_in_ajust") + var("time_step_in_block").expec() == literal(1), + ), + Constraint( + "Construction of block", + var("time_step_in_block") + >= (1 / (param("delta") - literal(1))) + * var("time_step_in_block") + .shift(ExpressionRange(-param("delta") + 1, literal(-1))) + .sum() + - var("time_step_in_block").shift(-param("delta")) + - var("time_step_in_ajust"), + ), + # Constraint( + # "Construction of ajust", + # var("time_step_in_ajust") + # >= (1 / (param("delta") - literal(1))) + # * var("time_step_in_ajust") + # .shift(ExpressionRange(-param("delta") + 1, literal(-1))) + # .sum() + # - var("time_step_in_ajust").shift(-param("delta")), + # ), + Constraint( + "Maximum time step in block", + var("time_step_in_block").sum() <= param("delta"), + ), + Constraint( + "Maximum time step in ajust", + var("time_step_in_ajust").sum() <= param("delta"), + ), + # Constraint( + # "Lower bound n if time step in block", + # var("n") + # >= var("n_block") + # - (literal(1) - var("time_step_in_block")) * param("n_max"), + # ), + # Constraint( + # "Upper bound n if time step in block", + # var("n") + # <= var("n_block") + # + (literal(1) - var("time_step_in_block")) * param("n_max"), + # ), + # Constraint( + # "Lower bound n if time step in ajust", + # var("n") + # >= var("n_ajust") + # - (literal(1) - var("time_step_in_ajust")) * param("n_max"), + # ), + # Constraint( + # "Upper bound n if time step in ajust", + # var("n") + # <= var("n_ajust") + # + (literal(1) - var("time_step_in_ajust")) * param("n_max"), + # ), ], - objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), + objective_operational_contribution=(var("n")).sum(), ) @@ -537,7 +627,10 @@ def test_accurate_heuristic() -> None: problem_optimization_2, "accurate", week, scenario=scenario ) - expected_cost = [[78996726, 102215087 - 69500], [17587733, 17650089-10081]] + expected_cost = [ + [78996726, 102215087 - 69500], + [17587733, 17650089 - 10081], + ] assert problem_optimization_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -575,9 +668,24 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen: Dict[str, AbstractDataStructure] = {} - for g in ["G1", "G2", "G3"]: + for g in ["G2", "G3"]: # "G1", + pmax = {"G1": 410, "G2": 90, "G3": 275}[g] + nb_on_1 = np.ceil( + np.round( + np.array( + output_1.component(g) + .var("generation") + .value[0] # type:ignore + ) + / pmax, + 12, + ) + ) + n_guide = TimeSeriesData( + {TimeIndex(i): nb_on_1[i] for i in range(number_hours)} + ) mingen_heuristic = create_problem_fast_heuristic( - output_1.component(g).var("generation").value, # type:ignore + n_guide, number_hours, thermal_cluster=g, week=week, @@ -859,7 +967,7 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], + lower_bound: AbstractDataStructure, number_hours: int, thermal_cluster: str, week: int, @@ -867,7 +975,6 @@ def create_problem_fast_heuristic( ) -> pd.DataFrame: delta = {"G1": 8, "G2": 11, "G3": 9}[thermal_cluster] - pmax = {"G1": 410, "G2": 90, "G3": 275}[thermal_cluster] pmin = {"G1": 180, "G2": 60, "G3": 150}[thermal_cluster] pdispo = { "G1": np.reshape( @@ -877,43 +984,66 @@ def create_problem_fast_heuristic( "G3": np.reshape( np.repeat(get_failures_for_cluster3(week, scenario), 24), (number_hours, 1) ), - } + }[thermal_cluster] + nmax = {"G1": 1, "G2": 3, "G3": 4}[thermal_cluster] - cost = pd.DataFrame( - np.zeros((delta + 1, 1)), - index=[i for i in range(delta + 1)], - columns=[0], - ) - n = np.zeros((number_hours, delta + 1, 1)) - for h in range(delta + 1): - cost_h = 0 - n_k = max( - [convert_to_integer(lower_bound[0][j] / pmax) for j in range(h)] - + [ - convert_to_integer(lower_bound[0][j] / pmax) - for j in range(number_hours - delta + h, number_hours) + nopt = { + "G1": np.ones((number_hours)), + "G2": np.array( + [ + ( + 3.0 + if i in list(range(50, 72)) + else (1.0 if i in list(range(39, 50)) else 0.0) + ) + for i in range(number_hours) ] - ) - cost_h += delta * n_k - n[0:h, h, 0] = n_k - n[number_hours - delta + h : number_hours, h, 0] = n_k - t = h - while t < number_hours - delta + h: - k = floor((t - h) / delta) * delta + h - n_k = max( - [ - convert_to_integer(lower_bound[0][j] / pmax) - for j in range(k, min(number_hours - delta + h, k + delta)) - ] - ) - cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k - n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k - t += delta - cost.iloc[h, 0] = cost_h + ), + }[thermal_cluster] + + database = DataBase() + + database.add_data("B", "n_max", ConstantData(nmax)) + database.add_data("B", "delta", ConstantData(delta)) + database.add_data("B", "n_guide", lower_bound) + database.add_data( + "B", + "nopt", + TimeSeriesData({TimeIndex(i): nopt[i] for i in range(number_hours)}), + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = delta + + block = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="B") + + network = Network("test") + network.add_component(block) - hmin = np.argmin(cost.values[:, 0]) + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + n_heuristic = np.array( + output_heuristic.component("B").var("n").value[0] # type:ignore + ) mingen_heuristic = pd.DataFrame( - np.minimum(n[:, hmin, :] * pmin, pdispo[thermal_cluster]), + np.minimum(n_heuristic * pmin, pdispo), index=[i for i in range(number_hours)], columns=[0], ) From dcd2c47430bce51e467aa306fc2903dd708a5fa3 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 17 Jun 2024 16:01:55 +0200 Subject: [PATCH 20/93] Optimization problem for fast on simple case --- .../functional/test_heuristic_simple_case.py | 210 ++++++++++++++---- 1 file changed, 172 insertions(+), 38 deletions(-) diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index 5cc0518b..7eda6161 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -15,6 +15,7 @@ import numpy as np from typing import List from math import ceil, floor +import ortools.linear_solver.pywraplp as pywraplp from andromede.expression import literal, param, var from andromede.expression.expression import ExpressionRange, port_field @@ -46,6 +47,8 @@ PortRef, TimeScenarioIndex, TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, create_component, ) from andromede.study.data import AbstractDataStructure @@ -302,24 +305,104 @@ objective_operational_contribution=(var("nb_on")).sum().expec(), ) +Q = 16 # number of blocks +R = 8 # length of the last block +Delta = 10 BLOCK_MODEL_FAST_HEURISTIC = model( - id="GEN", - parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(Delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(Delta) + ], variables=[ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ int_variable( - "t_ajust", + f"t_ajust_{h}", lower_bound=literal(0), upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(Delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), structure=TIME_AND_SCENARIO_FREE, ) ], constraints=[ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(Delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(Delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(Delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(Delta) + ] + + [ Constraint( "Choose one t ajust", - var("t_ajust").sum() == literal(1), + literal(0) + sum([var(f"t_ajust_{h}") for h in range(Delta)]) == literal(1), ) ], - objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), + objective_operational_contribution=(var("n")).sum().expec(), ) @@ -586,6 +669,7 @@ def test_fast_heuristic() -> None: """ number_hours = 168 + pmax = 1000 # First optimization problem_optimization_1 = create_simple_problem( @@ -598,9 +682,28 @@ def test_fast_heuristic() -> None: # Get number of on units output_1 = OutputValues(problem_optimization_1) + nb_on_1 = pd.DataFrame( + np.transpose( + np.ceil( + np.round( + np.array( + output_1.component("G") + .var("generation") + .value[0] # type:ignore + ) + / pmax, + 12, + ) + ) + ), + index=[i for i in range(number_hours)], + columns=[0], + ) + n_guide = TimeScenarioSeriesData(nb_on_1) + # Solve heuristic problem mingen_heuristic = create_problem_fast_heuristic( - output_1.component("G").var("generation").value, # type:ignore + n_guide, number_hours, ) @@ -755,45 +858,76 @@ def create_problem_accurate_heuristic( def create_problem_fast_heuristic( - lower_bound: List[List[float]], number_hours: int + lower_bound: AbstractDataStructure, number_hours: int ) -> pd.DataFrame: delta = 10 - cost = pd.DataFrame( - np.zeros((delta + 1, 1)), - index=[i for i in range(delta + 1)], - columns=[0], - ) - n = np.zeros((number_hours, delta + 1, 1)) - for h in range(delta + 1): - cost_h = 0 - n_k = max( - [convert_to_integer(lower_bound[0][j] / 1000) for j in range(h)] - + [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(number_hours - delta + h, number_hours) - ] + pmin = 700 + pdispo = np.array(3000) + nmax = 3 + + database = DataBase() + + database.add_data("B", "n_max", ConstantData(nmax)) + database.add_data("B", "delta", ConstantData(delta)) + database.add_data("B", "n_guide", lower_bound) + for h in range(delta): + start_ajust = number_hours - delta + h + database.add_data( + "B", + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 + for t in range(number_hours) + } + ), ) - cost_h += delta * n_k - n[0:h, h, 0] = n_k - n[number_hours - delta + h : number_hours, h, 0] = n_k - t = h - while t < number_hours - delta + h: - k = floor((t - h) / delta) * delta + h - n_k = max( - [ - convert_to_integer(lower_bound[0][j] / 1000) - for j in range(k, min(number_hours - delta + h, k + delta)) - ] + for k in range(Q): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + "B", + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 + for t in range(number_hours) + } + ), ) - cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k - n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k - t += delta - cost.iloc[h, 0] = cost_h - hmin = np.argmin(cost.values[:, 0]) + time_block = TimeBlock(1, [i for i in range(number_hours)]) + + block = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="B") + + network = Network("test") + network.add_component(block) + + problem = build_problem( + network, + database, + time_block, + 1, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + n_heuristic = np.array( + output_heuristic.component("B").var("n").value[0] # type:ignore + ) mingen_heuristic = pd.DataFrame( - n[:, hmin, :] * 700, + np.minimum(n_heuristic * pmin, pdispo), index=[i for i in range(number_hours)], columns=[0], ) From ea55b7d8e32c922ef9bffb77ed2b41759cb6894e Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 18 Jun 2024 12:00:27 +0200 Subject: [PATCH 21/93] Optimization model fast complex case --- .../functional/test_heuristic_complex_case.py | 274 +++++++++--------- 1 file changed, 144 insertions(+), 130 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index c8baf463..3fcd0ca2 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -311,115 +311,106 @@ objective_operational_contribution=(var("nb_on")).sum().expec(), ) -BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", NON_ANTICIPATIVE_TIME_VARYING), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - float_parameter("nopt", NON_ANTICIPATIVE_TIME_VARYING), - ], - variables=[ - float_variable( - "n", - # lower_bound=param("n_guide"), - # upper_bound=param("n_max"), - lower_bound=param("nopt"), - upper_bound=param("nopt"), - structure=NON_ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "n_block", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ), - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT, - ), - int_variable( - "time_step_in_block", - lower_bound=literal(0), - upper_bound=literal(1), - structure=TIME_AND_SCENARIO_FREE, - ), - int_variable( - "time_step_in_ajust", - lower_bound=literal(0), - upper_bound=literal(1), - structure=NON_ANTICIPATIVE_TIME_VARYING, - ), - ], - constraints=[ - # Constraint( - # "Definition of n block", - # var("n_block") >= param("n_guide") * var("time_step_in_block"), - # ), - # Constraint( - # "Definition of n ajust", - # var("n_ajust") >= param("n_guide") * var("time_step_in_ajust"), - # ), - Constraint( - "Each time step in a block or in ajust", - var("time_step_in_ajust") + var("time_step_in_block").expec() == literal(1), - ), - Constraint( - "Construction of block", - var("time_step_in_block") - >= (1 / (param("delta") - literal(1))) - * var("time_step_in_block") - .shift(ExpressionRange(-param("delta") + 1, literal(-1))) - .sum() - - var("time_step_in_block").shift(-param("delta")) - - var("time_step_in_ajust"), - ), - # Constraint( - # "Construction of ajust", - # var("time_step_in_ajust") - # >= (1 / (param("delta") - literal(1))) - # * var("time_step_in_ajust") - # .shift(ExpressionRange(-param("delta") + 1, literal(-1))) - # .sum() - # - var("time_step_in_ajust").shift(-param("delta")), - # ), - Constraint( - "Maximum time step in block", - var("time_step_in_block").sum() <= param("delta"), - ), - Constraint( - "Maximum time step in ajust", - var("time_step_in_ajust").sum() <= param("delta"), - ), - # Constraint( - # "Lower bound n if time step in block", - # var("n") - # >= var("n_block") - # - (literal(1) - var("time_step_in_block")) * param("n_max"), - # ), - # Constraint( - # "Upper bound n if time step in block", - # var("n") - # <= var("n_block") - # + (literal(1) - var("time_step_in_block")) * param("n_max"), - # ), - # Constraint( - # "Lower bound n if time step in ajust", - # var("n") - # >= var("n_ajust") - # - (literal(1) - var("time_step_in_ajust")) * param("n_max"), - # ), - # Constraint( - # "Upper bound n if time step in ajust", - # var("n") - # <= var("n_ajust") - # + (literal(1) - var("time_step_in_ajust")) * param("n_max"), - # ), - ], - objective_operational_contribution=(var("n")).sum(), -) + +def get_model_fast_heuristic(Q: int, delta: int) -> Model: + BLOCK_MODEL_FAST_HEURISTIC = model( + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(delta) + ], + variables=[ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ + int_variable( + f"t_ajust_{h}", + lower_bound=literal(0), + upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + "Choose one t ajust", + literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + == literal(1), + ) + ], + objective_operational_contribution=(var("n")).sum().expec(), + ) + return BLOCK_MODEL_FAST_HEURISTIC def test_milp_version() -> None: @@ -668,7 +659,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen: Dict[str, AbstractDataStructure] = {} - for g in ["G2", "G3"]: # "G1", + for g in ["G1", "G2", "G3"]: # pmax = {"G1": 410, "G2": 90, "G3": 275}[g] nb_on_1 = np.ceil( np.round( @@ -987,35 +978,58 @@ def create_problem_fast_heuristic( }[thermal_cluster] nmax = {"G1": 1, "G2": 3, "G3": 4}[thermal_cluster] - nopt = { - "G1": np.ones((number_hours)), - "G2": np.array( - [ - ( - 3.0 - if i in list(range(50, 72)) - else (1.0 if i in list(range(39, 50)) else 0.0) - ) - for i in range(number_hours) - ] - ), - }[thermal_cluster] + # nopt = { + # "G1": np.ones((number_hours)), + # "G2": np.array( + # [ + # ( + # 3.0 + # if i in list(range(50, 72)) + # else (1.0 if i in list(range(39, 50)) else 0.0) + # ) + # for i in range(number_hours) + # ] + # ), + # }[thermal_cluster] + number_blocks = number_hours // delta database = DataBase() database.add_data("B", "n_max", ConstantData(nmax)) database.add_data("B", "delta", ConstantData(delta)) database.add_data("B", "n_guide", lower_bound) - database.add_data( - "B", - "nopt", - TimeSeriesData({TimeIndex(i): nopt[i] for i in range(number_hours)}), - ) + for h in range(delta): + start_ajust = number_hours - delta + h + database.add_data( + "B", + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 + for t in range(number_hours) + } + ), + ) + for k in range(number_blocks): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + "B", + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 + for t in range(number_hours) + } + ), + ) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = delta - block = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="B") + block = create_component( + model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" + ) network = Network("test") network.add_component(block) @@ -1041,7 +1055,7 @@ def create_problem_fast_heuristic( output_heuristic = OutputValues(problem) n_heuristic = np.array( output_heuristic.component("B").var("n").value[0] # type:ignore - ) + ).reshape((168, 1)) mingen_heuristic = pd.DataFrame( np.minimum(n_heuristic * pmin, pdispo), index=[i for i in range(number_hours)], From 25bddc07fb1419f7dac69fa75700338d5e4ff9b1 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 18 Jun 2024 14:51:08 +0200 Subject: [PATCH 22/93] Small corrections --- .../test_heuristic_second_complex_case.py | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 8b656160..7bc71a08 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -587,28 +587,6 @@ def generate_database( ) database.add_data(cluster, "mingen", lower_bound[cluster]) - database.add_data("U", "cost", ConstantData(750)) - database.add_data("S", "cost", ConstantData(10)) - - output_file = open( - "tests/functional/data_second_complex_case/milp/" - + str(scenario) - + "/values-hourly.txt", - "r", - ) - output = output_file.readlines() - - demand_data = pd.DataFrame( - data=[ - float(line.strip().split("\t")[7]) - for line in output[168 * week + 7 : 168 * week + 7 + 168] - ], - index=[i for i in range(number_hours)], - columns=[0], - ) - - demand_time_scenario_series = TimeScenarioSeriesData(demand_data) - database.add_data("D", "demand", demand_time_scenario_series) return database From db172847f7b8bd4e81b93b7b25bc7f18d6b55efa Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 18 Jun 2024 15:32:01 +0200 Subject: [PATCH 23/93] Correct test --- tests/functional/test_heuristic_complex_case.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 3fcd0ca2..c578bcdc 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -633,14 +633,15 @@ def test_fast_heuristic() -> None: """ number_hours = 168 - scenarios = 2 + scenarios = 1 + weeks = 1 parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) for scenario in range(scenarios): - for week in range(2): + for week in range(weeks): # First optimization problem_optimization_1 = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, From 6cf6611875b11df85d324c4371fa4b26d9fa4553 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 18 Jun 2024 17:09:07 +0200 Subject: [PATCH 24/93] Optimization problem heuristic fast second complex test case --- .../test_heuristic_second_complex_case.py | 227 ++++++++++++++---- 1 file changed, 177 insertions(+), 50 deletions(-) diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 7bc71a08..38d06860 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -357,25 +357,106 @@ objective_operational_contribution=(var("nb_on")).sum().expec(), ) -BLOCK_MODEL_FAST_HEURISTIC = model( - id="GEN", - parameters=[float_parameter("cost", TIME_AND_SCENARIO_FREE)], - variables=[ - int_variable( - "t_ajust", - lower_bound=literal(0), - upper_bound=literal(1), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - "Choose one t ajust", - var("t_ajust").sum() == literal(1), - ) - ], - objective_operational_contribution=(var("t_ajust") * param("cost")).sum().expec(), -) + +def get_model_fast_heuristic(Q: int, delta: int) -> Model: + BLOCK_MODEL_FAST_HEURISTIC = model( + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(delta) + ], + variables=[ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ + int_variable( + f"t_ajust_{h}", + lower_bound=literal(0), + upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + "Choose one t ajust", + literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + == literal(1), + ) + ], + objective_operational_contribution=(var("n")).sum().expec(), + ) + return BLOCK_MODEL_FAST_HEURISTIC def check_output_values( @@ -671,47 +752,93 @@ def create_problem_fast_heuristic( scenario: int, ) -> pd.DataFrame: - data_delta, data_pmax, data_pmin, _, _ = get_data() + data_delta, data_pmax, data_pmin, _, data_nmax = get_data() delta = data_delta[thermal_cluster] pmax = data_pmax[thermal_cluster] pmin = data_pmin[thermal_cluster] + nmax = data_nmax[thermal_cluster] pdispo = get_failures_for_cluster(week, scenario, thermal_cluster, number_hours) - cost = pd.DataFrame( - np.zeros((delta + 1, 1)), - index=[i for i in range(delta + 1)], - columns=[0], + number_blocks = number_hours // delta + + database = DataBase() + + database.add_data("B", "n_max", ConstantData(nmax)) + database.add_data("B", "delta", ConstantData(delta)) + + nb_on_1 = np.ceil( + np.round( + np.array(lower_bound) / pmax, + 12, + ) ) - n = np.zeros((number_hours, delta + 1, 1)) - for h in range(delta + 1): - cost_h = 0 - n_k = max( - [convert_to_integer(lower_bound[j] / pmax) for j in range(h)] - + [ - convert_to_integer(lower_bound[j] / pmax) - for j in range(number_hours - delta + h, number_hours) - ] + + database.add_data( + "B", + "n_guide", + TimeSeriesData({TimeIndex(i): nb_on_1[i] for i in range(number_hours)}), + ) + for h in range(delta): + start_ajust = number_hours - delta + h + database.add_data( + "B", + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 + for t in range(number_hours) + } + ), ) - cost_h += delta * n_k - n[0:h, h, 0] = n_k - n[number_hours - delta + h : number_hours, h, 0] = n_k - t = h - while t < number_hours - delta + h: - k = floor((t - h) / delta) * delta + h - n_k = max( - [ - convert_to_integer(lower_bound[j] / pmax) - for j in range(k, min(number_hours - delta + h, k + delta)) - ] + for k in range(number_blocks): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + "B", + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 + for t in range(number_hours) + } + ), ) - cost_h += (min(number_hours - delta + h, k + delta) - k) * n_k - n[k : min(number_hours - delta + h, k + delta), h, 0] = n_k - t += delta - cost.iloc[h, 0] = cost_h - hmin = np.argmin(cost.values[:, 0]) + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = delta + + block = create_component( + model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" + ) + + network = Network("test") + network.add_component(block) + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + n_heuristic = np.array( + output_heuristic.component("B").var("n").value[0] # type:ignore + ).reshape((168, 1)) + mingen_heuristic = pd.DataFrame( - np.minimum(n[:, hmin, :] * pmin, pdispo.values), + np.minimum(n_heuristic * pmin, pdispo), index=[i for i in range(number_hours)], columns=[0], ) From 3d9cb5b782295c55acb010256fefced448de7e1e Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 21 Jun 2024 14:34:29 +0200 Subject: [PATCH 25/93] Equivalent solution for fast heuristic optimization --- tests/functional/test_heuristic_complex_case.py | 13 ++++++++----- .../test_heuristic_second_complex_case.py | 8 +++++--- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index c578bcdc..68f694a1 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -408,7 +408,10 @@ def get_model_fast_heuristic(Q: int, delta: int) -> Model: == literal(1), ) ], - objective_operational_contribution=(var("n")).sum().expec(), + objective_operational_contribution=(var("n")).sum().expec() + + sum( + [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] + ).expec(), # type:ignore ) return BLOCK_MODEL_FAST_HEURISTIC @@ -633,8 +636,8 @@ def test_fast_heuristic() -> None: """ number_hours = 168 - scenarios = 1 - weeks = 1 + scenarios = 2 + weeks = 2 parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) @@ -1026,7 +1029,6 @@ def create_problem_fast_heuristic( ) time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = delta block = create_component( model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" @@ -1039,7 +1041,7 @@ def create_problem_fast_heuristic( network, database, time_block, - scenarios, + 1, border_management=BlockBorderManagement.CYCLE, solver_id="XPRESS", ) @@ -1047,6 +1049,7 @@ def create_problem_fast_heuristic( parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) problem.solver.EnableOutput() status = problem.solver.Solve(parameters) diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 38d06860..95de1524 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -454,7 +454,10 @@ def get_model_fast_heuristic(Q: int, delta: int) -> Model: == literal(1), ) ], - objective_operational_contribution=(var("n")).sum().expec(), + objective_operational_contribution=(var("n")).sum().expec() + + sum( + [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] + ).expec(), # type:ignore ) return BLOCK_MODEL_FAST_HEURISTIC @@ -805,7 +808,6 @@ def create_problem_fast_heuristic( ) time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = delta block = create_component( model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" @@ -818,7 +820,7 @@ def create_problem_fast_heuristic( network, database, time_block, - scenarios, + 1, border_management=BlockBorderManagement.CYCLE, solver_id="XPRESS", ) From 57e5f7c2cb4f3dfd8efe3afa510d7c6a74727cf5 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 25 Jun 2024 11:47:51 +0200 Subject: [PATCH 26/93] Api for fast and accurate models --- .../functional/test_heuristic_complex_case.py | 224 ++++++++---------- .../test_heuristic_second_complex_case.py | 134 ----------- .../functional/test_heuristic_simple_case.py | 212 ++++++++--------- 3 files changed, 198 insertions(+), 372 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 68f694a1..dccca9ec 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -17,7 +17,14 @@ from math import ceil, floor import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import literal, param, var +from andromede.expression import ( + literal, + param, + var, + visit, + PrinterVisitor, + ExpressionNode, +) from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( @@ -30,7 +37,7 @@ from andromede.model import Model, ModelPort, float_parameter, float_variable, model from andromede.model.model import PortFieldDefinition, PortFieldId from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable +from andromede.model.variable import float_variable, int_variable, ValueType from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, @@ -72,11 +79,12 @@ int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), int_parameter("nb_units_max", CONSTANT), float_parameter("failures", TIME_AND_SCENARIO_FREE), + float_parameter("mingen", TIME_AND_SCENARIO_FREE), ], variables=[ float_variable( "generation", - lower_bound=literal(0), + lower_bound=param("mingen"), upper_bound=param("failures"), structure=ANTICIPATIVE_TIME_VARYING, ), @@ -142,123 +150,89 @@ .expec(), ) -THERMAL_CLUSTER_MODEL_LP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - float_parameter("failures", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=literal(0), - upper_bound=param("failures"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") + +def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: + + THERMAL_CLUSTER_MODEL_LP = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=v.lower_bound, + upper_bound=v.upper_bound, + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[c for c in initial_model.constraints.values()], + objective_operational_contribution=initial_model.objective_operational_contribution, ) - .sum() - .expec(), -) -THERMAL_CLUSTER_MODEL_FAST = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("cost", CONSTANT), - int_parameter("nb_units_max", CONSTANT), - float_parameter("mingen", TIME_AND_SCENARIO_FREE), - float_parameter("failures", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=param("mingen"), - upper_bound=param("failures"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * param("nb_units_max"), - ), - ], - objective_operational_contribution=(param("cost") * var("generation")) - .sum() - .expec(), -) + return THERMAL_CLUSTER_MODEL_LP + + +def get_thermal_cluster_fast_model(initial_model: Model) -> Model: + + integer_variables = [ + v.name + for v in initial_model.variables.values() + if v.data_type == ValueType.INTEGER + ] + + THERMAL_CLUSTER_MODEL_FAST = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=( + v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + upper_bound=( + v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, integer_variables)) + ], + objective_operational_contribution=initial_model.objective_operational_contribution, + ) + + return THERMAL_CLUSTER_MODEL_FAST + + +def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: + res = False + if variable_in_expression(c.lower_bound, variables): + res = True + elif variable_in_expression(c.expression, variables): + res = True + elif variable_in_expression(c.upper_bound, variables): + res = True + return res + + +def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: + res = False + str_expr = visit(expr, PrinterVisitor()) + for v in variables: + if v in str_expr: + res = True + return res THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( @@ -733,13 +707,15 @@ def create_complex_problem( demand = create_component(model=DEMAND_MODEL, id="D") if fast: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G3") + FAST_MODEL = get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP) + gen1 = create_component(model=FAST_MODEL, id="G1") + gen2 = create_component(model=FAST_MODEL, id="G2") + gen3 = create_component(model=FAST_MODEL, id="G3") elif lp_relaxation: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G3") + ACCURATE_MODEL = get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP) + gen1 = create_component(model=ACCURATE_MODEL, id="G1") + gen2 = create_component(model=ACCURATE_MODEL, id="G2") + gen3 = create_component(model=ACCURATE_MODEL, id="G3") else: gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 95de1524..63abcbee 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -157,140 +157,6 @@ .expec(), ) -THERMAL_CLUSTER_MODEL_LP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), - float_parameter("max_generating", TIME_AND_SCENARIO_FREE), - int_parameter("max_failure", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=literal(0), - upper_bound=param("max_generating"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_failure", - lower_bound=literal(0), - upper_bound=param("max_failure"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Max failures", - var("nb_failure") <= var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - - var("nb_failure") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max_min_down_time") - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") - ) - .sum() - .expec(), -) - -THERMAL_CLUSTER_MODEL_FAST = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("cost", CONSTANT), - int_parameter("nb_units_max", CONSTANT), - float_parameter("mingen", TIME_AND_SCENARIO_FREE), - float_parameter("failures", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=param("mingen"), - upper_bound=param("failures"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * param("nb_units_max"), - ), - ], - objective_operational_contribution=(param("cost") * var("generation")) - .sum() - .expec(), -) - - THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( id="GEN", parameters=[ diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index 7eda6161..c5d5f1aa 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -17,7 +17,14 @@ from math import ceil, floor import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import literal, param, var +from andromede.expression import ( + literal, + param, + var, + PrinterVisitor, + visit, + ExpressionNode, +) from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( @@ -30,7 +37,7 @@ from andromede.model import Model, ModelPort, float_parameter, float_variable, model from andromede.model.model import PortFieldDefinition, PortFieldId from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable +from andromede.model.variable import float_variable, int_variable, ValueType, Variable from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, @@ -72,11 +79,12 @@ int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), int_parameter("nb_units_max", CONSTANT), int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), + float_parameter("mingen", TIME_AND_SCENARIO_FREE), ], variables=[ float_variable( "generation", - lower_bound=literal(0), + lower_bound=param("mingen"), upper_bound=param("nb_units_max") * param("p_max"), structure=ANTICIPATIVE_TIME_VARYING, ), @@ -142,117 +150,89 @@ .expec(), ) -THERMAL_CLUSTER_MODEL_LP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=literal(0), - upper_bound=param("nb_units_max") * param("p_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") + +def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: + + THERMAL_CLUSTER_MODEL_LP = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=v.lower_bound, + upper_bound=v.upper_bound, + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[c for c in initial_model.constraints.values()], + objective_operational_contribution=initial_model.objective_operational_contribution, ) - .sum() - .expec(), -) -THERMAL_CLUSTER_MODEL_FAST = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("cost", CONSTANT), - int_parameter("nb_units_max", CONSTANT), - float_parameter("mingen", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=param("mingen"), - upper_bound=param("nb_units_max") * param("p_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[], - objective_operational_contribution=(param("cost") * var("generation")) - .sum() - .expec(), -) + return THERMAL_CLUSTER_MODEL_LP + + +def get_thermal_cluster_fast_model(initial_model: Model) -> Model: + + integer_variables = [ + v.name + for v in initial_model.variables.values() + if v.data_type == ValueType.INTEGER + ] + + THERMAL_CLUSTER_MODEL_FAST = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=( + v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + upper_bound=( + v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, integer_variables)) + ], + objective_operational_contribution=initial_model.objective_operational_contribution, + ) + + return THERMAL_CLUSTER_MODEL_FAST + + +def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: + res = False + if variable_in_expression(c.lower_bound, variables): + res = True + elif variable_in_expression(c.expression, variables): + res = True + elif variable_in_expression(c.upper_bound, variables): + res = True + return res + + +def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: + res = False + str_expr = visit(expr, PrinterVisitor()) + for v in variables: + if v in str_expr: + res = True + return res THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( @@ -793,9 +773,13 @@ def create_simple_problem( demand = create_component(model=DEMAND_MODEL, id="D") if fast: - gen = create_component(model=THERMAL_CLUSTER_MODEL_FAST, id="G") + gen = create_component( + model=get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP), id="G" + ) elif lp_relaxation: - gen = create_component(model=THERMAL_CLUSTER_MODEL_LP, id="G") + gen = create_component( + model=get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP), id="G" + ) else: gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") From e828f657f64f1d93a0c312a89b1f4c38bd8087dc Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 25 Jun 2024 12:05:28 +0200 Subject: [PATCH 27/93] Api for accurate heuristic model --- .../functional/test_heuristic_complex_case.py | 72 ++++------- .../test_heuristic_second_complex_case.py | 118 ++++++++---------- .../functional/test_heuristic_simple_case.py | 81 +++++------- 3 files changed, 104 insertions(+), 167 deletions(-) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index dccca9ec..b7631129 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -235,55 +235,27 @@ def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: return res -THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id="GEN", - parameters=[ - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - ], - variables=[ - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - constraints=[ - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), -) +def get_accurate_heuristic_model(initial_model: Model) -> Model: + + generation_variable = ["generation"] + + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + v + for v in initial_model.variables.values() + if v.name not in generation_variable + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, generation_variable)) + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), + ) + return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC + def get_model_fast_heuristic(Q: int, delta: int) -> Model: @@ -919,7 +891,7 @@ def create_problem_accurate_heuristic( scenarios = 1 gen = create_component( - model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id=thermal_cluster + model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), id=thermal_cluster ) network = Network("test") diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 63abcbee..4ba03803 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -17,7 +17,14 @@ from math import ceil, floor import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import literal, param, var +from andromede.expression import ( + literal, + param, + var, + visit, + PrinterVisitor, + ExpressionNode, +) from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( @@ -157,71 +164,47 @@ .expec(), ) -THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id="GEN", - parameters=[ - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), - float_parameter("max_generating", TIME_AND_SCENARIO_FREE), - int_parameter("max_failure", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_failure", - lower_bound=literal(0), - upper_bound=param("max_failure"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - constraints=[ - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Max failures", - var("nb_failure") <= var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - - var("nb_failure") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max_min_down_time") - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), -) + +def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: + res = False + if variable_in_expression(c.lower_bound, variables): + res = True + elif variable_in_expression(c.expression, variables): + res = True + elif variable_in_expression(c.upper_bound, variables): + res = True + return res + + +def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: + res = False + str_expr = visit(expr, PrinterVisitor()) + for v in variables: + if v in str_expr: + res = True + return res + + +def get_accurate_heuristic_model(initial_model: Model) -> Model: + + generation_variable = ["generation"] + + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + v + for v in initial_model.variables.values() + if v.name not in generation_variable + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, generation_variable)) + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), + ) + return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC def get_model_fast_heuristic(Q: int, delta: int) -> Model: @@ -595,7 +578,8 @@ def create_problem_accurate_heuristic( scenarios = 1 gen = create_component( - model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id=thermal_cluster + model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), + id=thermal_cluster, ) network = Network("test") diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index c5d5f1aa..c1a3610d 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -235,55 +235,27 @@ def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: return res -THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id="GEN", - parameters=[ - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - ], - variables=[ - float_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - constraints=[ - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), -) +def get_accurate_heuristic_model(initial_model: Model) -> Model: + + generation_variable = ["generation"] + + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + v + for v in initial_model.variables.values() + if v.name not in generation_variable + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, generation_variable)) + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), + ) + return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC + Q = 16 # number of blocks R = 8 # length of the last block @@ -817,15 +789,24 @@ def create_problem_accurate_heuristic( database = DataBase() + database.add_data("G", "p_max", ConstantData(1000)) + database.add_data("G", "p_min", ConstantData(700)) + database.add_data("G", "cost", ConstantData(50)) + database.add_data("G", "startup_cost", ConstantData(50)) + database.add_data("G", "fixed_cost", ConstantData(1)) database.add_data("G", "d_min_up", ConstantData(3)) database.add_data("G", "d_min_down", ConstantData(10)) database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) + database.add_data("G", "nb_failures", ConstantData(0)) + database.add_data("G", "mingen", lower_bound) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 - gen = create_component(model=THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC, id="G") + gen = create_component( + model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), id="G" + ) network = Network("test") network.add_component(gen) From 78a4712a2b45a3a9e173d5fc9ba52d582fd8933f Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 26 Jun 2024 19:01:00 +0200 Subject: [PATCH 28/93] Move models to library --- .../accurate/1/details-hourly.txt | 12 +- .../milp/0/details-hourly.txt | 8 +- .../milp/1/details-hourly.txt | 4 +- .../functional/libs/lib_thermal_heuristic.py | 132 +++++++ .../functional/test_heuristic_complex_case.py | 226 ++++-------- .../test_heuristic_second_complex_case.py | 170 ++------- .../functional/test_heuristic_simple_case.py | 343 ++++++++---------- 7 files changed, 406 insertions(+), 489 deletions(-) create mode 100644 tests/functional/libs/lib_thermal_heuristic.py diff --git a/tests/functional/data_complex_case/accurate/1/details-hourly.txt b/tests/functional/data_complex_case/accurate/1/details-hourly.txt index d2952f5a..0f1b9a76 100644 --- a/tests/functional/data_complex_case/accurate/1/details-hourly.txt +++ b/tests/functional/data_complex_case/accurate/1/details-hourly.txt @@ -113,8 +113,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 106 05 JAN 09:00 0 120 1064 0 0 24502 4 0 0 2 4 0 107 05 JAN 10:00 0 120 1067 0 0 2 4 0 0 2 4 0 108 05 JAN 11:00 0 120 1059 0 0 2 4 0 0 2 4 0 - 109 05 JAN 12:00 0 180 989 0 0 24503 4 0 0 3 4 0 - 110 05 JAN 13:00 0 180 1033 0 0 3 4 0 0 3 4 0 + 109 05 JAN 12:00 0 120 1049 0 0 24503 4 0 0 2 4 0 + 110 05 JAN 13:00 0 120 1093 0 0 3 4 0 0 2 4 0 111 05 JAN 14:00 0 180 1038 0 0 3 4 0 0 3 4 0 112 05 JAN 15:00 0 180 1038 0 0 3 4 0 0 3 4 0 113 05 JAN 16:00 0 180 1087 0 0 3 4 0 0 3 4 0 @@ -124,8 +124,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 117 05 JAN 20:00 0 135 1100 0 0 2 4 0 0 2 4 0 118 05 JAN 21:00 0 120 1023 0 0 2 4 0 0 2 4 0 119 05 JAN 22:00 0 120 910 0 0 2 4 0 0 2 4 0 - 120 05 JAN 23:00 0 0 868 0 0 0 4 0 0 0 4 0 - 121 06 JAN 00:00 0 0 665 0 0 0 4 0 0 0 4 0 + 120 05 JAN 23:00 0 60 808 0 0 0 4 0 0 1 4 0 + 121 06 JAN 00:00 0 60 605 0 0 0 4 0 0 1 4 0 122 06 JAN 01:00 0 0 600 0 0 0 4 0 0 0 4 0 123 06 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 124 06 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 @@ -281,7 +281,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 274 12 JAN 09:00 0 60 1076 0 0 1 4 0 0 1 4 0 275 12 JAN 10:00 0 60 1048 0 0 1 4 0 0 1 4 0 276 12 JAN 11:00 0 60 1024 0 0 1 4 0 0 1 4 0 - 277 12 JAN 12:00 0 180 888 0 0 1 4 0 0 3 4 0 + 277 12 JAN 12:00 0 60 1008 0 0 1 4 0 0 1 4 0 278 12 JAN 13:00 0 180 938 0 0 49003 4 0 0 3 4 0 279 12 JAN 14:00 0 180 956 0 0 3 4 0 0 3 4 0 280 12 JAN 15:00 0 180 974 0 0 3 4 0 0 3 4 0 @@ -292,7 +292,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 285 12 JAN 20:00 0 180 1064 0 0 3 4 0 0 3 4 0 286 12 JAN 21:00 0 180 952 0 0 3 4 0 0 3 4 0 287 12 JAN 22:00 0 180 828 0 0 3 4 0 0 3 4 0 - 288 12 JAN 23:00 0 0 851 0 0 3 4 0 0 0 4 0 + 288 12 JAN 23:00 0 180 671 0 0 3 4 0 0 3 4 0 289 13 JAN 00:00 180 0 600 0 100501 1 4 0 1 0 4 0 290 13 JAN 01:00 180 0 600 0 1 0 4 0 1 0 4 0 291 13 JAN 02:00 180 0 600 0 1 0 4 0 1 0 4 0 diff --git a/tests/functional/data_complex_case/milp/0/details-hourly.txt b/tests/functional/data_complex_case/milp/0/details-hourly.txt index 364b4af5..12397ff9 100644 --- a/tests/functional/data_complex_case/milp/0/details-hourly.txt +++ b/tests/functional/data_complex_case/milp/0/details-hourly.txt @@ -112,8 +112,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 105 05 JAN 08:00 410 0 672 0 1 0 3 0 1 0 3 0 106 05 JAN 09:00 410 0 700 0 1 0 3 0 1 0 3 0 107 05 JAN 10:00 410 0 690 0 1 0 3 0 1 0 3 0 - 108 05 JAN 11:00 410 0 675 0 1 0 3 0 1 0 3 0 - 109 05 JAN 12:00 410 0 662 0 1 0 3 0 1 0 3 0 + 108 05 JAN 11:00 410 60 615 0 1 0 3 0 1 1 3 0 + 109 05 JAN 12:00 410 60 602 0 1 0 3 0 1 1 3 0 110 05 JAN 13:00 410 60 655 0 1 24501 3 0 1 1 3 0 111 05 JAN 14:00 410 60 674 0 1 1 3 0 1 1 3 0 112 05 JAN 15:00 410 60 684 0 1 1 3 0 1 1 3 0 @@ -123,8 +123,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 116 05 JAN 19:00 410 60 814 0 1 1 3 0 1 1 3 0 117 05 JAN 20:00 410 60 731 0 1 1 3 0 1 1 3 0 118 05 JAN 21:00 410 60 608 0 1 1 3 0 1 1 3 0 - 119 05 JAN 22:00 410 60 480 0 1 1 2 0 1 1 2 0 - 120 05 JAN 23:00 401 60 300 0 1 1 2 0 1 1 2 0 + 119 05 JAN 22:00 410 0 540 0 1 1 2 0 1 0 2 0 + 120 05 JAN 23:00 410 0 351 0 1 1 2 0 1 0 2 0 121 06 JAN 00:00 252 0 300 0 1 0 2 0 1 0 2 0 122 06 JAN 01:00 180 0 300 0 1 0 2 0 1 0 2 0 123 06 JAN 02:00 180 0 300 0 1 0 2 0 1 0 2 0 diff --git a/tests/functional/data_complex_case/milp/1/details-hourly.txt b/tests/functional/data_complex_case/milp/1/details-hourly.txt index ee3bdc19..e8004bdb 100644 --- a/tests/functional/data_complex_case/milp/1/details-hourly.txt +++ b/tests/functional/data_complex_case/milp/1/details-hourly.txt @@ -232,7 +232,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 225 10 JAN 08:00 410 0 713 0 1 0 3 0 1 0 3 0 226 10 JAN 09:00 410 0 737 0 1 0 3 0 1 0 3 0 227 10 JAN 10:00 410 0 713 0 1 24501 3 0 1 0 3 0 - 228 10 JAN 11:00 410 0 695 0 1 1 3 0 1 0 3 0 + 228 10 JAN 11:00 410 60 635 0 1 1 3 0 1 1 3 0 229 10 JAN 12:00 410 60 614 0 1 1 3 0 1 1 3 0 230 10 JAN 13:00 410 60 649 0 1 1 3 0 1 1 3 0 231 10 JAN 14:00 410 60 660 0 1 1 3 0 1 1 3 0 @@ -243,7 +243,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 236 10 JAN 19:00 410 83 825 0 1 1 3 0 1 1 3 0 237 10 JAN 20:00 410 60 784 0 1 1 3 0 1 1 3 0 238 10 JAN 21:00 410 60 678 0 1 0 3 0 1 1 3 0 - 239 10 JAN 22:00 410 60 553 0 1 0 3 0 1 1 3 0 + 239 10 JAN 22:00 410 0 613 0 1 0 3 0 1 0 3 0 240 10 JAN 23:00 410 0 456 0 1 0 3 0 1 0 3 0 241 11 JAN 00:00 291 0 450 0 1 0 3 0 1 0 3 0 242 11 JAN 01:00 208 0 450 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py new file mode 100644 index 00000000..df1152c0 --- /dev/null +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -0,0 +1,132 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from andromede.expression import ( + literal, + param, + var, +) +from andromede.expression.expression import ExpressionRange +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, +) +from andromede.model import ModelPort, float_parameter, float_variable, model +from andromede.model.model import PortFieldDefinition, PortFieldId +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable +from andromede.model.constraint import Constraint + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) + +THERMAL_CLUSTER_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("min_generating", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=param("min_generating"), + upper_bound=param("max_generating"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max_min_down_time") - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index b7631129..82e2cc30 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -14,7 +14,7 @@ import pytest import numpy as np from typing import List, Dict -from math import ceil, floor +from math import ceil import ortools.linear_solver.pywraplp as pywraplp from andromede.expression import ( @@ -25,17 +25,15 @@ PrinterVisitor, ExpressionNode, ) -from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( - BALANCE_PORT_TYPE, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.model import Model, ModelPort, float_parameter, float_variable, model -from andromede.model.model import PortFieldDefinition, PortFieldId +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.model import Model, float_parameter, float_variable, model from andromede.model.parameter import float_parameter, int_parameter from andromede.model.variable import float_variable, int_variable, ValueType from andromede.model.constraint import Constraint @@ -52,7 +50,6 @@ Network, Node, PortRef, - TimeScenarioIndex, TimeScenarioSeriesData, TimeSeriesData, TimeIndex, @@ -66,90 +63,6 @@ NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -THERMAL_CLUSTER_MODEL_MILP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - float_parameter("failures", TIME_AND_SCENARIO_FREE), - float_parameter("mingen", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=param("mingen"), - upper_bound=param("failures"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") - ) - .sum() - .expec(), -) - def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: @@ -257,7 +170,6 @@ def get_accurate_heuristic_model(initial_model: Model) -> Model: return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC - def get_model_fast_heuristic(Q: int, delta: int) -> Model: BLOCK_MODEL_FAST_HEURISTIC = model( id="BLOCK_FAST", @@ -388,7 +300,7 @@ def test_milp_version() -> None: check_output_values(problem, "milp", week, scenario=scenario) - expected_cost = [[78933841, 102109698], [17472101, 17424769]] + expected_cost = [[78933742, 102109698], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -528,7 +440,10 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem problem_accurate_heuristic = create_problem_accurate_heuristic( - {g: n_guide}, + { + th: n_guide if th == g else ConstantData(0) + for th in ["G1", "G2", "G3"] + }, number_hours, thermal_cluster=g, week=week, @@ -569,7 +484,7 @@ def test_accurate_heuristic() -> None: expected_cost = [ [78996726, 102215087 - 69500], - [17587733, 17650089 - 10081], + [17587733, 17641808], ] assert problem_optimization_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] @@ -739,6 +654,9 @@ def generate_database( index=[i for i in range(number_hours)], columns=[0], ) + max_units_1 = get_max_unit(410, 1, failures_1) + max_failures_1 = get_max_failures(max_units_1) + nb_units_max_min_down_time_1 = get_max_unit_for_min_down_time(8, max_units_1) database.add_data("G1", "p_max", ConstantData(410)) database.add_data("G1", "p_min", ConstantData(180)) @@ -748,9 +666,15 @@ def generate_database( database.add_data("G1", "d_min_up", ConstantData(8)) database.add_data("G1", "d_min_down", ConstantData(8)) database.add_data("G1", "nb_units_min", lower_bound["G1"]) - database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) - database.add_data("G1", "mingen", lower_bound["G1"]) + database.add_data("G1", "nb_units_max", TimeScenarioSeriesData(max_units_1)) + database.add_data("G1", "max_generating", TimeScenarioSeriesData(failures_1)) + database.add_data("G1", "min_generating", lower_bound["G1"]) + database.add_data("G1", "max_failure", TimeScenarioSeriesData(max_failures_1)) + database.add_data( + "G1", + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time_1), + ) database.add_data("G2", "p_max", ConstantData(90)) database.add_data("G2", "p_min", ConstantData(60)) @@ -761,14 +685,19 @@ def generate_database( database.add_data("G2", "d_min_down", ConstantData(11)) database.add_data("G2", "nb_units_min", lower_bound["G2"]) database.add_data("G2", "nb_units_max", ConstantData(3)) - database.add_data("G2", "failures", ConstantData(270)) - database.add_data("G2", "mingen", lower_bound["G2"]) + database.add_data("G2", "max_generating", ConstantData(270)) + database.add_data("G2", "min_generating", lower_bound["G2"]) + database.add_data("G2", "max_failure", ConstantData(0)) + database.add_data("G2", "nb_units_max_min_down_time", ConstantData(3)) failures_3 = pd.DataFrame( np.repeat(get_failures_for_cluster3(week, scenario), 24), index=[i for i in range(number_hours)], columns=[0], ) + max_units_3 = get_max_unit(275, 4, failures_3) + max_failures_3 = get_max_failures(max_units_3) + nb_units_max_min_down_time_3 = get_max_unit_for_min_down_time(9, max_units_3) database.add_data("G3", "p_max", ConstantData(275)) database.add_data("G3", "p_min", ConstantData(150)) @@ -778,9 +707,15 @@ def generate_database( database.add_data("G3", "d_min_up", ConstantData(9)) database.add_data("G3", "d_min_down", ConstantData(9)) database.add_data("G3", "nb_units_min", lower_bound["G3"]) - database.add_data("G3", "nb_units_max", ConstantData(4)) - database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) - database.add_data("G3", "mingen", lower_bound["G3"]) + database.add_data("G3", "nb_units_max", TimeScenarioSeriesData(max_units_3)) + database.add_data("G3", "max_generating", TimeScenarioSeriesData(failures_3)) + database.add_data("G3", "min_generating", lower_bound["G3"]) + database.add_data("G3", "max_failure", TimeScenarioSeriesData(max_failures_3)) + database.add_data( + "G3", + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time_3), + ) database.add_data("U", "cost", ConstantData(10000)) database.add_data("S", "cost", ConstantData(1)) @@ -829,6 +764,38 @@ def get_failures_for_cluster1(week: int, scenario: int) -> List: return failures +def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: + nb_units_max_min_down_time = pd.DataFrame( + np.roll(max_units.values, delta), index=max_units.index + ) + end_failures = max_units - pd.DataFrame( + np.roll(max_units.values, 1), index=max_units.index + ) + end_failures.where(end_failures > 0, 0, inplace=True) + for j in range(delta): + nb_units_max_min_down_time += pd.DataFrame( + np.roll(end_failures.values, j), index=end_failures.index + ) + + return nb_units_max_min_down_time + + +def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: + max_failures = ( + pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units + ) + max_failures.where(max_failures > 0, 0, inplace=True) + return max_failures + + +def get_max_unit( + pmax: float, units: float, max_generating: pd.DataFrame +) -> pd.DataFrame: + max_units = max_generating / pmax + max_units.where(max_units < units, units, inplace=True) + return max_units + + def create_problem_accurate_heuristic( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, @@ -837,61 +804,16 @@ def create_problem_accurate_heuristic( scenario: int, ) -> OptimizationProblem: - database = DataBase() - - if thermal_cluster == "G1": - failures_1 = pd.DataFrame( - np.repeat(get_failures_for_cluster1(week, scenario), 24), - index=[i for i in range(number_hours)], - columns=[0], - ) - database.add_data("G1", "p_max", ConstantData(410)) - database.add_data("G1", "p_min", ConstantData(180)) - database.add_data("G1", "cost", ConstantData(96)) - database.add_data("G1", "startup_cost", ConstantData(100500)) - database.add_data("G1", "fixed_cost", ConstantData(1)) - database.add_data("G1", "d_min_up", ConstantData(8)) - database.add_data("G1", "d_min_down", ConstantData(8)) - database.add_data("G1", "nb_units_min", lower_bound["G1"]) - database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) - database.add_data("G1", "mingen", lower_bound["G1"]) - elif thermal_cluster == "G2": - database.add_data("G2", "p_max", ConstantData(90)) - database.add_data("G2", "p_min", ConstantData(60)) - database.add_data("G2", "cost", ConstantData(137)) - database.add_data("G2", "startup_cost", ConstantData(24500)) - database.add_data("G2", "fixed_cost", ConstantData(1)) - database.add_data("G2", "d_min_up", ConstantData(11)) - database.add_data("G2", "d_min_down", ConstantData(11)) - database.add_data("G2", "nb_units_min", lower_bound["G2"]) - database.add_data("G2", "nb_units_max", ConstantData(3)) - database.add_data("G2", "failures", ConstantData(270)) - database.add_data("G2", "mingen", lower_bound["G2"]) - elif thermal_cluster == "G3": - failures_3 = pd.DataFrame( - np.repeat(get_failures_for_cluster3(week, scenario), 24), - index=[i for i in range(number_hours)], - columns=[0], - ) - - database.add_data("G3", "p_max", ConstantData(275)) - database.add_data("G3", "p_min", ConstantData(150)) - database.add_data("G3", "cost", ConstantData(107)) - database.add_data("G3", "startup_cost", ConstantData(69500)) - database.add_data("G3", "fixed_cost", ConstantData(1)) - database.add_data("G3", "d_min_up", ConstantData(9)) - database.add_data("G3", "d_min_down", ConstantData(9)) - database.add_data("G3", "nb_units_min", lower_bound["G3"]) - database.add_data("G3", "nb_units_max", ConstantData(4)) - database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) - database.add_data("G3", "mingen", lower_bound["G3"]) + database = generate_database( + lower_bound=lower_bound, number_hours=number_hours, week=week, scenario=scenario + ) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 gen = create_component( - model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), id=thermal_cluster + model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), + id=thermal_cluster, ) network = Network("test") diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 4ba03803..90561626 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -14,7 +14,7 @@ import pytest import numpy as np from typing import List, Dict -from math import ceil, floor +from math import ceil import ortools.linear_solver.pywraplp as pywraplp from andromede.expression import ( @@ -25,17 +25,9 @@ PrinterVisitor, ExpressionNode, ) -from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, -) -from andromede.model import Model, ModelPort, float_parameter, float_variable, model -from andromede.model.model import PortFieldDefinition, PortFieldId +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.model import Model, float_parameter, float_variable, model from andromede.model.parameter import float_parameter, int_parameter from andromede.model.variable import float_variable, int_variable from andromede.model.constraint import Constraint @@ -50,9 +42,6 @@ ConstantData, DataBase, Network, - Node, - PortRef, - TimeScenarioIndex, TimeScenarioSeriesData, TimeSeriesData, TimeIndex, @@ -66,104 +55,6 @@ NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -THERMAL_CLUSTER_MODEL_MILP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), - float_parameter("max_generating", TIME_AND_SCENARIO_FREE), - int_parameter("max_failure", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=literal(0), - upper_bound=param("max_generating"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_failure", - lower_bound=literal(0), - upper_bound=param("max_failure"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Max failures", - var("nb_failure") <= var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - - var("nb_failure") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max_min_down_time") - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") - ) - .sum() - .expec(), -) - def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: res = False @@ -471,24 +362,11 @@ def generate_database( for i, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): max_generating = get_failures_for_cluster(week, scenario, cluster, number_hours) - max_units = max_generating / pmax[cluster] - max_units.where(max_units < units[cluster], units[cluster], inplace=True) - max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - - max_units + max_units = get_max_unit(pmax[cluster], units[cluster], max_generating) + max_failures = get_max_failures(max_units) + nb_units_max_min_down_time = get_max_unit_for_min_down_time( + delta[cluster], max_units ) - max_failures.where(max_failures > 0, 0, inplace=True) - nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta[cluster]), index=max_units.index - ) - end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1), index=max_units.index - ) - end_failures.where(end_failures > 0, 0, inplace=True) - for j in range(delta[cluster]): - nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j), index=end_failures.index - ) database.add_data(cluster, "p_max", ConstantData(pmax[cluster])) database.add_data(cluster, "p_min", ConstantData(pmin[cluster])) @@ -518,11 +396,43 @@ def generate_database( "nb_units_max_min_down_time", TimeScenarioSeriesData(nb_units_max_min_down_time), ) - database.add_data(cluster, "mingen", lower_bound[cluster]) + database.add_data(cluster, "min_generating", lower_bound[cluster]) return database +def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: + nb_units_max_min_down_time = pd.DataFrame( + np.roll(max_units.values, delta), index=max_units.index + ) + end_failures = max_units - pd.DataFrame( + np.roll(max_units.values, 1), index=max_units.index + ) + end_failures.where(end_failures > 0, 0, inplace=True) + for j in range(delta): + nb_units_max_min_down_time += pd.DataFrame( + np.roll(end_failures.values, j), index=end_failures.index + ) + + return nb_units_max_min_down_time + + +def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: + max_failures = ( + pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units + ) + max_failures.where(max_failures > 0, 0, inplace=True) + return max_failures + + +def get_max_unit( + pmax: float, units: float, max_generating: pd.DataFrame +) -> pd.DataFrame: + max_units = max_generating / pmax + max_units.where(max_units < units, units, inplace=True) + return max_units + + def get_data() -> ( tuple[ Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int] diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index c1a3610d..d5e6a224 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -14,7 +14,7 @@ import pytest import numpy as np from typing import List -from math import ceil, floor +from math import ceil import ortools.linear_solver.pywraplp as pywraplp from andromede.expression import ( @@ -25,19 +25,17 @@ visit, ExpressionNode, ) -from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( - BALANCE_PORT_TYPE, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.model import Model, ModelPort, float_parameter, float_variable, model -from andromede.model.model import PortFieldDefinition, PortFieldId +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.model import Model, float_parameter, float_variable, model from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable, ValueType, Variable +from andromede.model.variable import float_variable, int_variable, ValueType from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, @@ -52,7 +50,6 @@ Network, Node, PortRef, - TimeScenarioIndex, TimeScenarioSeriesData, TimeSeriesData, TimeIndex, @@ -66,90 +63,6 @@ NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -THERMAL_CLUSTER_MODEL_MILP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - int_parameter("nb_failures", TIME_AND_SCENARIO_FREE), - float_parameter("mingen", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=param("mingen"), - upper_bound=param("nb_units_max") * param("p_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") - ) - .sum() - .expec(), -) - def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: @@ -257,105 +170,108 @@ def get_accurate_heuristic_model(initial_model: Model) -> Model: return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC -Q = 16 # number of blocks -R = 8 # length of the last block -Delta = 10 -BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - ] - + [ - int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(Delta) - ] - + [ - int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(Delta) - ], - variables=[ - float_variable( - f"n_block_{k}", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - for k in range(Q) - ] - + [ - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - ] - + [ - int_variable( - f"t_ajust_{h}", - lower_bound=literal(0), - upper_bound=literal(1), - structure=CONSTANT_PER_SCENARIO, - ) - for h in range(Delta) - ] - + [ - float_variable( - "n", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - f"Definition of n block {k} for {h}", - var(f"n_block_{k}") - >= param("n_guide") * param(f"alpha_{k}_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(Delta) - ] - + [ - Constraint( - f"Definition of n ajust for {h}", - var(f"n_ajust") - >= param("n_guide") * param(f"alpha_ajust_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(Delta) - ] - + [ - Constraint( - f"Definition of n with relation to block {k} for {h}", - var(f"n") - >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(Delta) - ] - + [ - Constraint( - f"Definition of n with relation to ajust for {h}", - var(f"n") - >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(Delta) - ] - + [ - Constraint( - "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(Delta)]) == literal(1), - ) - ], - objective_operational_contribution=(var("n")).sum().expec(), -) +def get_model_fast_heuristic(Q: int, delta: int) -> Model: + BLOCK_MODEL_FAST_HEURISTIC = model( + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(delta) + ], + variables=[ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ + int_variable( + f"t_ajust_{h}", + lower_bound=literal(0), + upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + "Choose one t ajust", + literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + == literal(1), + ) + ], + objective_operational_contribution=(var("n")).sum().expec() + + sum( + [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] + ).expec(), # type:ignore + ) + return BLOCK_MODEL_FAST_HEURISTIC def test_milp_version() -> None: @@ -722,8 +638,10 @@ def create_simple_problem( database.add_data("G", "d_min_down", ConstantData(10)) database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "nb_failures", ConstantData(0)) - database.add_data("G", "mingen", lower_bound) + database.add_data("G", "max_failure", ConstantData(0)) + database.add_data("G", "min_generating", lower_bound) + database.add_data("G", "max_generating", ConstantData(3000)) + database.add_data("G", "nb_units_max_min_down_time", ConstantData(3)) database.add_data("U", "cost", ConstantData(1000)) database.add_data("S", "cost", ConstantData(0)) @@ -798,8 +716,10 @@ def create_problem_accurate_heuristic( database.add_data("G", "d_min_down", ConstantData(10)) database.add_data("G", "nb_units_min", lower_bound) database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "nb_failures", ConstantData(0)) - database.add_data("G", "mingen", lower_bound) + database.add_data("G", "max_failure", ConstantData(0)) + database.add_data("G", "min_generating", lower_bound) + database.add_data("G", "max_generating", ConstantData(3000)) + database.add_data("G", "nb_units_max_min_down_time", ConstantData(3)) time_block = TimeBlock(1, [i for i in range(number_hours)]) scenarios = 1 @@ -830,6 +750,7 @@ def create_problem_fast_heuristic( pmin = 700 pdispo = np.array(3000) nmax = 3 + Q = 16 database = DataBase() @@ -864,7 +785,7 @@ def create_problem_fast_heuristic( time_block = TimeBlock(1, [i for i in range(number_hours)]) - block = create_component(model=BLOCK_MODEL_FAST_HEURISTIC, id="B") + block = create_component(model=get_model_fast_heuristic(Q=Q, delta=delta), id="B") network = Network("test") network.add_component(block) @@ -902,3 +823,35 @@ def create_problem_fast_heuristic( def convert_to_integer(x: float) -> int: return ceil(round(x, 12)) + + +def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: + nb_units_max_min_down_time = pd.DataFrame( + np.roll(max_units.values, delta), index=max_units.index + ) + end_failures = max_units - pd.DataFrame( + np.roll(max_units.values, 1), index=max_units.index + ) + end_failures.where(end_failures > 0, 0, inplace=True) + for j in range(delta): + nb_units_max_min_down_time += pd.DataFrame( + np.roll(end_failures.values, j), index=end_failures.index + ) + + return nb_units_max_min_down_time + + +def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: + max_failures = ( + pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units + ) + max_failures.where(max_failures > 0, 0, inplace=True) + return max_failures + + +def get_max_unit( + pmax: float, units: float, max_generating: pd.DataFrame +) -> pd.DataFrame: + max_units = max_generating / pmax + max_units.where(max_units < units, units, inplace=True) + return max_units From 0b10902bcb3c81fc3e98754e74152e8a062aca77 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 27 Jun 2024 13:34:31 +0200 Subject: [PATCH 29/93] Move some functions from tests to src --- src/andromede/thermal_heuristic/data.py | 171 ++++++++ src/andromede/thermal_heuristic/model.py | 273 +++++++++++++ .../functional/test_heuristic_complex_case.py | 384 ++---------------- .../test_heuristic_second_complex_case.py | 271 +----------- .../functional/test_heuristic_simple_case.py | 273 +------------ 5 files changed, 486 insertions(+), 886 deletions(-) create mode 100644 src/andromede/thermal_heuristic/data.py create mode 100644 src/andromede/thermal_heuristic/model.py diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py new file mode 100644 index 00000000..a6523dea --- /dev/null +++ b/src/andromede/thermal_heuristic/data.py @@ -0,0 +1,171 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest +import numpy as np +from math import ceil + +from typing import List + +from andromede.simulation.optimization import OptimizationProblem + +from andromede.simulation import ( + OutputValues, +) +from andromede.study import ( + ConstantData, + TimeScenarioSeriesData, +) + + +def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: + nb_units_max_min_down_time = pd.DataFrame( + np.roll(max_units.values, delta), index=max_units.index + ) + end_failures = max_units - pd.DataFrame( + np.roll(max_units.values, 1), index=max_units.index + ) + end_failures.where(end_failures > 0, 0, inplace=True) + for j in range(delta): + nb_units_max_min_down_time += pd.DataFrame( + np.roll(end_failures.values, j), index=end_failures.index + ) + + return nb_units_max_min_down_time + + +def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: + max_failures = ( + pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units + ) + max_failures.where(max_failures > 0, 0, inplace=True) + return max_failures + + +def get_max_unit( + pmax: float, units: float, max_generating: pd.DataFrame +) -> pd.DataFrame: + max_units = max_generating / pmax + max_units.where(max_units < units, units, inplace=True) + return max_units + + +def get_failures_for_cluster( + week: int, scenario: int, cluster: str, number_hours: int, dir_path: str +) -> pd.DataFrame: + input_file = np.loadtxt( + "tests/functional/" + dir_path + f"/series_{cluster}.txt", + delimiter="\t", + ) + + failures_data = pd.DataFrame( + data=input_file[ + number_hours * week : number_hours * week + number_hours, scenario + ], + index=[i for i in range(number_hours)], + columns=[0], + ) + + return failures_data + + +def check_output_values( + problem: OptimizationProblem, mode: str, week: int, scenario: int, dir_path: str +) -> None: + output = OutputValues(problem) + + expected_output_clusters_file = open( + "tests/functional/" + + dir_path + + "/" + + mode + + "/" + + str(scenario) + + "/details-hourly.txt", + "r", + ) + expected_output_clusters = expected_output_clusters_file.readlines() + + expected_output_general_file = open( + "tests/functional/" + + dir_path + + "/" + + mode + + "/" + + str(scenario) + + "/values-hourly.txt", + "r", + ) + expected_output_general = expected_output_general_file.readlines() + + assert output.component("G1").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[4])) + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + if mode != "fast": + assert output.component("G1").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[12])) + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ] + ] + + assert output.component("G2").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[5])) + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + if mode != "fast": + assert output.component("G2").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[13])) + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ] + ] + + assert output.component("G3").var("generation").value == [ + [ + pytest.approx(float(line.strip().split("\t")[6])) + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + if mode != "fast": + assert output.component("G3").var("nb_on").value == [ + [ + pytest.approx(float(line.strip().split("\t")[14])) + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ] + ] + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(float(line.strip().split("\t")[20 if mode == "milp" else 21])) + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] + ] + ] + + assert output.component("U").var("unsupplied_energy").value == [ + [ + pytest.approx(float(line.strip().split("\t")[19 if mode == "milp" else 20])) + for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] + ] + ] diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py new file mode 100644 index 00000000..c5e01ca9 --- /dev/null +++ b/src/andromede/thermal_heuristic/model.py @@ -0,0 +1,273 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import pytest +import numpy as np +from typing import List +from math import ceil +import ortools.linear_solver.pywraplp as pywraplp + +from andromede.expression import ( + literal, + param, + var, + PrinterVisitor, + visit, + ExpressionNode, +) +from andromede.expression.indexing_structure import IndexingStructure +from andromede.libs.standard import ( + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.model import Model, float_parameter, float_variable, model +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import float_variable, int_variable, ValueType +from andromede.model.constraint import Constraint +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, + create_component, +) +from andromede.study.data import AbstractDataStructure + +CONSTANT = IndexingStructure(False, False) +TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) +ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) +NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) +CONSTANT_PER_SCENARIO = IndexingStructure(False, True) + +def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: + + THERMAL_CLUSTER_MODEL_LP = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=v.lower_bound, + upper_bound=v.upper_bound, + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[c for c in initial_model.constraints.values()], + objective_operational_contribution=initial_model.objective_operational_contribution, + ) + + return THERMAL_CLUSTER_MODEL_LP + + +def get_thermal_cluster_fast_model(initial_model: Model) -> Model: + + integer_variables = [ + v.name + for v in initial_model.variables.values() + if v.data_type == ValueType.INTEGER + ] + + THERMAL_CLUSTER_MODEL_FAST = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + float_variable( + v.name, + lower_bound=( + v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + upper_bound=( + v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) + ), + structure=v.structure, + ) + for v in initial_model.variables.values() + ], + ports=[p for p in initial_model.ports.values()], + port_fields_definitions=[ + p for p in initial_model.port_fields_definitions.values() + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, integer_variables)) + ], + objective_operational_contribution=initial_model.objective_operational_contribution, + ) + + return THERMAL_CLUSTER_MODEL_FAST + + +def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: + res = False + if variable_in_expression(c.lower_bound, variables): + res = True + elif variable_in_expression(c.expression, variables): + res = True + elif variable_in_expression(c.upper_bound, variables): + res = True + return res + + +def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: + res = False + str_expr = visit(expr, PrinterVisitor()) + for v in variables: + if v in str_expr: + res = True + return res + + +def get_accurate_heuristic_model(initial_model: Model) -> Model: + + generation_variable = ["generation"] + + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id=initial_model.id, + parameters=[p for p in initial_model.parameters.values()], + variables=[ + v + for v in initial_model.variables.values() + if v.name not in generation_variable + ], + constraints=[ + c + for c in initial_model.constraints.values() + if not (variable_in_constraint(c, generation_variable)) + ], + objective_operational_contribution=(var("nb_on")).sum().expec(), + ) + return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC + + +def get_model_fast_heuristic(Q: int, delta: int) -> Model: + BLOCK_MODEL_FAST_HEURISTIC = model( + id="BLOCK_FAST", + parameters=[ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(delta) + ], + variables=[ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ + int_variable( + f"t_ajust_{h}", + lower_bound=literal(0), + upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=TIME_AND_SCENARIO_FREE, + ) + ], + constraints=[ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + "Choose one t ajust", + literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + == literal(1), + ) + ], + objective_operational_contribution=(var("n")).sum().expec() + + sum( + [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] + ).expec(), # type:ignore + ) + return BLOCK_MODEL_FAST_HEURISTIC \ No newline at end of file diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 82e2cc30..54b5a710 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -14,18 +14,8 @@ import pytest import numpy as np from typing import List, Dict -from math import ceil import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import ( - literal, - param, - var, - visit, - PrinterVisitor, - ExpressionNode, -) -from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( DEMAND_MODEL, NODE_BALANCE_MODEL, @@ -33,10 +23,6 @@ UNSUPPLIED_ENERGY_MODEL, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.model import Model, float_parameter, float_variable, model -from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable, ValueType -from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -56,222 +42,18 @@ create_component, ) from andromede.study.data import AbstractDataStructure - -CONSTANT = IndexingStructure(False, False) -TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) -ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) -NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) -CONSTANT_PER_SCENARIO = IndexingStructure(False, True) - - -def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: - - THERMAL_CLUSTER_MODEL_LP = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - float_variable( - v.name, - lower_bound=v.lower_bound, - upper_bound=v.upper_bound, - structure=v.structure, - ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[c for c in initial_model.constraints.values()], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_LP - - -def get_thermal_cluster_fast_model(initial_model: Model) -> Model: - - integer_variables = [ - v.name - for v in initial_model.variables.values() - if v.data_type == ValueType.INTEGER - ] - - THERMAL_CLUSTER_MODEL_FAST = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - float_variable( - v.name, - lower_bound=( - v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) - ), - upper_bound=( - v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) - ), - structure=v.structure, - ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, integer_variables)) - ], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_FAST - - -def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: - res = False - if variable_in_expression(c.lower_bound, variables): - res = True - elif variable_in_expression(c.expression, variables): - res = True - elif variable_in_expression(c.upper_bound, variables): - res = True - return res - - -def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: - res = False - str_expr = visit(expr, PrinterVisitor()) - for v in variables: - if v in str_expr: - res = True - return res - - -def get_accurate_heuristic_model(initial_model: Model) -> Model: - - generation_variable = ["generation"] - - THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - v - for v in initial_model.variables.values() - if v.name not in generation_variable - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, generation_variable)) - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), - ) - return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC - - -def get_model_fast_heuristic(Q: int, delta: int) -> Model: - BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - ] - + [ - int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(delta) - ] - + [ - int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(delta) - ], - variables=[ - float_variable( - f"n_block_{k}", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - for k in range(Q) - ] - + [ - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - ] - + [ - int_variable( - f"t_ajust_{h}", - lower_bound=literal(0), - upper_bound=literal(1), - structure=CONSTANT_PER_SCENARIO, - ) - for h in range(delta) - ] - + [ - float_variable( - "n", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - f"Definition of n block {k} for {h}", - var(f"n_block_{k}") - >= param("n_guide") * param(f"alpha_{k}_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n ajust for {h}", - var(f"n_ajust") - >= param("n_guide") * param(f"alpha_ajust_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to block {k} for {h}", - var(f"n") - >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to ajust for {h}", - var(f"n") - >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) - == literal(1), - ) - ], - objective_operational_contribution=(var("n")).sum().expec() - + sum( - [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] - ).expec(), # type:ignore - ) - return BLOCK_MODEL_FAST_HEURISTIC +from andromede.thermal_heuristic.model import ( + get_accurate_heuristic_model, + get_model_fast_heuristic, + get_thermal_cluster_accurate_model, + get_thermal_cluster_fast_model, +) +from andromede.thermal_heuristic.data import ( + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, + check_output_values, +) def test_milp_version() -> None: @@ -298,7 +80,9 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL - check_output_values(problem, "milp", week, scenario=scenario) + check_output_values( + problem, "milp", week, scenario=scenario, dir_path="data_complex_case" + ) expected_cost = [[78933742, 102109698], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( @@ -306,94 +90,6 @@ def test_milp_version() -> None: ) -def check_output_values( - problem: OptimizationProblem, mode: str, week: int, scenario: int -) -> None: - output = OutputValues(problem) - - expected_output_clusters_file = open( - "tests/functional/data_complex_case/" - + mode - + "/" - + str(scenario) - + "/details-hourly.txt", - "r", - ) - expected_output_clusters = expected_output_clusters_file.readlines() - - expected_output_general_file = open( - "tests/functional/data_complex_case/" - + mode - + "/" - + str(scenario) - + "/values-hourly.txt", - "r", - ) - expected_output_general = expected_output_general_file.readlines() - - assert output.component("G1").var("generation").value == [ - [ - pytest.approx(float(line.strip().split("\t")[4])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - if mode != "fast": - assert output.component("G1").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[12])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - - assert output.component("G2").var("generation").value == [ - [ - pytest.approx(float(line.strip().split("\t")[5])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - if mode != "fast": - assert output.component("G2").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[13])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - - assert output.component("G3").var("generation").value == [ - [ - pytest.approx(float(line.strip().split("\t")[6])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - if mode != "fast": - assert output.component("G3").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[14])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(float(line.strip().split("\t")[20 if mode == "milp" else 21])) - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - - assert output.component("U").var("unsupplied_energy").value == [ - [ - pytest.approx(float(line.strip().split("\t")[19 if mode == "milp" else 20])) - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - - def test_accurate_heuristic() -> None: """ Solve the same problem as before with the heuristic accurate of Antares @@ -479,7 +175,11 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL check_output_values( - problem_optimization_2, "accurate", week, scenario=scenario + problem_optimization_2, + "accurate", + week, + scenario=scenario, + dir_path="data_complex_case", ) expected_cost = [ @@ -563,7 +263,13 @@ def test_fast_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL - check_output_values(problem_optimization_2, "fast", week, scenario) + check_output_values( + problem_optimization_2, + "fast", + week, + scenario, + dir_path="data_complex_case", + ) expected_cost = [ [79277215 - 630089, 102461792 - 699765], @@ -764,38 +470,6 @@ def get_failures_for_cluster1(week: int, scenario: int) -> List: return failures -def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: - nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta), index=max_units.index - ) - end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1), index=max_units.index - ) - end_failures.where(end_failures > 0, 0, inplace=True) - for j in range(delta): - nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j), index=end_failures.index - ) - - return nb_units_max_min_down_time - - -def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: - max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units - ) - max_failures.where(max_failures > 0, 0, inplace=True) - return max_failures - - -def get_max_unit( - pmax: float, units: float, max_generating: pd.DataFrame -) -> pd.DataFrame: - max_units = max_generating / pmax - max_units.where(max_units < units, units, inplace=True) - return max_units - - def create_problem_accurate_heuristic( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, @@ -937,7 +611,3 @@ def create_problem_fast_heuristic( ) return mingen_heuristic - - -def convert_to_integer(x: float) -> int: - return ceil(round(x, 12)) diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 90561626..ef9c6880 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -14,23 +14,9 @@ import pytest import numpy as np from typing import List, Dict -from math import ceil import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import ( - literal, - param, - var, - visit, - PrinterVisitor, - ExpressionNode, -) -from andromede.expression.indexing_structure import IndexingStructure from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.model import Model, float_parameter, float_variable, model -from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable -from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -48,218 +34,15 @@ create_component, ) from andromede.study.data import AbstractDataStructure - -CONSTANT = IndexingStructure(False, False) -TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) -ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) -NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) -CONSTANT_PER_SCENARIO = IndexingStructure(False, True) - - -def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: - res = False - if variable_in_expression(c.lower_bound, variables): - res = True - elif variable_in_expression(c.expression, variables): - res = True - elif variable_in_expression(c.upper_bound, variables): - res = True - return res - - -def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: - res = False - str_expr = visit(expr, PrinterVisitor()) - for v in variables: - if v in str_expr: - res = True - return res - - -def get_accurate_heuristic_model(initial_model: Model) -> Model: - - generation_variable = ["generation"] - - THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - v - for v in initial_model.variables.values() - if v.name not in generation_variable - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, generation_variable)) - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), - ) - return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC - - -def get_model_fast_heuristic(Q: int, delta: int) -> Model: - BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - ] - + [ - int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(delta) - ] - + [ - int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(delta) - ], - variables=[ - float_variable( - f"n_block_{k}", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - for k in range(Q) - ] - + [ - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - ] - + [ - int_variable( - f"t_ajust_{h}", - lower_bound=literal(0), - upper_bound=literal(1), - structure=CONSTANT_PER_SCENARIO, - ) - for h in range(delta) - ] - + [ - float_variable( - "n", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - f"Definition of n block {k} for {h}", - var(f"n_block_{k}") - >= param("n_guide") * param(f"alpha_{k}_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n ajust for {h}", - var(f"n_ajust") - >= param("n_guide") * param(f"alpha_ajust_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to block {k} for {h}", - var(f"n") - >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to ajust for {h}", - var(f"n") - >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) - == literal(1), - ) - ], - objective_operational_contribution=(var("n")).sum().expec() - + sum( - [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] - ).expec(), # type:ignore - ) - return BLOCK_MODEL_FAST_HEURISTIC - - -def check_output_values( - problem: OptimizationProblem, mode: str, week: int, scenario: int -) -> None: - output = OutputValues(problem) - - expected_output_clusters_file = open( - "tests/functional/data_second_complex_case/" - + mode - + "/" - + str(scenario) - + "/details-hourly.txt", - "r", - ) - expected_output_clusters = expected_output_clusters_file.readlines() - - expected_output_general_file = open( - "tests/functional/data_second_complex_case/" - + mode - + "/" - + str(scenario) - + "/values-hourly.txt", - "r", - ) - expected_output_general = expected_output_general_file.readlines() - - for i, cluster in enumerate(["G" + str(i) for i in [2]]): - - assert output.component(cluster).var("generation").value == [ - [ - pytest.approx(float(line.strip().split("\t")[4 + i]), abs=1e-10) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - if mode != "fast": - assert output.component(cluster).var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[6 + i])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(float(line.strip().split("\t")[11 if mode == "milp" else 12])) - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - - assert output.component("U").var("unsupplied_energy").value == [ - [ - pytest.approx(float(line.strip().split("\t")[10 if mode == "milp" else 11])) - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] +from andromede.thermal_heuristic.model import ( + get_accurate_heuristic_model, + get_model_fast_heuristic, +) +from andromede.thermal_heuristic.data import ( + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, +) def test_accurate_heuristic() -> None: @@ -401,38 +184,6 @@ def generate_database( return database -def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: - nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta), index=max_units.index - ) - end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1), index=max_units.index - ) - end_failures.where(end_failures > 0, 0, inplace=True) - for j in range(delta): - nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j), index=end_failures.index - ) - - return nb_units_max_min_down_time - - -def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: - max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units - ) - max_failures.where(max_failures > 0, 0, inplace=True) - return max_failures - - -def get_max_unit( - pmax: float, units: float, max_generating: pd.DataFrame -) -> pd.DataFrame: - max_units = max_generating / pmax - max_units.where(max_units < units, units, inplace=True) - return max_units - - def get_data() -> ( tuple[ Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int] @@ -606,7 +357,3 @@ def create_problem_fast_heuristic( ) return mingen_heuristic - - -def convert_to_integer(x: float) -> int: - return ceil(round(x, 12)) diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index d5e6a224..ad494ebe 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -13,19 +13,8 @@ import pandas as pd import pytest import numpy as np -from typing import List -from math import ceil import ortools.linear_solver.pywraplp as pywraplp -from andromede.expression import ( - literal, - param, - var, - PrinterVisitor, - visit, - ExpressionNode, -) -from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( DEMAND_MODEL, NODE_BALANCE_MODEL, @@ -33,10 +22,6 @@ UNSUPPLIED_ENERGY_MODEL, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.model import Model, float_parameter, float_variable, model -from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable, ValueType -from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -56,222 +41,12 @@ create_component, ) from andromede.study.data import AbstractDataStructure - -CONSTANT = IndexingStructure(False, False) -TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) -ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) -NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) -CONSTANT_PER_SCENARIO = IndexingStructure(False, True) - - -def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: - - THERMAL_CLUSTER_MODEL_LP = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - float_variable( - v.name, - lower_bound=v.lower_bound, - upper_bound=v.upper_bound, - structure=v.structure, - ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[c for c in initial_model.constraints.values()], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_LP - - -def get_thermal_cluster_fast_model(initial_model: Model) -> Model: - - integer_variables = [ - v.name - for v in initial_model.variables.values() - if v.data_type == ValueType.INTEGER - ] - - THERMAL_CLUSTER_MODEL_FAST = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - float_variable( - v.name, - lower_bound=( - v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) - ), - upper_bound=( - v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) - ), - structure=v.structure, - ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, integer_variables)) - ], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_FAST - - -def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: - res = False - if variable_in_expression(c.lower_bound, variables): - res = True - elif variable_in_expression(c.expression, variables): - res = True - elif variable_in_expression(c.upper_bound, variables): - res = True - return res - - -def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: - res = False - str_expr = visit(expr, PrinterVisitor()) - for v in variables: - if v in str_expr: - res = True - return res - - -def get_accurate_heuristic_model(initial_model: Model) -> Model: - - generation_variable = ["generation"] - - THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - v - for v in initial_model.variables.values() - if v.name not in generation_variable - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, generation_variable)) - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), - ) - return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC - - -def get_model_fast_heuristic(Q: int, delta: int) -> Model: - BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - ] - + [ - int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(delta) - ] - + [ - int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(delta) - ], - variables=[ - float_variable( - f"n_block_{k}", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - for k in range(Q) - ] - + [ - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - ] - + [ - int_variable( - f"t_ajust_{h}", - lower_bound=literal(0), - upper_bound=literal(1), - structure=CONSTANT_PER_SCENARIO, - ) - for h in range(delta) - ] - + [ - float_variable( - "n", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - f"Definition of n block {k} for {h}", - var(f"n_block_{k}") - >= param("n_guide") * param(f"alpha_{k}_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n ajust for {h}", - var(f"n_ajust") - >= param("n_guide") * param(f"alpha_ajust_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to block {k} for {h}", - var(f"n") - >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to ajust for {h}", - var(f"n") - >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) - == literal(1), - ) - ], - objective_operational_contribution=(var("n")).sum().expec() - + sum( - [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] - ).expec(), # type:ignore - ) - return BLOCK_MODEL_FAST_HEURISTIC +from andromede.thermal_heuristic.model import ( + get_accurate_heuristic_model, + get_model_fast_heuristic, + get_thermal_cluster_accurate_model, + get_thermal_cluster_fast_model, +) def test_milp_version() -> None: @@ -819,39 +594,3 @@ def create_problem_fast_heuristic( ) return mingen_heuristic - - -def convert_to_integer(x: float) -> int: - return ceil(round(x, 12)) - - -def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: - nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta), index=max_units.index - ) - end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1), index=max_units.index - ) - end_failures.where(end_failures > 0, 0, inplace=True) - for j in range(delta): - nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j), index=end_failures.index - ) - - return nb_units_max_min_down_time - - -def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: - max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units - ) - max_failures.where(max_failures > 0, 0, inplace=True) - return max_failures - - -def get_max_unit( - pmax: float, units: float, max_generating: pd.DataFrame -) -> pd.DataFrame: - max_units = max_generating / pmax - max_units.where(max_units < units, units, inplace=True) - return max_units From 912f0837cad09a6dfd506100a67c093f41266355 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 27 Jun 2024 17:26:08 +0200 Subject: [PATCH 30/93] Remove all functions from simple test --- src/andromede/thermal_heuristic/problem.py | 288 ++++++++++++++++ .../data_simple_case/components.yml | 104 ++++++ .../data_simple_case/components_heuristic.yml | 60 ++++ .../functional/data_simple_case/demand-ts.txt | 168 ++++++++++ .../functional/test_heuristic_simple_case.py | 307 +++--------------- 5 files changed, 667 insertions(+), 260 deletions(-) create mode 100644 src/andromede/thermal_heuristic/problem.py create mode 100644 tests/functional/data_simple_case/components.yml create mode 100644 tests/functional/data_simple_case/components_heuristic.yml create mode 100644 tests/functional/data_simple_case/demand-ts.txt diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py new file mode 100644 index 00000000..f6e8f9cf --- /dev/null +++ b/src/andromede/thermal_heuristic/problem.py @@ -0,0 +1,288 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import pandas as pd +import numpy as np +import ortools.linear_solver.pywraplp as pywraplp +from typing import List, Dict + +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + Node, + PortRef, + TimeScenarioSeriesData, + TimeSeriesData, + TimeIndex, + create_component, +) +from andromede.study.data import AbstractDataStructure +from andromede.thermal_heuristic.model import ( + get_accurate_heuristic_model, + get_model_fast_heuristic, + get_thermal_cluster_accurate_model, + get_thermal_cluster_fast_model, +) +from andromede.study.parsing import parse_yaml_components +from andromede.study.resolve_components import ( + build_data_base, + build_network, + resolve_components_and_cnx, +) +from andromede.model.library import library, Library +from pathlib import Path +from andromede.model import Model + + +def create_main_problem( + lower_bound: AbstractDataStructure, + number_hours: int, + lp_relaxation: bool, + fast: bool, + data_dir: Path, +) -> OptimizationProblem: + + thermal_model = choose_thermal_model(lp_relaxation, fast) + + lib = library( + port_types=[BALANCE_PORT_TYPE], + models=[ + NODE_BALANCE_MODEL, + DEMAND_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + thermal_model, + ], + ) + + network, database = get_network_and_database(data_dir, lib, "components.yml") + + modify_lower_bound_of_cluster( + lower_bound, database, network, THERMAL_CLUSTER_MODEL_MILP.id + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem + + +def modify_lower_bound_of_cluster( + lower_bound: AbstractDataStructure, + database: DataBase, + network: Network, + cluster_model_id: str, +) -> None: + for cluster_id in get_cluster_id(network, cluster_model_id): + database.add_data(cluster_id, "nb_units_min", lower_bound) + database.add_data(cluster_id, "min_generating", lower_bound) + + +def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: + return [c.id for c in network.components if c.model.id == cluster_model_id] + + +def get_network_and_database( + data_dir: Path, lib: Library, yml_file: str +) -> tuple[Network, DataBase]: + compo_file = data_dir / yml_file + + with compo_file.open() as c: + components_file = parse_yaml_components(c) + components_input = resolve_components_and_cnx(components_file, lib) + network = build_network(components_input) + + database = build_data_base(components_file, data_dir) + return network, database + + +def choose_thermal_model(lp_relaxation: bool, fast: bool) -> Model: + if fast: + thermal_model = get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP) + elif lp_relaxation: + thermal_model = get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP) + else: + thermal_model = THERMAL_CLUSTER_MODEL_MILP + return thermal_model + + +def create_problem_accurate_heuristic( + lower_bound: AbstractDataStructure, + number_hours: int, + data_dir: Path, +) -> OptimizationProblem: + + thermal_model = get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP) + + lib = library( + port_types=[], + models=[ + thermal_model, + ], + ) + + network, database = get_network_and_database( + data_dir, lib, "components_heuristic.yml" + ) + + modify_lower_bound_of_cluster( + lower_bound, database, network, THERMAL_CLUSTER_MODEL_MILP.id + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + scenarios = 1 + + problem = build_problem( + network, + database, + time_block, + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem + + +def get_data(data_dir: Path, yml_file: str, id_cluster: str) -> Dict[str, float]: + compo_file = data_dir / yml_file + + with compo_file.open() as c: + components_file = parse_yaml_components(c) + cluster = [c for c in components_file.components if c.id == id_cluster][0] + parameters = {p.name: p.value for p in cluster.parameters} # type:ignore + return parameters # type:ignore + + +def create_problem_fast_heuristic( + lower_bound: List[float], + number_hours: int, + thermal_cluster: str, + data_dir: Path, +) -> pd.DataFrame: + + data = get_data( + data_dir=data_dir, yml_file="components.yml", id_cluster=thermal_cluster + ) + delta = int(max(data["d_min_up"], data["d_min_down"])) + pmax = data["p_max"] + pmin = data["p_min"] + nmax = data["nb_units_max"] + pdispo = np.array(data["max_generating"]) + + number_blocks = number_hours // delta + + database = DataBase() + + database.add_data("B", "n_max", ConstantData(nmax)) + database.add_data("B", "delta", ConstantData(delta)) + + nb_on_1 = np.ceil( + np.round( + np.array(lower_bound) / pmax, + 12, + ) + ) + + database.add_data( + "B", + "n_guide", + TimeSeriesData({TimeIndex(i): nb_on_1[i] for i in range(number_hours)}), + ) + for h in range(delta): + start_ajust = number_hours - delta + h + database.add_data( + "B", + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 + for t in range(number_hours) + } + ), + ) + for k in range(number_blocks): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + "B", + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 + for t in range(number_hours) + } + ), + ) + + time_block = TimeBlock(1, [i for i in range(number_hours)]) + + block = create_component( + model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" + ) + + network = Network("test") + network.add_component(block) + + problem = build_problem( + network, + database, + time_block, + 1, + border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + n_heuristic = np.array( + output_heuristic.component("B").var("n").value[0] # type:ignore + ).reshape((number_hours, 1)) + + mingen_heuristic = pd.DataFrame( + np.minimum(n_heuristic * pmin, pdispo), + index=[i for i in range(number_hours)], + columns=[0], + ) + + return mingen_heuristic diff --git a/tests/functional/data_simple_case/components.yml b/tests/functional/data_simple_case/components.yml new file mode 100644 index 00000000..906214a7 --- /dev/null +++ b/tests/functional/data_simple_case/components.yml @@ -0,0 +1,104 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + nodes: + - id: N + model: NODE_BALANCE_MODEL + + components: + - id: D + model: FIXED_DEMAND + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: S + model: SPI + parameters: + - name: cost + type: constant + value: 0 + - id: U + model: UNSP + parameters: + - name: cost + type: constant + value: 1000 + - id: G + model: GEN + parameters: + - name: p_max + type: constant + value: 1000 + - name: p_min + type: constant + value: 700 + - name: cost + type: constant + value: 50 + - name: startup_cost + type: constant + value: 50 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 10 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: max_failure + type: constant + value: 0 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 3000 + - name: nb_units_max_min_down_time + type: constant + value: 3 + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G + port_2: balance_port + + - component1: N + port_1: balance_port + component2: U + port_2: balance_port + + - component1: N + port_1: balance_port + component2: S + port_2: balance_port + + + + + diff --git a/tests/functional/data_simple_case/components_heuristic.yml b/tests/functional/data_simple_case/components_heuristic.yml new file mode 100644 index 00000000..4d1f4fc3 --- /dev/null +++ b/tests/functional/data_simple_case/components_heuristic.yml @@ -0,0 +1,60 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + components: + - id: G + model: GEN + parameters: + - name: p_max + type: constant + value: 1000 + - name: p_min + type: constant + value: 700 + - name: cost + type: constant + value: 50 + - name: startup_cost + type: constant + value: 50 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 10 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: max_failure + type: constant + value: 0 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 3000 + - name: nb_units_max_min_down_time + type: constant + value: 3 + + + + + diff --git a/tests/functional/data_simple_case/demand-ts.txt b/tests/functional/data_simple_case/demand-ts.txt new file mode 100644 index 00000000..49b32bee --- /dev/null +++ b/tests/functional/data_simple_case/demand-ts.txt @@ -0,0 +1,168 @@ +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2050 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 \ No newline at end of file diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index ad494ebe..b335e770 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -13,39 +13,19 @@ import pandas as pd import pytest import numpy as np -import ortools.linear_solver.pywraplp as pywraplp -from andromede.libs.standard import ( - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, -) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.simulation import ( - BlockBorderManagement, OutputValues, - TimeBlock, - build_problem, ) -from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( ConstantData, - DataBase, - Network, - Node, - PortRef, TimeScenarioSeriesData, - TimeSeriesData, - TimeIndex, - create_component, ) -from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.model import ( - get_accurate_heuristic_model, - get_model_fast_heuristic, - get_thermal_cluster_accurate_model, - get_thermal_cluster_fast_model, +from pathlib import Path +from andromede.thermal_heuristic.problem import ( + create_main_problem, + create_problem_accurate_heuristic, + create_problem_fast_heuristic, ) @@ -77,8 +57,12 @@ def test_milp_version() -> None: """ number_hours = 168 - problem = create_simple_problem( - ConstantData(0), number_hours, lp_relaxation=False, fast=False + problem = create_main_problem( + ConstantData(0), + number_hours, + lp_relaxation=False, + fast=False, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem.solver.Solve() @@ -149,8 +133,12 @@ def test_lp_version() -> None: = 16 802 840,55 """ number_hours = 168 - problem = create_simple_problem( - ConstantData(0), number_hours, lp_relaxation=True, fast=False + problem = create_main_problem( + ConstantData(0), + number_hours, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem.solver.Solve() @@ -199,8 +187,12 @@ def test_accurate_heuristic() -> None: number_hours = 168 # First optimization - problem_optimization_1 = create_simple_problem( - ConstantData(0), number_hours, lp_relaxation=True, fast=False + problem_optimization_1 = create_main_problem( + ConstantData(0), + number_hours, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem_optimization_1.solver.Solve() @@ -221,7 +213,9 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem problem_accurate_heuristic = create_problem_accurate_heuristic( - n_guide, number_hours + n_guide, + number_hours, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem_accurate_heuristic.solver.Solve() @@ -241,8 +235,12 @@ def test_accurate_heuristic() -> None: assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 # Second optimization with lower bound modified - problem_optimization_2 = create_simple_problem( - nb_on_min, number_hours, lp_relaxation=True, fast=False + problem_optimization_2 = create_main_problem( + nb_on_min, + number_hours, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem_optimization_2.solver.Solve() @@ -312,11 +310,14 @@ def test_fast_heuristic() -> None: """ number_hours = 168 - pmax = 1000 # First optimization - problem_optimization_1 = create_simple_problem( - ConstantData(0), number_hours, lp_relaxation=True, fast=True + problem_optimization_1 = create_main_problem( + ConstantData(0), + number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem_optimization_1.solver.Solve() @@ -325,29 +326,12 @@ def test_fast_heuristic() -> None: # Get number of on units output_1 = OutputValues(problem_optimization_1) - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round( - np.array( - output_1.component("G") - .var("generation") - .value[0] # type:ignore - ) - / pmax, - 12, - ) - ) - ), - index=[i for i in range(number_hours)], - columns=[0], - ) - n_guide = TimeScenarioSeriesData(nb_on_1) - # Solve heuristic problem mingen_heuristic = create_problem_fast_heuristic( - n_guide, + output_1.component("G").var("generation").value[0], # type:ignore number_hours, + thermal_cluster="G", + data_dir=Path(__file__).parent / "data_simple_case", ) mingen = TimeScenarioSeriesData(mingen_heuristic) @@ -360,8 +344,12 @@ def test_fast_heuristic() -> None: ) # Second optimization with lower bound modified - problem_optimization_2 = create_simple_problem( - mingen, number_hours, lp_relaxation=True, fast=True + problem_optimization_2 = create_main_problem( + mingen, + number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent / "data_simple_case", ) status = problem_optimization_2.solver.Solve() @@ -393,204 +381,3 @@ def test_fast_heuristic() -> None: assert output.component("U").var("unsupplied_energy").value == [ [pytest.approx(0.0)] * number_hours ] - - -def create_simple_problem( - lower_bound: AbstractDataStructure, - number_hours: int, - lp_relaxation: bool, - fast: bool, -) -> OptimizationProblem: - - database = DataBase() - - database.add_data("G", "p_max", ConstantData(1000)) - database.add_data("G", "p_min", ConstantData(700)) - database.add_data("G", "cost", ConstantData(50)) - database.add_data("G", "startup_cost", ConstantData(50)) - database.add_data("G", "fixed_cost", ConstantData(1)) - database.add_data("G", "d_min_up", ConstantData(3)) - database.add_data("G", "d_min_down", ConstantData(10)) - database.add_data("G", "nb_units_min", lower_bound) - database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "max_failure", ConstantData(0)) - database.add_data("G", "min_generating", lower_bound) - database.add_data("G", "max_generating", ConstantData(3000)) - database.add_data("G", "nb_units_max_min_down_time", ConstantData(3)) - - database.add_data("U", "cost", ConstantData(1000)) - database.add_data("S", "cost", ConstantData(0)) - - demand_data = pd.DataFrame( - [[2000.0]] * number_hours, - index=[i for i in range(number_hours)], - columns=[0], - ) - demand_data.iloc[12, 0] = 2050.0 - - demand_time_scenario_series = TimeScenarioSeriesData(demand_data) - database.add_data("D", "demand", demand_time_scenario_series) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - if fast: - gen = create_component( - model=get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP), id="G" - ) - elif lp_relaxation: - gen = create_component( - model=get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP), id="G" - ) - else: - gen = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") - - network = Network("test") - network.add_node(node) - network.add_component(demand) - network.add_component(gen) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) - - return problem - - -def create_problem_accurate_heuristic( - lower_bound: AbstractDataStructure, number_hours: int -) -> OptimizationProblem: - - database = DataBase() - - database.add_data("G", "p_max", ConstantData(1000)) - database.add_data("G", "p_min", ConstantData(700)) - database.add_data("G", "cost", ConstantData(50)) - database.add_data("G", "startup_cost", ConstantData(50)) - database.add_data("G", "fixed_cost", ConstantData(1)) - database.add_data("G", "d_min_up", ConstantData(3)) - database.add_data("G", "d_min_down", ConstantData(10)) - database.add_data("G", "nb_units_min", lower_bound) - database.add_data("G", "nb_units_max", ConstantData(3)) - database.add_data("G", "max_failure", ConstantData(0)) - database.add_data("G", "min_generating", lower_bound) - database.add_data("G", "max_generating", ConstantData(3000)) - database.add_data("G", "nb_units_max_min_down_time", ConstantData(3)) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - gen = create_component( - model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), id="G" - ) - - network = Network("test") - network.add_component(gen) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) - - return problem - - -def create_problem_fast_heuristic( - lower_bound: AbstractDataStructure, number_hours: int -) -> pd.DataFrame: - - delta = 10 - pmin = 700 - pdispo = np.array(3000) - nmax = 3 - Q = 16 - - database = DataBase() - - database.add_data("B", "n_max", ConstantData(nmax)) - database.add_data("B", "delta", ConstantData(delta)) - database.add_data("B", "n_guide", lower_bound) - for h in range(delta): - start_ajust = number_hours - delta + h - database.add_data( - "B", - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 - for t in range(number_hours) - } - ), - ) - for k in range(Q): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) - database.add_data( - "B", - f"alpha_{k}_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 - for t in range(number_hours) - } - ), - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - - block = create_component(model=get_model_fast_heuristic(Q=Q, delta=delta), id="B") - - network = Network("test") - network.add_component(block) - - problem = build_problem( - network, - database, - time_block, - 1, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - n_heuristic = np.array( - output_heuristic.component("B").var("n").value[0] # type:ignore - ) - mingen_heuristic = pd.DataFrame( - np.minimum(n_heuristic * pmin, pdispo), - index=[i for i in range(number_hours)], - columns=[0], - ) - - return mingen_heuristic From 5b5c2b01333c53c4a39db09a850526af540bcee6 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 27 Jun 2024 18:49:23 +0200 Subject: [PATCH 31/93] Move functions from second complex test to src --- src/andromede/thermal_heuristic/problem.py | 127 ++++++++- .../data_second_complex_case/components.yml | 230 ++++++++++++++++ .../components_heuristic.yml | 230 ++++++++++++++++ .../test_heuristic_second_complex_case.py | 254 +----------------- .../functional/test_heuristic_simple_case.py | 31 ++- 5 files changed, 603 insertions(+), 269 deletions(-) create mode 100644 tests/functional/data_second_complex_case/components.yml create mode 100644 tests/functional/data_second_complex_case/components_heuristic.yml diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index f6e8f9cf..69bf4bd9 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -57,14 +57,22 @@ from andromede.model.library import library, Library from pathlib import Path from andromede.model import Model +from andromede.thermal_heuristic.data import ( + get_failures_for_cluster, + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, +) def create_main_problem( - lower_bound: AbstractDataStructure, + lower_bound: Dict[str, AbstractDataStructure], number_hours: int, lp_relaxation: bool, fast: bool, data_dir: Path, + week: int, + scenario: int, ) -> OptimizationProblem: thermal_model = choose_thermal_model(lp_relaxation, fast) @@ -82,8 +90,15 @@ def create_main_problem( network, database = get_network_and_database(data_dir, lib, "components.yml") - modify_lower_bound_of_cluster( - lower_bound, database, network, THERMAL_CLUSTER_MODEL_MILP.id + modify_parameters_of_cluster( + lower_bound, + database, + network, + THERMAL_CLUSTER_MODEL_MILP.id, + dir_path=data_dir, + number_hours=number_hours, + week=week, + scenario=scenario, ) time_block = TimeBlock(1, [i for i in range(number_hours)]) @@ -100,15 +115,61 @@ def create_main_problem( return problem -def modify_lower_bound_of_cluster( - lower_bound: AbstractDataStructure, +def modify_parameters_of_cluster( + lower_bound: Dict[str, AbstractDataStructure], database: DataBase, network: Network, cluster_model_id: str, + dir_path: Path, + number_hours: int, + week: int, + scenario: int, ) -> None: for cluster_id in get_cluster_id(network, cluster_model_id): - database.add_data(cluster_id, "nb_units_min", lower_bound) - database.add_data(cluster_id, "min_generating", lower_bound) + + data = get_data( + dir_path, + "components.yml", + cluster_id, + number_hours=number_hours, + week=week, + scenario=scenario, + ) + + max_generating = pd.DataFrame( + np.repeat( + data["max_generating"], + 1 if type(data["max_generating"]) is list else number_hours, + ).reshape((number_hours, 1)) + ) + max_units = get_max_unit(data["p_max"], data["nb_units_max"], max_generating) + max_failures = get_max_failures(max_units) + nb_units_max_min_down_time = get_max_unit_for_min_down_time( + int(max(data["d_min_up"], data["d_min_down"])), max_units + ) + + database.add_data(cluster_id, "nb_units_min", lower_bound[cluster_id]) + database.add_data( + cluster_id, + "nb_units_max", + TimeScenarioSeriesData(max_units), + ) + database.add_data( + cluster_id, + "max_generating", + TimeScenarioSeriesData(max_generating), + ) + database.add_data( + cluster_id, + "max_failure", + TimeScenarioSeriesData(max_failures), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time), + ) + database.add_data(cluster_id, "min_generating", lower_bound[cluster_id]) def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: @@ -140,9 +201,12 @@ def choose_thermal_model(lp_relaxation: bool, fast: bool) -> Model: def create_problem_accurate_heuristic( - lower_bound: AbstractDataStructure, + lower_bound: Dict[str, AbstractDataStructure], number_hours: int, data_dir: Path, + thermal_cluster: str, + week: int, + scenario: int, ) -> OptimizationProblem: thermal_model = get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP) @@ -158,8 +222,15 @@ def create_problem_accurate_heuristic( data_dir, lib, "components_heuristic.yml" ) - modify_lower_bound_of_cluster( - lower_bound, database, network, THERMAL_CLUSTER_MODEL_MILP.id + modify_parameters_of_cluster( + lower_bound, + database, + network, + THERMAL_CLUSTER_MODEL_MILP.id, + dir_path=data_dir, + number_hours=number_hours, + week=week, + scenario=scenario, ) time_block = TimeBlock(1, [i for i in range(number_hours)]) @@ -176,13 +247,31 @@ def create_problem_accurate_heuristic( return problem -def get_data(data_dir: Path, yml_file: str, id_cluster: str) -> Dict[str, float]: +def get_data( + data_dir: Path, + yml_file: str, + id_cluster: str, + week: int, + number_hours: int, + scenario: int, +) -> Dict: compo_file = data_dir / yml_file with compo_file.open() as c: components_file = parse_yaml_components(c) cluster = [c for c in components_file.components if c.id == id_cluster][0] - parameters = {p.name: p.value for p in cluster.parameters} # type:ignore + parameters = { + p.name: ( + p.value + if p.value is not None + else list( + np.loadtxt(data_dir / (p.timeseries + ".txt"))[ # type:ignore + week * number_hours : (week + 1) * number_hours, scenario + ] + ) + ) + for p in cluster.parameters # type:ignore + } return parameters # type:ignore @@ -191,16 +280,26 @@ def create_problem_fast_heuristic( number_hours: int, thermal_cluster: str, data_dir: Path, + week: int, + scenario: int, ) -> pd.DataFrame: data = get_data( - data_dir=data_dir, yml_file="components.yml", id_cluster=thermal_cluster + data_dir=data_dir, + yml_file="components.yml", + id_cluster=thermal_cluster, + week=week, + number_hours=number_hours, + scenario=scenario, ) delta = int(max(data["d_min_up"], data["d_min_down"])) pmax = data["p_max"] pmin = data["p_min"] nmax = data["nb_units_max"] - pdispo = np.array(data["max_generating"]) + pdispo = np.repeat( + data["max_generating"], + 1 if type(data["max_generating"]) is list else number_hours, + ).reshape((number_hours, 1)) number_blocks = number_hours // delta diff --git a/tests/functional/data_second_complex_case/components.yml b/tests/functional/data_second_complex_case/components.yml new file mode 100644 index 00000000..f39bce2f --- /dev/null +++ b/tests/functional/data_second_complex_case/components.yml @@ -0,0 +1,230 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + components: + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 64 + - name: p_min + type: constant + value: 32 + - name: cost + type: constant + value: 165 + - name: startup_cost + type: constant + value: 10 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 21 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G1 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 221 + - name: p_min + type: constant + value: 111 + - name: cost + type: constant + value: 117 + - name: startup_cost + type: constant + value: 20 + - name: fixed_cost + type: constant + value: 2 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 13 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G2 + - id: G3 + model: GEN + parameters: + - name: p_max + type: constant + value: 486 + - name: p_min + type: constant + value: 194 + - name: cost + type: constant + value: 106 + - name: startup_cost + type: constant + value: 30 + - name: fixed_cost + type: constant + value: 3 + - name: d_min_up + type: constant + value: 2 + - name: d_min_down + type: constant + value: 2 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 13 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G3 + - id: G4 + model: GEN + parameters: + - name: p_max + type: constant + value: 218 + - name: p_min + type: constant + value: 87 + - name: cost + type: constant + value: 135 + - name: startup_cost + type: constant + value: 40 + - name: fixed_cost + type: constant + value: 4 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 2 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G4 + - id: G5 + model: GEN + parameters: + - name: p_max + type: constant + value: 29 + - name: p_min + type: constant + value: 14 + - name: cost + type: constant + value: 191 + - name: startup_cost + type: constant + value: 50 + - name: fixed_cost + type: constant + value: 5 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 7 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G5 + - id: G6 + model: GEN + parameters: + - name: p_max + type: constant + value: 159 + - name: p_min + type: constant + value: 80 + - name: cost + type: constant + value: 166 + - name: startup_cost + type: constant + value: 60 + - name: fixed_cost + type: constant + value: 6 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 16 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G6 + diff --git a/tests/functional/data_second_complex_case/components_heuristic.yml b/tests/functional/data_second_complex_case/components_heuristic.yml new file mode 100644 index 00000000..f39bce2f --- /dev/null +++ b/tests/functional/data_second_complex_case/components_heuristic.yml @@ -0,0 +1,230 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + components: + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 64 + - name: p_min + type: constant + value: 32 + - name: cost + type: constant + value: 165 + - name: startup_cost + type: constant + value: 10 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 21 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G1 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 221 + - name: p_min + type: constant + value: 111 + - name: cost + type: constant + value: 117 + - name: startup_cost + type: constant + value: 20 + - name: fixed_cost + type: constant + value: 2 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 13 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G2 + - id: G3 + model: GEN + parameters: + - name: p_max + type: constant + value: 486 + - name: p_min + type: constant + value: 194 + - name: cost + type: constant + value: 106 + - name: startup_cost + type: constant + value: 30 + - name: fixed_cost + type: constant + value: 3 + - name: d_min_up + type: constant + value: 2 + - name: d_min_down + type: constant + value: 2 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 13 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G3 + - id: G4 + model: GEN + parameters: + - name: p_max + type: constant + value: 218 + - name: p_min + type: constant + value: 87 + - name: cost + type: constant + value: 135 + - name: startup_cost + type: constant + value: 40 + - name: fixed_cost + type: constant + value: 4 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 2 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G4 + - id: G5 + model: GEN + parameters: + - name: p_max + type: constant + value: 29 + - name: p_min + type: constant + value: 14 + - name: cost + type: constant + value: 191 + - name: startup_cost + type: constant + value: 50 + - name: fixed_cost + type: constant + value: 5 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 7 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G5 + - id: G6 + model: GEN + parameters: + - name: p_max + type: constant + value: 159 + - name: p_min + type: constant + value: 80 + - name: cost + type: constant + value: 166 + - name: startup_cost + type: constant + value: 60 + - name: fixed_cost + type: constant + value: 6 + - name: d_min_up + type: constant + value: 3 + - name: d_min_down + type: constant + value: 3 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 16 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G6 + diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index ef9c6880..4ab4f84b 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -13,35 +13,19 @@ import pandas as pd import pytest import numpy as np -from typing import List, Dict import ortools.linear_solver.pywraplp as pywraplp +from pathlib import Path -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.simulation import ( - BlockBorderManagement, OutputValues, - TimeBlock, - build_problem, ) -from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( ConstantData, - DataBase, - Network, TimeScenarioSeriesData, - TimeSeriesData, - TimeIndex, - create_component, ) -from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.model import ( - get_accurate_heuristic_model, - get_model_fast_heuristic, -) -from andromede.thermal_heuristic.data import ( - get_max_failures, - get_max_unit, - get_max_unit_for_min_down_time, +from andromede.thermal_heuristic.problem import ( + create_problem_accurate_heuristic, + create_problem_fast_heuristic, ) @@ -82,6 +66,7 @@ def test_accurate_heuristic() -> None: for i in range(1, 7) }, number_hours, + data_dir=Path(__file__).parent / "data_second_complex_case", thermal_cluster=cluster, week=week, scenario=scenario, @@ -120,6 +105,7 @@ def test_fast_heuristic() -> None: nb_on_1, # type:ignore number_hours, thermal_cluster=cluster, + data_dir=Path(__file__).parent / "data_second_complex_case", week=week, scenario=scenario, ) @@ -129,231 +115,3 @@ def test_fast_heuristic() -> None: ) for time_step in range(number_hours): assert mingen_heuristic.values[time_step, 0] == expected_output[time_step] - - -def generate_database( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - week: int, - scenario: int, -) -> DataBase: - - delta, pmax, pmin, cost, units = get_data() - - database = DataBase() - - for i, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): - - max_generating = get_failures_for_cluster(week, scenario, cluster, number_hours) - max_units = get_max_unit(pmax[cluster], units[cluster], max_generating) - max_failures = get_max_failures(max_units) - nb_units_max_min_down_time = get_max_unit_for_min_down_time( - delta[cluster], max_units - ) - - database.add_data(cluster, "p_max", ConstantData(pmax[cluster])) - database.add_data(cluster, "p_min", ConstantData(pmin[cluster])) - database.add_data(cluster, "cost", ConstantData(cost[cluster])) - database.add_data(cluster, "startup_cost", ConstantData(10 * (i + 1))) - database.add_data(cluster, "fixed_cost", ConstantData(i + 1)) - database.add_data(cluster, "d_min_up", ConstantData(delta[cluster])) - database.add_data(cluster, "d_min_down", ConstantData(delta[cluster])) - database.add_data(cluster, "nb_units_min", lower_bound[cluster]) - database.add_data( - cluster, - "nb_units_max", - TimeScenarioSeriesData(max_units), - ) - database.add_data( - cluster, - "max_generating", - TimeScenarioSeriesData(max_generating), - ) - database.add_data( - cluster, - "max_failure", - TimeScenarioSeriesData(max_failures), - ) - database.add_data( - cluster, - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time), - ) - database.add_data(cluster, "min_generating", lower_bound[cluster]) - - return database - - -def get_data() -> ( - tuple[ - Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int], Dict[str, int] - ] -): - delta = {"G1": 3, "G2": 3, "G3": 2, "G4": 1, "G5": 1, "G6": 3} - pmax = {"G1": 64, "G2": 221, "G3": 486, "G4": 218, "G5": 29, "G6": 159} - pmin = {"G1": 32, "G2": 111, "G3": 194, "G4": 87, "G5": 14, "G6": 80} - cost = { - "G1": 165, - "G2": 117, - "G3": 106, - "G4": 135, - "G5": 191, - "G6": 166, - } - units = {"G1": 21, "G2": 13, "G3": 13, "G4": 2, "G5": 7, "G6": 16} - return delta, pmax, pmin, cost, units - - -def get_failures_for_cluster( - week: int, scenario: int, cluster: str, number_hours: int -) -> pd.DataFrame: - input_file = np.loadtxt( - f"tests/functional/data_second_complex_case/series_{cluster}.txt", - delimiter="\t", - ) - - failures_data = pd.DataFrame( - data=input_file[ - number_hours * week : number_hours * week + number_hours, scenario - ], - index=[i for i in range(number_hours)], - columns=[0], - ) - - return failures_data - - -def create_problem_accurate_heuristic( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - thermal_cluster: str, - week: int, - scenario: int, -) -> OptimizationProblem: - - database = generate_database( - lower_bound, number_hours, week=week, scenario=scenario - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - gen = create_component( - model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), - id=thermal_cluster, - ) - - network = Network("test") - network.add_component(gen) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - return problem - - -def create_problem_fast_heuristic( - lower_bound: List[float], - number_hours: int, - thermal_cluster: str, - week: int, - scenario: int, -) -> pd.DataFrame: - - data_delta, data_pmax, data_pmin, _, data_nmax = get_data() - delta = data_delta[thermal_cluster] - pmax = data_pmax[thermal_cluster] - pmin = data_pmin[thermal_cluster] - nmax = data_nmax[thermal_cluster] - pdispo = get_failures_for_cluster(week, scenario, thermal_cluster, number_hours) - - number_blocks = number_hours // delta - - database = DataBase() - - database.add_data("B", "n_max", ConstantData(nmax)) - database.add_data("B", "delta", ConstantData(delta)) - - nb_on_1 = np.ceil( - np.round( - np.array(lower_bound) / pmax, - 12, - ) - ) - - database.add_data( - "B", - "n_guide", - TimeSeriesData({TimeIndex(i): nb_on_1[i] for i in range(number_hours)}), - ) - for h in range(delta): - start_ajust = number_hours - delta + h - database.add_data( - "B", - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 - for t in range(number_hours) - } - ), - ) - for k in range(number_blocks): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) - database.add_data( - "B", - f"alpha_{k}_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 - for t in range(number_hours) - } - ), - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - - block = create_component( - model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" - ) - - network = Network("test") - network.add_component(block) - - problem = build_problem( - network, - database, - time_block, - 1, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - n_heuristic = np.array( - output_heuristic.component("B").var("n").value[0] # type:ignore - ).reshape((168, 1)) - - mingen_heuristic = pd.DataFrame( - np.minimum(n_heuristic * pmin, pdispo), - index=[i for i in range(number_hours)], - columns=[0], - ) - - return mingen_heuristic diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index b335e770..f892e185 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -58,11 +58,13 @@ def test_milp_version() -> None: number_hours = 168 problem = create_main_problem( - ConstantData(0), + {"G": ConstantData(0)}, number_hours, lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem.solver.Solve() @@ -134,11 +136,13 @@ def test_lp_version() -> None: """ number_hours = 168 problem = create_main_problem( - ConstantData(0), + {"G": ConstantData(0)}, number_hours, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem.solver.Solve() @@ -188,11 +192,13 @@ def test_accurate_heuristic() -> None: # First optimization problem_optimization_1 = create_main_problem( - ConstantData(0), + {"G": ConstantData(0)}, number_hours, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem_optimization_1.solver.Solve() @@ -213,9 +219,12 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem problem_accurate_heuristic = create_problem_accurate_heuristic( - n_guide, + {"G": n_guide}, number_hours, data_dir=Path(__file__).parent / "data_simple_case", + thermal_cluster="G", + week=0, + scenario=0, ) status = problem_accurate_heuristic.solver.Solve() @@ -236,11 +245,13 @@ def test_accurate_heuristic() -> None: # Second optimization with lower bound modified problem_optimization_2 = create_main_problem( - nb_on_min, + {"G": nb_on_min}, number_hours, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem_optimization_2.solver.Solve() @@ -313,11 +324,13 @@ def test_fast_heuristic() -> None: # First optimization problem_optimization_1 = create_main_problem( - ConstantData(0), + {"G": ConstantData(0)}, number_hours, lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem_optimization_1.solver.Solve() @@ -332,6 +345,8 @@ def test_fast_heuristic() -> None: number_hours, thermal_cluster="G", data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) mingen = TimeScenarioSeriesData(mingen_heuristic) @@ -345,11 +360,13 @@ def test_fast_heuristic() -> None: # Second optimization with lower bound modified problem_optimization_2 = create_main_problem( - mingen, + {"G": mingen}, number_hours, lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data_simple_case", + week=0, + scenario=0, ) status = problem_optimization_2.solver.Solve() From 412e62c2f761af3e811d4904e6a4fa7a6e77b518 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 12:09:42 +0200 Subject: [PATCH 32/93] Remove functions from second test and filter ts on scenarios and timesteps --- src/andromede/study/data.py | 15 +- src/andromede/study/resolve_components.py | 21 +- src/andromede/thermal_heuristic/problem.py | 29 +- .../data_complex_case/components.yml | 181 + .../components_heuristic.yml | 121 + .../data_complex_case/demand-ts.txt | 336 + .../data_complex_case/series_G1.txt | 8760 +++++++++++++++++ .../data_complex_case/series_G2.txt | 336 + .../data_complex_case/series_G3.txt | 8760 +++++++++++++++++ .../functional/test_heuristic_complex_case.py | 401 +- 10 files changed, 18571 insertions(+), 389 deletions(-) create mode 100644 tests/functional/data_complex_case/components.yml create mode 100644 tests/functional/data_complex_case/components_heuristic.yml create mode 100644 tests/functional/data_complex_case/demand-ts.txt create mode 100644 tests/functional/data_complex_case/series_G1.txt create mode 100644 tests/functional/data_complex_case/series_G2.txt create mode 100644 tests/functional/data_complex_case/series_G3.txt diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index 50d4acda..b37596ca 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -13,7 +13,7 @@ from abc import ABC, abstractmethod from dataclasses import dataclass from pathlib import Path -from typing import Dict, Optional +from typing import Dict, Optional, List import pandas as pd @@ -116,6 +116,19 @@ def load_ts_from_txt( raise Exception(f"An error has arrived when processing '{ts_path}'") +def filter_ts_on_scenarios_and_timesteps( + raw_ts: pd.DataFrame, + scenarios: Optional[List[int]], + timesteps: Optional[List[int]], +) -> pd.DataFrame: + filtered_ts = raw_ts + if scenarios is not None: + filtered_ts = filtered_ts.filter(items=scenarios, axis=1) + if timesteps is not None: + filtered_ts = filtered_ts.filter(items=timesteps, axis=0) + return filtered_ts.reset_index(drop=True) + + @dataclass(frozen=True) class TimeScenarioSeriesData(AbstractDataStructure): """ diff --git a/src/andromede/study/resolve_components.py b/src/andromede/study/resolve_components.py index d6650e78..b641dce5 100644 --- a/src/andromede/study/resolve_components.py +++ b/src/andromede/study/resolve_components.py @@ -31,6 +31,7 @@ TimeScenarioIndex, TimeScenarioSeriesData, load_ts_from_txt, + filter_ts_on_scenarios_and_timesteps, ) from andromede.study.parsing import ( InputComponent, @@ -142,13 +143,21 @@ def build_network(comp_network: NetworkComponents) -> Network: def build_data_base( - input_comp: InputComponents, timeseries_dir: Optional[Path] + input_comp: InputComponents, + timeseries_dir: Optional[Path], + scenarios: Optional[List[int]] = None, + timesteps: Optional[List[int]] = None, ) -> DataBase: database = DataBase() for comp in input_comp.components: for param in comp.parameters or []: param_value = _evaluate_param_type( - param.type, param.value, param.timeseries, timeseries_dir + param.type, + param.value, + param.timeseries, + timeseries_dir, + scenarios, + timesteps, ) database.add_data(comp.id, param.name, param_value) @@ -160,11 +169,17 @@ def _evaluate_param_type( param_value: Optional[float], timeseries_name: Optional[str], timeseries_dir: Optional[Path], + scenarios: Optional[List[int]], + timesteps: Optional[List[int]], ) -> AbstractDataStructure: if param_type == "constant" and param_value is not None: return ConstantData(float(param_value)) elif param_type == "timeseries": - return TimeScenarioSeriesData(load_ts_from_txt(timeseries_name, timeseries_dir)) + return TimeScenarioSeriesData( + filter_ts_on_scenarios_and_timesteps( + load_ts_from_txt(timeseries_name, timeseries_dir), scenarios, timesteps + ) + ) raise ValueError(f"Data should be either constant or timeseries ") diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 69bf4bd9..a141b36b 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -13,7 +13,7 @@ import pandas as pd import numpy as np import ortools.linear_solver.pywraplp as pywraplp -from typing import List, Dict +from typing import List, Dict, Optional from andromede.libs.standard import ( BALANCE_PORT_TYPE, @@ -88,7 +88,13 @@ def create_main_problem( ], ) - network, database = get_network_and_database(data_dir, lib, "components.yml") + network, database = get_network_and_database( + data_dir, + lib, + "components.yml", + scenarios=[scenario], + timesteps=list(range(week * number_hours, (week + 1) * number_hours)), + ) modify_parameters_of_cluster( lower_bound, @@ -110,6 +116,7 @@ def create_main_problem( time_block, scenarios, border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", ) return problem @@ -177,7 +184,11 @@ def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: def get_network_and_database( - data_dir: Path, lib: Library, yml_file: str + data_dir: Path, + lib: Library, + yml_file: str, + scenarios: Optional[List[int]], + timesteps: Optional[List[int]], ) -> tuple[Network, DataBase]: compo_file = data_dir / yml_file @@ -186,7 +197,9 @@ def get_network_and_database( components_input = resolve_components_and_cnx(components_file, lib) network = build_network(components_input) - database = build_data_base(components_file, data_dir) + database = build_data_base( + components_file, data_dir, scenarios=scenarios, timesteps=timesteps + ) return network, database @@ -219,7 +232,11 @@ def create_problem_accurate_heuristic( ) network, database = get_network_and_database( - data_dir, lib, "components_heuristic.yml" + data_dir, + lib, + "components_heuristic.yml", + scenarios=[scenario], + timesteps=list(range(week * number_hours, (week + 1) * number_hours)), ) modify_parameters_of_cluster( @@ -242,6 +259,7 @@ def create_problem_accurate_heuristic( time_block, scenarios, border_management=BlockBorderManagement.CYCLE, + solver_id="XPRESS", ) return problem @@ -367,6 +385,7 @@ def create_problem_fast_heuristic( parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) problem.solver.EnableOutput() status = problem.solver.Solve(parameters) diff --git a/tests/functional/data_complex_case/components.yml b/tests/functional/data_complex_case/components.yml new file mode 100644 index 00000000..1b389ee8 --- /dev/null +++ b/tests/functional/data_complex_case/components.yml @@ -0,0 +1,181 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + nodes: + - id: N + model: NODE_BALANCE_MODEL + + components: + - id: D + model: FIXED_DEMAND + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: S + model: SPI + parameters: + - name: cost + type: constant + value: 1 + - id: U + model: UNSP + parameters: + - name: cost + type: constant + value: 10000 + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 410 + - name: p_min + type: constant + value: 180 + - name: cost + type: constant + value: 96 + - name: startup_cost + type: constant + value: 100500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 8 + - name: d_min_down + type: constant + value: 8 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 1 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G1 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 90 + - name: p_min + type: constant + value: 60 + - name: cost + type: constant + value: 137 + - name: startup_cost + type: constant + value: 24500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 11 + - name: d_min_down + type: constant + value: 11 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G2 + - id: G3 + model: GEN + parameters: + - name: p_max + type: constant + value: 275 + - name: p_min + type: constant + value: 150 + - name: cost + type: constant + value: 107 + - name: startup_cost + type: constant + value: 69500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 9 + - name: d_min_down + type: constant + value: 9 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 4 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G3 + + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G1 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G2 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G3 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: U + port_2: balance_port + + - component1: N + port_1: balance_port + component2: S + port_2: balance_port + + + + + diff --git a/tests/functional/data_complex_case/components_heuristic.yml b/tests/functional/data_complex_case/components_heuristic.yml new file mode 100644 index 00000000..c6c7d03f --- /dev/null +++ b/tests/functional/data_complex_case/components_heuristic.yml @@ -0,0 +1,121 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + components: + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 410 + - name: p_min + type: constant + value: 180 + - name: cost + type: constant + value: 96 + - name: startup_cost + type: constant + value: 100500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 8 + - name: d_min_down + type: constant + value: 8 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 1 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G1 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 90 + - name: p_min + type: constant + value: 60 + - name: cost + type: constant + value: 137 + - name: startup_cost + type: constant + value: 24500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 11 + - name: d_min_down + type: constant + value: 11 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G2 + - id: G3 + model: GEN + parameters: + - name: p_max + type: constant + value: 275 + - name: p_min + type: constant + value: 150 + - name: cost + type: constant + value: 107 + - name: startup_cost + type: constant + value: 69500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 9 + - name: d_min_down + type: constant + value: 9 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 4 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G3 \ No newline at end of file diff --git a/tests/functional/data_complex_case/demand-ts.txt b/tests/functional/data_complex_case/demand-ts.txt new file mode 100644 index 00000000..d8598679 --- /dev/null +++ b/tests/functional/data_complex_case/demand-ts.txt @@ -0,0 +1,336 @@ +372 805 699 835 748 610 760 670 +299 735 629 761 670 555 685 597 +268 695 611 722 630 519 650 549 +248 671 601 700 614 486 638 524 +253 675 612 702 625 486 649 526 +292 713 652 736 663 517 696 564 +372 802 736 825 749 600 786 657 +498 921 839 973 892 734 902 799 +612 1014 911 1093 1011 857 992 916 +685 1050 916 1147 1070 912 1016 972 +739 1044 893 1150 1087 935 997 995 +749 1033 866 1151 1086 923 981 990 +730 1025 855 1148 1078 906 967 973 +718 1052 875 1172 1094 912 994 991 +700 1072 885 1192 1109 899 1010 1007 +701 1099 936 1210 1117 911 1046 1028 +754 1154 1015 1263 1164 964 1109 1072 +811 1240 1121 1323 1216 1033 1201 1131 +771 1272 1147 1307 1188 1023 1224 1126 +719 1263 1117 1284 1159 983 1201 1102 +687 1220 1043 1264 1143 921 1140 1063 +666 1164 964 1232 1114 858 1074 1015 +622 1075 874 1138 1030 764 989 925 +531 957 749 1015 910 627 878 808 +502 836 621 931 767 488 787 708 +490 766 542 848 696 409 716 616 +510 731 486 803 654 364 678 564 +504 712 453 775 619 335 659 541 +500 715 444 772 603 335 663 551 +526 752 480 797 623 375 704 598 +595 841 568 876 711 465 789 698 +698 952 672 1022 843 585 892 846 +772 1034 748 1144 940 678 971 964 +803 1058 775 1203 976 718 989 1007 +796 1042 765 1209 966 744 967 993 +783 1031 740 1211 946 773 940 963 +757 1025 724 1208 927 788 914 925 +750 1054 756 1225 940 804 933 925 +747 1072 783 1230 956 820 952 932 +736 1091 855 1236 974 811 998 943 +769 1149 942 1284 1026 855 1056 993 +815 1229 1036 1335 1075 959 1140 1064 +792 1245 1082 1306 1039 995 1151 1075 +770 1229 1078 1277 992 992 1111 1066 +763 1187 1020 1260 931 970 1032 1049 +751 1128 956 1230 859 932 943 1014 +683 1030 873 1135 771 837 838 945 +592 914 742 1004 661 764 703 843 +449 741 546 831 497 687 526 704 +403 651 423 723 420 598 427 614 +400 605 362 667 371 545 376 572 +400 577 350 641 348 515 358 560 +445 594 373 660 369 525 383 589 +560 698 465 745 464 607 484 682 +752 891 638 919 656 787 674 862 +929 1065 782 1113 836 958 848 1044 +1037 1166 869 1240 950 1028 949 1155 +1053 1182 889 1283 958 1036 962 1180 +1023 1159 893 1265 959 1025 952 1156 +1012 1134 869 1247 923 1003 941 1144 +1008 1119 832 1227 898 975 929 1135 +1061 1175 871 1255 959 993 965 1185 +1075 1206 867 1285 982 986 958 1211 +1103 1226 861 1307 1004 945 943 1246 +1152 1272 892 1347 1046 970 983 1300 +1241 1370 967 1419 1113 1043 1064 1389 +1259 1391 966 1414 1097 1063 1058 1406 +1228 1356 919 1404 1043 1061 1015 1385 +1146 1267 835 1374 952 1019 944 1320 +1035 1153 726 1300 846 926 855 1222 +905 1043 616 1172 762 861 778 1094 +750 889 470 1005 597 691 655 930 +620 718 336 851 427 600 504 818 +524 621 247 748 334 502 451 725 +467 581 200 697 287 464 437 680 +444 565 182 674 261 449 440 667 +459 579 201 690 276 474 474 693 +557 667 291 775 379 575 573 794 +733 850 470 953 571 763 754 979 +869 1029 656 1145 761 937 943 1144 +943 1140 779 1270 903 999 1079 1237 +944 1165 827 1295 943 994 1130 1249 +932 1144 840 1264 940 963 1124 1224 +915 1118 864 1256 947 939 1110 1201 +899 1088 866 1248 933 929 1095 1184 +953 1119 942 1287 976 978 1131 1235 +971 1120 969 1298 1028 999 1142 1257 +1001 1129 1006 1307 1050 1030 1132 1293 +1061 1166 1089 1346 1124 1111 1152 1351 +1169 1247 1198 1417 1232 1213 1189 1450 +1205 1239 1223 1415 1215 1236 1174 1483 +1171 1185 1199 1381 1125 1223 1150 1461 +1083 1103 1136 1325 996 1188 1084 1379 +971 1004 1049 1231 859 1121 981 1261 +872 886 931 1075 715 1043 867 1128 +728 722 783 941 592 890 705 963 +622 574 701 849 571 759 547 816 +543 515 609 752 522 674 451 726 +513 511 559 710 498 627 388 680 +509 524 540 696 492 604 368 662 +537 569 553 698 515 615 401 683 +636 664 628 763 613 702 510 779 +818 836 791 932 803 882 694 966 +978 1015 978 1131 997 1041 861 1132 +1082 1138 1107 1272 1116 1141 976 1228 +1110 1184 1159 1337 1146 1168 1016 1242 +1100 1187 1157 1336 1122 1158 1000 1218 +1085 1179 1165 1306 1104 1139 984 1199 +1072 1169 1159 1253 1095 1126 956 1183 +1125 1213 1192 1271 1144 1165 990 1233 +1144 1218 1190 1253 1163 1174 1006 1255 +1154 1218 1177 1227 1183 1171 1045 1287 +1203 1267 1208 1280 1226 1201 1110 1344 +1293 1341 1259 1386 1303 1294 1202 1443 +1315 1331 1197 1382 1307 1302 1204 1480 +1284 1295 1123 1350 1271 1254 1156 1460 +1201 1235 1063 1302 1209 1173 1070 1375 +1078 1143 991 1236 1109 1062 963 1253 +950 1030 870 1125 991 929 848 1122 +761 868 715 977 816 749 689 959 +552 665 600 847 752 543 531 802 +445 572 499 757 652 445 426 711 +382 509 453 714 595 401 366 663 +331 473 437 692 569 377 338 648 +317 487 457 702 584 390 339 667 +376 563 535 753 643 467 404 744 +530 715 699 885 778 618 553 892 +704 894 891 1084 939 792 711 1051 +828 1033 1037 1256 1062 919 822 1165 +863 1092 1107 1357 1111 982 858 1192 +845 1097 1106 1390 1118 1030 861 1168 +809 1096 1098 1398 1123 1038 837 1153 +783 1089 1099 1385 1115 1080 816 1119 +827 1134 1126 1415 1148 1178 849 1135 +836 1141 1131 1416 1142 1216 843 1135 +857 1148 1124 1406 1128 1230 847 1132 +915 1215 1190 1462 1176 1301 897 1171 +1002 1294 1268 1519 1248 1389 984 1253 +985 1253 1237 1432 1215 1359 962 1227 +932 1186 1194 1362 1163 1307 899 1151 +869 1120 1147 1344 1118 1254 817 1060 +812 1049 1083 1319 1069 1179 734 964 +730 943 969 1206 1009 1074 637 854 +650 786 811 1047 877 918 499 703 +738 632 679 896 706 795 358 504 +593 539 585 790 603 690 269 437 +461 494 535 734 543 634 226 443 +418 471 511 707 504 601 209 452 +418 472 515 708 501 597 215 469 +461 516 559 742 545 634 266 525 +550 617 669 846 649 731 368 641 +735 764 847 1047 831 896 511 826 +904 888 1001 1226 994 1031 645 987 +975 932 1078 1316 1071 1090 707 1063 +928 915 1079 1318 1048 1091 704 1085 +886 895 1075 1304 1036 1063 686 1074 +856 888 1070 1289 1020 1019 661 1045 +906 921 1101 1321 1043 1018 683 1067 +934 944 1117 1346 1050 1006 693 1081 +959 989 1136 1380 1065 988 731 1101 +1054 1086 1207 1467 1147 1025 838 1196 +1169 1204 1299 1556 1230 1092 969 1313 +1184 1212 1300 1519 1209 1069 975 1314 +1160 1161 1268 1469 1168 1024 935 1262 +1104 1080 1221 1444 1135 975 891 1180 +1039 996 1160 1413 1089 918 853 1089 +948 887 1040 1292 970 811 773 965 +785 741 877 1124 833 652 649 803 +569 595 731 897 708 517 568 668 +492 486 629 784 622 406 464 555 +461 433 572 725 587 348 400 481 +450 410 553 695 572 320 372 440 +477 434 577 700 590 340 378 433 +582 538 667 764 669 426 436 509 +774 727 835 923 832 605 594 681 +953 929 1014 1130 1018 822 805 864 +1073 1066 1132 1277 1143 966 957 980 +1115 1119 1167 1335 1180 1020 1019 1008 +1090 1126 1147 1335 1171 1023 1028 1042 +1094 1132 1129 1328 1156 1001 1036 1034 +1095 1121 1093 1314 1139 988 1046 1017 +1153 1161 1130 1353 1175 1013 1100 1058 +1188 1160 1164 1373 1197 1029 1095 1089 +1231 1149 1204 1375 1221 1051 1081 1094 +1305 1194 1261 1424 1277 1123 1127 1156 +1409 1269 1334 1493 1350 1221 1199 1246 +1421 1248 1325 1465 1362 1236 1158 1252 +1383 1194 1271 1433 1352 1233 1097 1236 +1304 1117 1174 1411 1306 1203 1037 1197 +1201 1020 1040 1355 1218 1139 964 1120 +1069 915 910 1220 1084 1024 852 986 +900 764 755 1044 914 867 697 803 +870 648 632 923 853 784 601 640 +761 549 536 821 765 689 512 542 +705 485 477 764 721 640 455 488 +683 450 460 738 707 623 430 467 +696 461 483 750 730 647 446 491 +777 548 588 823 824 740 524 585 +945 726 783 994 1006 921 694 769 +1139 905 987 1189 1183 1096 878 968 +1285 1025 1132 1330 1292 1211 1009 1108 +1345 1062 1192 1383 1317 1242 1072 1162 +1342 1056 1201 1378 1300 1214 1091 1153 +1328 1057 1201 1364 1286 1192 1083 1142 +1312 1051 1191 1357 1276 1171 1068 1135 +1333 1100 1248 1412 1322 1207 1114 1185 +1301 1121 1253 1432 1328 1215 1111 1200 +1276 1135 1253 1446 1329 1218 1108 1205 +1295 1191 1316 1505 1378 1268 1152 1256 +1325 1274 1396 1579 1465 1336 1223 1326 +1291 1285 1376 1543 1478 1334 1201 1309 +1239 1265 1325 1502 1445 1302 1151 1277 +1175 1211 1255 1460 1363 1241 1081 1227 +1096 1121 1159 1377 1247 1146 993 1146 +975 993 1042 1236 1115 1017 868 1024 +811 837 883 1066 941 844 714 873 +620 730 728 869 745 698 598 706 +549 646 635 763 647 597 523 618 +548 605 583 705 589 540 488 571 +570 591 550 671 554 512 481 551 +612 611 551 680 561 518 504 566 +706 698 619 743 635 606 592 654 +890 867 773 908 798 798 769 827 +1097 1026 947 1116 983 961 953 987 +1254 1123 1061 1265 1100 1053 1082 1080 +1321 1147 1095 1329 1135 1072 1127 1090 +1337 1123 1081 1323 1086 1064 1140 1063 +1324 1105 1056 1315 1054 1060 1142 1045 +1294 1084 1045 1308 1020 1044 1134 1033 +1335 1119 1095 1354 1071 1078 1180 1086 +1353 1130 1097 1374 1102 1073 1192 1108 +1348 1147 1083 1384 1140 1071 1190 1138 +1395 1206 1117 1425 1204 1130 1240 1204 +1467 1291 1179 1474 1282 1232 1314 1298 +1450 1322 1161 1438 1312 1257 1312 1325 +1415 1318 1127 1396 1309 1234 1288 1299 +1367 1254 1080 1359 1267 1161 1238 1223 +1287 1148 1007 1286 1183 1062 1157 1117 +1156 1023 907 1142 1049 975 1037 993 +982 866 732 956 882 828 884 833 +761 741 593 763 725 609 747 699 +668 658 499 651 645 515 656 616 +614 615 457 596 611 486 609 578 +584 600 437 570 607 481 592 568 +589 624 444 583 636 503 613 593 +669 729 516 656 728 583 703 690 +836 920 700 826 899 747 882 877 +1012 1084 924 1015 1067 945 1072 1046 +1125 1173 1066 1145 1181 1078 1196 1146 +1161 1187 1110 1199 1208 1122 1235 1162 +1148 1162 1113 1211 1177 1127 1220 1137 +1127 1135 1105 1220 1161 1128 1207 1119 +1102 1109 1096 1214 1148 1118 1196 1108 +1112 1148 1140 1266 1203 1143 1241 1158 +1089 1154 1148 1300 1234 1122 1249 1172 +1063 1160 1169 1327 1254 1081 1253 1188 +1088 1221 1231 1391 1308 1113 1308 1249 +1141 1318 1318 1457 1378 1189 1385 1345 +1112 1354 1317 1438 1374 1187 1381 1376 +1061 1338 1297 1408 1325 1168 1347 1351 +1004 1263 1254 1376 1240 1129 1284 1267 +926 1153 1179 1307 1128 1050 1186 1151 +815 1033 1061 1181 1014 920 1051 1032 +669 883 904 1005 841 789 877 877 +475 711 835 810 727 676 723 741 +389 627 748 705 652 559 629 652 +341 586 702 652 606 463 583 606 +333 570 684 629 579 425 559 587 +359 591 703 646 601 453 569 610 +448 685 795 727 681 542 652 709 +620 864 981 904 842 718 827 889 +806 1031 1171 1104 1017 948 1016 1065 +937 1126 1291 1239 1138 1133 1132 1173 +987 1136 1317 1279 1177 1232 1171 1194 +1016 1108 1293 1257 1174 1240 1162 1168 +1022 1084 1279 1257 1180 1281 1158 1134 +1009 1068 1264 1262 1174 1295 1151 1108 +1045 1118 1311 1320 1201 1353 1196 1153 +1070 1136 1333 1356 1204 1377 1208 1169 +1102 1154 1351 1378 1210 1371 1215 1185 +1198 1212 1415 1443 1268 1411 1270 1252 +1289 1304 1497 1507 1358 1460 1349 1349 +1295 1335 1503 1475 1382 1390 1361 1383 +1270 1319 1477 1426 1373 1327 1343 1360 +1210 1244 1418 1377 1319 1291 1290 1282 +1112 1132 1324 1293 1229 1242 1199 1168 +984 1008 1198 1154 1106 1100 1075 1041 +843 851 1035 980 941 921 918 883 +793 730 865 928 776 806 858 783 +693 638 753 827 670 704 760 691 +642 591 684 776 610 628 710 644 +611 572 637 753 577 586 684 623 +615 584 625 763 585 579 692 638 +678 652 662 827 645 614 749 715 +827 794 791 975 778 752 883 869 +1009 939 987 1147 949 952 1052 1031 +1138 1037 1138 1270 1070 1122 1175 1142 +1181 1065 1212 1315 1109 1211 1218 1171 +1185 1044 1218 1307 1093 1228 1209 1153 +1164 1023 1221 1319 1083 1238 1202 1137 +1137 1006 1220 1322 1071 1252 1191 1123 +1159 1044 1259 1377 1087 1295 1229 1153 +1162 1059 1286 1407 1084 1287 1250 1159 +1159 1085 1297 1429 1092 1274 1271 1180 +1225 1165 1358 1515 1155 1333 1346 1258 +1316 1261 1419 1605 1219 1394 1425 1345 +1309 1267 1382 1590 1188 1322 1421 1325 +1277 1220 1353 1551 1148 1251 1390 1259 +1232 1134 1341 1495 1102 1211 1345 1178 +1160 1035 1296 1413 1025 1167 1278 1095 +1047 914 1161 1283 908 1065 1159 994 +887 753 1000 1116 745 932 999 844 +775 599 791 944 481 709 899 701 +677 499 693 832 385 613 799 614 +624 443 635 773 333 567 745 566 +593 416 601 735 309 539 714 541 +595 426 603 732 321 535 712 545 +643 483 654 774 377 565 749 594 +753 605 754 885 482 659 842 700 +908 775 894 1060 625 847 997 858 +1044 924 974 1213 750 1012 1130 993 +1105 999 1016 1288 797 1096 1192 1044 +1103 1000 1012 1296 773 1108 1184 1021 +1093 1006 970 1301 731 1103 1167 999 +1083 1007 913 1296 678 1083 1146 982 +1120 1054 899 1325 700 1089 1166 1011 +1139 1065 902 1340 720 1079 1190 1035 +1163 1048 945 1358 755 1078 1224 1074 +1261 1126 1051 1444 848 1154 1322 1184 +1378 1231 1148 1532 958 1234 1420 1308 +1383 1224 1146 1506 959 1188 1437 1337 +1340 1174 1094 1456 902 1143 1422 1309 +1284 1090 1009 1407 820 1126 1375 1235 +1229 1000 930 1348 741 1103 1312 1156 +1123 919 811 1220 636 1009 1177 1041 +977 766 648 1050 490 853 1019 882 diff --git a/tests/functional/data_complex_case/series_G1.txt b/tests/functional/data_complex_case/series_G1.txt new file mode 100644 index 00000000..3fd4a35f --- /dev/null +++ b/tests/functional/data_complex_case/series_G1.txt @@ -0,0 +1,8760 @@ +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 0 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 0 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 0 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 0 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 0 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 0 0 410 410 410 410 410 410 0 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 0 410 0 410 0 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 0 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +0 0 410 410 410 0 410 410 410 410 0 410 410 410 410 0 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 0 0 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 0 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 0 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 0 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 0 410 0 410 410 410 410 410 410 410 0 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 0 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 0 410 0 0 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 0 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 0 410 0 410 0 410 410 0 410 410 410 0 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 0 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 0 410 0 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 0 0 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 0 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 0 0 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 0 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 0 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 0 410 0 410 0 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 0 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +0 410 0 410 410 410 410 410 0 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 410 410 410 410 0 410 410 410 410 410 410 0 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 410 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 0 410 410 410 410 410 410 410 0 410 410 0 410 410 410 410 410 410 0 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 +410 410 410 0 410 0 410 410 410 410 410 410 410 410 410 410 410 410 0 410 diff --git a/tests/functional/data_complex_case/series_G2.txt b/tests/functional/data_complex_case/series_G2.txt new file mode 100644 index 00000000..c52da7ed --- /dev/null +++ b/tests/functional/data_complex_case/series_G2.txt @@ -0,0 +1,336 @@ +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 +270 270 \ No newline at end of file diff --git a/tests/functional/data_complex_case/series_G3.txt b/tests/functional/data_complex_case/series_G3.txt new file mode 100644 index 00000000..d5278e78 --- /dev/null +++ b/tests/functional/data_complex_case/series_G3.txt @@ -0,0 +1,8760 @@ +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 0 0 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 275 275 275 0 0 0 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 0 275 0 0 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +0 1100 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 0 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 0 0 275 275 0 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 0 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 0 275 275 275 0 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 0 275 0 275 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 0 0 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 0 275 0 275 275 275 0 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 0 0 0 275 275 275 275 275 275 0 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 0 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 0 275 275 275 275 275 0 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 0 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +0 1100 275 0 275 275 0 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +0 0 275 0 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 0 275 0 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 0 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 0 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 0 275 275 275 0 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 0 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 0 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +0 1100 275 275 275 0 275 275 0 275 275 275 275 275 275 0 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 0 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 0 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 0 0 0 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 0 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 0 275 275 275 0 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 0 275 275 0 0 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 0 0 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 0 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 275 275 275 0 275 275 0 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 0 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 0 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 0 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 0 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 0 275 275 275 275 275 0 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +1100 1100 275 275 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 0 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 0 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 0 275 275 275 275 0 275 275 0 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 0 275 275 275 0 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +0 1100 275 275 0 275 275 275 275 275 275 275 275 275 275 275 0 0 275 275 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 0 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 0 275 275 275 0 275 275 275 275 275 275 0 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 0 275 275 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 0 275 275 275 275 275 0 0 275 275 275 0 275 275 275 275 275 275 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 1100 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 +1100 0 275 275 275 275 275 275 275 275 275 275 275 275 275 275 275 0 275 275 diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 54b5a710..47190cbb 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -13,47 +13,28 @@ import pandas as pd import pytest import numpy as np -from typing import List, Dict +from typing import Dict import ortools.linear_solver.pywraplp as pywraplp +from pathlib import Path -from andromede.libs.standard import ( - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, -) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.simulation import ( - BlockBorderManagement, OutputValues, - TimeBlock, - build_problem, ) -from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( ConstantData, - DataBase, - Network, - Node, - PortRef, TimeScenarioSeriesData, TimeSeriesData, TimeIndex, - create_component, ) from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.model import ( - get_accurate_heuristic_model, - get_model_fast_heuristic, - get_thermal_cluster_accurate_model, - get_thermal_cluster_fast_model, -) from andromede.thermal_heuristic.data import ( - get_max_failures, - get_max_unit, - get_max_unit_for_min_down_time, check_output_values, ) +from andromede.thermal_heuristic.problem import ( + create_main_problem, + create_problem_accurate_heuristic, + create_problem_fast_heuristic, +) def test_milp_version() -> None: @@ -63,13 +44,14 @@ def test_milp_version() -> None: for scenario in range(scenarios): for week in range(2): - problem = create_complex_problem( + problem = create_main_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, number_hours, lp_relaxation=False, fast=False, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) parameters = pywraplp.MPSolverParameters() @@ -105,13 +87,14 @@ def test_accurate_heuristic() -> None: for scenario in range(scenarios): for week in range(2): # First optimization - problem_optimization_1 = create_complex_problem( + problem_optimization_1 = create_main_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, number_hours, lp_relaxation=True, fast=False, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) status = problem_optimization_1.solver.Solve(parameters) @@ -144,6 +127,7 @@ def test_accurate_heuristic() -> None: thermal_cluster=g, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) status = problem_accurate_heuristic.solver.Solve(parameters) @@ -162,13 +146,14 @@ def test_accurate_heuristic() -> None: nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( + problem_optimization_2 = create_main_problem( nb_on_min, number_hours, lp_relaxation=True, fast=False, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) status = problem_optimization_2.solver.Solve(parameters) @@ -207,13 +192,14 @@ def test_fast_heuristic() -> None: for scenario in range(scenarios): for week in range(weeks): # First optimization - problem_optimization_1 = create_complex_problem( + problem_optimization_1 = create_main_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, number_hours, lp_relaxation=True, fast=True, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) status = problem_optimization_1.solver.Solve(parameters) @@ -225,39 +211,27 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: # - pmax = {"G1": 410, "G2": 90, "G3": 275}[g] - nb_on_1 = np.ceil( - np.round( - np.array( - output_1.component(g) - .var("generation") - .value[0] # type:ignore - ) - / pmax, - 12, - ) - ) - n_guide = TimeSeriesData( - {TimeIndex(i): nb_on_1[i] for i in range(number_hours)} - ) + mingen_heuristic = create_problem_fast_heuristic( - n_guide, + output_1.component(g).var("generation").value[0], # type:ignore number_hours, thermal_cluster=g, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) mingen[g] = TimeScenarioSeriesData(mingen_heuristic) # Second optimization with lower bound modified - problem_optimization_2 = create_complex_problem( + problem_optimization_2 = create_main_problem( mingen, number_hours, lp_relaxation=True, fast=True, week=week, scenario=scenario, + data_dir=Path(__file__).parent / "data_complex_case", ) status = problem_optimization_2.solver.Solve(parameters) @@ -278,336 +252,3 @@ def test_fast_heuristic() -> None: assert problem_optimization_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) - - -def create_complex_problem( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - lp_relaxation: bool, - fast: bool, - week: int, - scenario: int, -) -> OptimizationProblem: - - database = generate_database( - lower_bound, number_hours, week=week, scenario=scenario - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - node = Node(model=NODE_BALANCE_MODEL, id="1") - demand = create_component(model=DEMAND_MODEL, id="D") - - if fast: - FAST_MODEL = get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP) - gen1 = create_component(model=FAST_MODEL, id="G1") - gen2 = create_component(model=FAST_MODEL, id="G2") - gen3 = create_component(model=FAST_MODEL, id="G3") - elif lp_relaxation: - ACCURATE_MODEL = get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP) - gen1 = create_component(model=ACCURATE_MODEL, id="G1") - gen2 = create_component(model=ACCURATE_MODEL, id="G2") - gen3 = create_component(model=ACCURATE_MODEL, id="G3") - else: - gen1 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G1") - gen2 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G2") - gen3 = create_component(model=THERMAL_CLUSTER_MODEL_MILP, id="G3") - - spillage = create_component(model=SPILLAGE_MODEL, id="S") - - unsupplied_energy = create_component(model=UNSUPPLIED_ENERGY_MODEL, id="U") - - network = Network("test") - network.add_node(node) - network.add_component(demand) - network.add_component(gen1) - network.add_component(gen2) - network.add_component(gen3) - network.add_component(spillage) - network.add_component(unsupplied_energy) - network.connect(PortRef(demand, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen1, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen2, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(gen3, "balance_port"), PortRef(node, "balance_port")) - network.connect(PortRef(spillage, "balance_port"), PortRef(node, "balance_port")) - network.connect( - PortRef(unsupplied_energy, "balance_port"), PortRef(node, "balance_port") - ) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - return problem - - -def generate_database( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - week: int, - scenario: int, -) -> DataBase: - database = DataBase() - - failures_1 = pd.DataFrame( - np.repeat(get_failures_for_cluster1(week, scenario), 24), - index=[i for i in range(number_hours)], - columns=[0], - ) - max_units_1 = get_max_unit(410, 1, failures_1) - max_failures_1 = get_max_failures(max_units_1) - nb_units_max_min_down_time_1 = get_max_unit_for_min_down_time(8, max_units_1) - - database.add_data("G1", "p_max", ConstantData(410)) - database.add_data("G1", "p_min", ConstantData(180)) - database.add_data("G1", "cost", ConstantData(96)) - database.add_data("G1", "startup_cost", ConstantData(100500)) - database.add_data("G1", "fixed_cost", ConstantData(1)) - database.add_data("G1", "d_min_up", ConstantData(8)) - database.add_data("G1", "d_min_down", ConstantData(8)) - database.add_data("G1", "nb_units_min", lower_bound["G1"]) - database.add_data("G1", "nb_units_max", TimeScenarioSeriesData(max_units_1)) - database.add_data("G1", "max_generating", TimeScenarioSeriesData(failures_1)) - database.add_data("G1", "min_generating", lower_bound["G1"]) - database.add_data("G1", "max_failure", TimeScenarioSeriesData(max_failures_1)) - database.add_data( - "G1", - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time_1), - ) - - database.add_data("G2", "p_max", ConstantData(90)) - database.add_data("G2", "p_min", ConstantData(60)) - database.add_data("G2", "cost", ConstantData(137)) - database.add_data("G2", "startup_cost", ConstantData(24500)) - database.add_data("G2", "fixed_cost", ConstantData(1)) - database.add_data("G2", "d_min_up", ConstantData(11)) - database.add_data("G2", "d_min_down", ConstantData(11)) - database.add_data("G2", "nb_units_min", lower_bound["G2"]) - database.add_data("G2", "nb_units_max", ConstantData(3)) - database.add_data("G2", "max_generating", ConstantData(270)) - database.add_data("G2", "min_generating", lower_bound["G2"]) - database.add_data("G2", "max_failure", ConstantData(0)) - database.add_data("G2", "nb_units_max_min_down_time", ConstantData(3)) - - failures_3 = pd.DataFrame( - np.repeat(get_failures_for_cluster3(week, scenario), 24), - index=[i for i in range(number_hours)], - columns=[0], - ) - max_units_3 = get_max_unit(275, 4, failures_3) - max_failures_3 = get_max_failures(max_units_3) - nb_units_max_min_down_time_3 = get_max_unit_for_min_down_time(9, max_units_3) - - database.add_data("G3", "p_max", ConstantData(275)) - database.add_data("G3", "p_min", ConstantData(150)) - database.add_data("G3", "cost", ConstantData(107)) - database.add_data("G3", "startup_cost", ConstantData(69500)) - database.add_data("G3", "fixed_cost", ConstantData(1)) - database.add_data("G3", "d_min_up", ConstantData(9)) - database.add_data("G3", "d_min_down", ConstantData(9)) - database.add_data("G3", "nb_units_min", lower_bound["G3"]) - database.add_data("G3", "nb_units_max", TimeScenarioSeriesData(max_units_3)) - database.add_data("G3", "max_generating", TimeScenarioSeriesData(failures_3)) - database.add_data("G3", "min_generating", lower_bound["G3"]) - database.add_data("G3", "max_failure", TimeScenarioSeriesData(max_failures_3)) - database.add_data( - "G3", - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time_3), - ) - - database.add_data("U", "cost", ConstantData(10000)) - database.add_data("S", "cost", ConstantData(1)) - - output_file = open( - "tests/functional/data_complex_case/milp/" - + str(scenario) - + "/values-hourly.txt", - "r", - ) - output = output_file.readlines() - - demand_data = pd.DataFrame( - data=[ - float(line.strip().split("\t")[10]) - for line in output[168 * week + 7 : 168 * week + 7 + 168] - ], - index=[i for i in range(number_hours)], - columns=[0], - ) - demand_data[0] = demand_data[0] - 300 - - demand_time_scenario_series = TimeScenarioSeriesData(demand_data) - database.add_data("D", "demand", demand_time_scenario_series) - return database - - -def get_failures_for_cluster3(week: int, scenario: int) -> List: - if scenario == 0: - if week == 0: - failures_3 = [1100, 1100, 0, 1100, 1100, 1100, 1100] - elif week == 1: - failures_3 = [1100, 1100, 1100, 1100, 1100, 0, 1100] - elif scenario == 1: - failures_3 = [1100, 1100, 1100, 1100, 1100, 1100, 1100] - - return failures_3 - - -def get_failures_for_cluster1(week: int, scenario: int) -> List: - if scenario == 0: - failures = [410, 410, 410, 410, 410, 410, 410] - elif scenario == 1: - failures = [410, 410, 410, 410, 0, 410, 410] - - return failures - - -def create_problem_accurate_heuristic( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - thermal_cluster: str, - week: int, - scenario: int, -) -> OptimizationProblem: - - database = generate_database( - lower_bound=lower_bound, number_hours=number_hours, week=week, scenario=scenario - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - - gen = create_component( - model=get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP), - id=thermal_cluster, - ) - - network = Network("test") - network.add_component(gen) - - problem = build_problem( - network, - database, - time_block, - scenarios, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - return problem - - -def create_problem_fast_heuristic( - lower_bound: AbstractDataStructure, - number_hours: int, - thermal_cluster: str, - week: int, - scenario: int, -) -> pd.DataFrame: - - delta = {"G1": 8, "G2": 11, "G3": 9}[thermal_cluster] - pmin = {"G1": 180, "G2": 60, "G3": 150}[thermal_cluster] - pdispo = { - "G1": np.reshape( - np.repeat(get_failures_for_cluster1(week, scenario), 24), (number_hours, 1) - ), - "G2": np.array(270), - "G3": np.reshape( - np.repeat(get_failures_for_cluster3(week, scenario), 24), (number_hours, 1) - ), - }[thermal_cluster] - nmax = {"G1": 1, "G2": 3, "G3": 4}[thermal_cluster] - - # nopt = { - # "G1": np.ones((number_hours)), - # "G2": np.array( - # [ - # ( - # 3.0 - # if i in list(range(50, 72)) - # else (1.0 if i in list(range(39, 50)) else 0.0) - # ) - # for i in range(number_hours) - # ] - # ), - # }[thermal_cluster] - number_blocks = number_hours // delta - - database = DataBase() - - database.add_data("B", "n_max", ConstantData(nmax)) - database.add_data("B", "delta", ConstantData(delta)) - database.add_data("B", "n_guide", lower_bound) - for h in range(delta): - start_ajust = number_hours - delta + h - database.add_data( - "B", - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 - for t in range(number_hours) - } - ), - ) - for k in range(number_blocks): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) - database.add_data( - "B", - f"alpha_{k}_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 - for t in range(number_hours) - } - ), - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - - block = create_component( - model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" - ) - - network = Network("test") - network.add_component(block) - - problem = build_problem( - network, - database, - time_block, - 1, - border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - n_heuristic = np.array( - output_heuristic.component("B").var("n").value[0] # type:ignore - ).reshape((168, 1)) - mingen_heuristic = pd.DataFrame( - np.minimum(n_heuristic * pmin, pdispo), - index=[i for i in range(number_hours)], - columns=[0], - ) - - return mingen_heuristic From e4fc78a3b8d3f5db523d8debc4330f7107eb31bb Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 12:51:26 +0200 Subject: [PATCH 33/93] Sort imports --- src/andromede/study/data.py | 2 +- src/andromede/study/resolve_components.py | 2 +- src/andromede/thermal_heuristic/data.py | 18 +++++-------- src/andromede/thermal_heuristic/model.py | 21 ++++++++------- src/andromede/thermal_heuristic/problem.py | 27 ++++++++++--------- .../functional/libs/lib_thermal_heuristic.py | 12 +++------ .../functional/test_heuristic_complex_case.py | 19 ++++++------- .../test_heuristic_second_complex_case.py | 16 +++++------ .../functional/test_heuristic_simple_case.py | 14 ++++------ ...st_resolution_with_differents_scenarios.py | 13 ++++----- 10 files changed, 62 insertions(+), 82 deletions(-) diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index b37596ca..24d54895 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -13,7 +13,7 @@ from abc import ABC, abstractmethod from dataclasses import dataclass from pathlib import Path -from typing import Dict, Optional, List +from typing import Dict, List, Optional import pandas as pd diff --git a/src/andromede/study/resolve_components.py b/src/andromede/study/resolve_components.py index b641dce5..eb868c6c 100644 --- a/src/andromede/study/resolve_components.py +++ b/src/andromede/study/resolve_components.py @@ -30,8 +30,8 @@ AbstractDataStructure, TimeScenarioIndex, TimeScenarioSeriesData, - load_ts_from_txt, filter_ts_on_scenarios_and_timesteps, + load_ts_from_txt, ) from andromede.study.parsing import ( InputComponent, diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index a6523dea..53db7420 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -10,22 +10,16 @@ # # This file is part of the Antares project. -import pandas as pd -import pytest -import numpy as np from math import ceil - from typing import List -from andromede.simulation.optimization import OptimizationProblem +import numpy as np +import pandas as pd +import pytest -from andromede.simulation import ( - OutputValues, -) -from andromede.study import ( - ConstantData, - TimeScenarioSeriesData, -) +from andromede.simulation import OutputValues +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ConstantData, TimeScenarioSeriesData def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index c5e01ca9..5de0c780 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -10,20 +10,21 @@ # # This file is part of the Antares project. -import pandas as pd -import pytest -import numpy as np -from typing import List from math import ceil +from typing import List + +import numpy as np import ortools.linear_solver.pywraplp as pywraplp +import pandas as pd +import pytest from andromede.expression import ( + ExpressionNode, + PrinterVisitor, literal, param, var, - PrinterVisitor, visit, - ExpressionNode, ) from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( @@ -32,11 +33,10 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.model import Model, float_parameter, float_variable, model -from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable, ValueType from andromede.model.constraint import Constraint +from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.variable import ValueType, float_variable, int_variable from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -50,12 +50,13 @@ Network, Node, PortRef, + TimeIndex, TimeScenarioSeriesData, TimeSeriesData, - TimeIndex, create_component, ) from andromede.study.data import AbstractDataStructure +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP CONSTANT = IndexingStructure(False, False) TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index a141b36b..935691f0 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -10,10 +10,12 @@ # # This file is part of the Antares project. -import pandas as pd +from pathlib import Path +from typing import Dict, List, Optional + import numpy as np import ortools.linear_solver.pywraplp as pywraplp -from typing import List, Dict, Optional +import pandas as pd from andromede.libs.standard import ( BALANCE_PORT_TYPE, @@ -22,7 +24,8 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.model import Model +from andromede.model.library import Library, library from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -36,33 +39,31 @@ Network, Node, PortRef, + TimeIndex, TimeScenarioSeriesData, TimeSeriesData, - TimeIndex, create_component, ) from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.model import ( - get_accurate_heuristic_model, - get_model_fast_heuristic, - get_thermal_cluster_accurate_model, - get_thermal_cluster_fast_model, -) from andromede.study.parsing import parse_yaml_components from andromede.study.resolve_components import ( build_data_base, build_network, resolve_components_and_cnx, ) -from andromede.model.library import library, Library -from pathlib import Path -from andromede.model import Model from andromede.thermal_heuristic.data import ( get_failures_for_cluster, get_max_failures, get_max_unit, get_max_unit_for_min_down_time, ) +from andromede.thermal_heuristic.model import ( + get_accurate_heuristic_model, + get_model_fast_heuristic, + get_thermal_cluster_accurate_model, + get_thermal_cluster_fast_model, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP def create_main_problem( diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index df1152c0..759e843a 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -10,21 +10,15 @@ # # This file is part of the Antares project. -from andromede.expression import ( - literal, - param, - var, -) +from andromede.expression import literal, param, var from andromede.expression.expression import ExpressionRange from andromede.expression.indexing_structure import IndexingStructure -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.model import ModelPort, float_parameter, float_variable, model +from andromede.model.constraint import Constraint from andromede.model.model import PortFieldDefinition, PortFieldId from andromede.model.parameter import float_parameter, int_parameter from andromede.model.variable import float_variable, int_variable -from andromede.model.constraint import Constraint CONSTANT = IndexingStructure(False, False) TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 47190cbb..f8d72c90 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -10,26 +10,23 @@ # # This file is part of the Antares project. -import pandas as pd -import pytest -import numpy as np +from pathlib import Path from typing import Dict + +import numpy as np import ortools.linear_solver.pywraplp as pywraplp -from pathlib import Path +import pandas as pd +import pytest -from andromede.simulation import ( - OutputValues, -) +from andromede.simulation import OutputValues from andromede.study import ( ConstantData, + TimeIndex, TimeScenarioSeriesData, TimeSeriesData, - TimeIndex, ) from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.data import ( - check_output_values, -) +from andromede.thermal_heuristic.data import check_output_values from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 4ab4f84b..699dd2c9 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -10,19 +10,15 @@ # # This file is part of the Antares project. -import pandas as pd -import pytest +from pathlib import Path + import numpy as np import ortools.linear_solver.pywraplp as pywraplp -from pathlib import Path +import pandas as pd +import pytest -from andromede.simulation import ( - OutputValues, -) -from andromede.study import ( - ConstantData, - TimeScenarioSeriesData, -) +from andromede.simulation import OutputValues +from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.thermal_heuristic.problem import ( create_problem_accurate_heuristic, create_problem_fast_heuristic, diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_heuristic_simple_case.py index f892e185..6ea7d224 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_heuristic_simple_case.py @@ -10,18 +10,14 @@ # # This file is part of the Antares project. +from pathlib import Path + +import numpy as np import pandas as pd import pytest -import numpy as np -from andromede.simulation import ( - OutputValues, -) -from andromede.study import ( - ConstantData, - TimeScenarioSeriesData, -) -from pathlib import Path +from andromede.simulation import OutputValues +from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index e27da69a..6c0fc392 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -10,12 +10,13 @@ # # This file is part of the Antares project. -import pandas as pd -import pytest -import numpy as np -from typing import List, Dict from math import ceil, floor +from typing import Dict, List + +import numpy as np import ortools.linear_solver.pywraplp as pywraplp +import pandas as pd +import pytest from andromede.expression import literal, param, var from andromede.expression.expression import ExpressionRange, port_field @@ -28,10 +29,10 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.model import Model, ModelPort, float_parameter, float_variable, model +from andromede.model.constraint import Constraint from andromede.model.model import PortFieldDefinition, PortFieldId from andromede.model.parameter import float_parameter, int_parameter from andromede.model.variable import float_variable, int_variable -from andromede.model.constraint import Constraint from andromede.simulation import ( BlockBorderManagement, OutputValues, @@ -45,10 +46,10 @@ Network, Node, PortRef, + TimeIndex, TimeScenarioIndex, TimeScenarioSeriesData, TimeSeriesData, - TimeIndex, create_component, ) from andromede.study.data import AbstractDataStructure From 282c0f35149de794e892750c9975f649df7ea7f2 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 12:58:37 +0200 Subject: [PATCH 34/93] Run black --- src/andromede/thermal_heuristic/model.py | 6 ++---- src/andromede/thermal_heuristic/problem.py | 4 ---- tests/functional/test_heuristic_complex_case.py | 1 - .../functional/test_resolution_with_differents_scenarios.py | 1 - 4 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 5de0c780..81427837 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -64,8 +64,8 @@ NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: +def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: THERMAL_CLUSTER_MODEL_LP = model( id=initial_model.id, parameters=[p for p in initial_model.parameters.values()], @@ -90,7 +90,6 @@ def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: def get_thermal_cluster_fast_model(initial_model: Model) -> Model: - integer_variables = [ v.name for v in initial_model.variables.values() @@ -149,7 +148,6 @@ def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: def get_accurate_heuristic_model(initial_model: Model) -> Model: - generation_variable = ["generation"] THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( @@ -271,4 +269,4 @@ def get_model_fast_heuristic(Q: int, delta: int) -> Model: [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] ).expec(), # type:ignore ) - return BLOCK_MODEL_FAST_HEURISTIC \ No newline at end of file + return BLOCK_MODEL_FAST_HEURISTIC diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 935691f0..5ffacbbf 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -75,7 +75,6 @@ def create_main_problem( week: int, scenario: int, ) -> OptimizationProblem: - thermal_model = choose_thermal_model(lp_relaxation, fast) lib = library( @@ -134,7 +133,6 @@ def modify_parameters_of_cluster( scenario: int, ) -> None: for cluster_id in get_cluster_id(network, cluster_model_id): - data = get_data( dir_path, "components.yml", @@ -222,7 +220,6 @@ def create_problem_accurate_heuristic( week: int, scenario: int, ) -> OptimizationProblem: - thermal_model = get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP) lib = library( @@ -302,7 +299,6 @@ def create_problem_fast_heuristic( week: int, scenario: int, ) -> pd.DataFrame: - data = get_data( data_dir=data_dir, yml_file="components.yml", diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index f8d72c90..8f9ad3ae 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -208,7 +208,6 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: # - mingen_heuristic = create_problem_fast_heuristic( output_1.component(g).var("generation").value[0], # type:ignore number_hours, diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index 6c0fc392..54b056ee 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -287,7 +287,6 @@ def create_complex_problem( week: int, scenarios: List[int], ) -> OptimizationProblem: - database = generate_database( lower_bound, number_hours, week=week, scenarios=scenarios ) From 547ba3cd0a21241e25dfa6bd49ee17b3ee59ca86 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 15:31:33 +0200 Subject: [PATCH 35/93] Change solver to fix tests in the ci --- src/andromede/thermal_heuristic/problem.py | 3 - .../accurate/1/details-hourly.txt | 6 +- .../milp/0/details-hourly.txt | 50 ++--- .../milp/1/details-hourly.txt | 16 +- .../functional/test_heuristic_complex_case.py | 5 +- .../test_heuristic_second_complex_case.py | 4 +- ...st_resolution_with_differents_scenarios.py | 174 ++++++++++-------- 7 files changed, 139 insertions(+), 119 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 5ffacbbf..0867d6aa 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -116,7 +116,6 @@ def create_main_problem( time_block, scenarios, border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", ) return problem @@ -257,7 +256,6 @@ def create_problem_accurate_heuristic( time_block, scenarios, border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", ) return problem @@ -376,7 +374,6 @@ def create_problem_fast_heuristic( time_block, 1, border_management=BlockBorderManagement.CYCLE, - solver_id="XPRESS", ) parameters = pywraplp.MPSolverParameters() diff --git a/tests/functional/data_complex_case/accurate/1/details-hourly.txt b/tests/functional/data_complex_case/accurate/1/details-hourly.txt index 0f1b9a76..ab192b26 100644 --- a/tests/functional/data_complex_case/accurate/1/details-hourly.txt +++ b/tests/functional/data_complex_case/accurate/1/details-hourly.txt @@ -114,7 +114,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 107 05 JAN 10:00 0 120 1067 0 0 2 4 0 0 2 4 0 108 05 JAN 11:00 0 120 1059 0 0 2 4 0 0 2 4 0 109 05 JAN 12:00 0 120 1049 0 0 24503 4 0 0 2 4 0 - 110 05 JAN 13:00 0 120 1093 0 0 3 4 0 0 2 4 0 + 110 05 JAN 13:00 0 180 1033 0 0 3 4 0 0 3 4 0 111 05 JAN 14:00 0 180 1038 0 0 3 4 0 0 3 4 0 112 05 JAN 15:00 0 180 1038 0 0 3 4 0 0 3 4 0 113 05 JAN 16:00 0 180 1087 0 0 3 4 0 0 3 4 0 @@ -124,8 +124,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 117 05 JAN 20:00 0 135 1100 0 0 2 4 0 0 2 4 0 118 05 JAN 21:00 0 120 1023 0 0 2 4 0 0 2 4 0 119 05 JAN 22:00 0 120 910 0 0 2 4 0 0 2 4 0 - 120 05 JAN 23:00 0 60 808 0 0 0 4 0 0 1 4 0 - 121 06 JAN 00:00 0 60 605 0 0 0 4 0 0 1 4 0 + 120 05 JAN 23:00 0 120 748 0 0 0 4 0 0 2 4 0 + 121 06 JAN 00:00 0 0 665 0 0 0 4 0 0 0 4 0 122 06 JAN 01:00 0 0 600 0 0 0 4 0 0 0 4 0 123 06 JAN 02:00 0 0 600 0 0 0 4 0 0 0 4 0 124 06 JAN 03:00 0 0 600 0 0 0 4 0 0 0 4 0 diff --git a/tests/functional/data_complex_case/milp/0/details-hourly.txt b/tests/functional/data_complex_case/milp/0/details-hourly.txt index 12397ff9..ce403a17 100644 --- a/tests/functional/data_complex_case/milp/0/details-hourly.txt +++ b/tests/functional/data_complex_case/milp/0/details-hourly.txt @@ -133,8 +133,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 126 06 JAN 05:00 180 0 300 0 1 0 2 0 1 0 2 0 127 06 JAN 06:00 230 0 300 0 1 0 2 0 1 0 2 0 128 06 JAN 07:00 404 0 300 0 1 24501 2 0 1 0 2 0 - 129 06 JAN 08:00 410 60 358 0 1 1 2 0 1 1 2 0 - 130 06 JAN 09:00 410 60 393 0 1 1 2 0 1 1 2 0 + 129 06 JAN 08:00 410 0 418 0 1 1 2 0 1 0 2 0 + 130 06 JAN 09:00 410 0 453 0 1 1 2 0 1 0 2 0 131 06 JAN 10:00 410 60 375 0 1 1 2 0 1 1 2 0 132 06 JAN 11:00 410 60 339 0 1 1 2 0 1 1 2 0 133 06 JAN 12:00 410 60 313 0 1 1 2 0 1 1 2 0 @@ -144,8 +144,8 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 137 06 JAN 16:00 410 60 445 0 1 1 2 0 1 1 2 0 138 06 JAN 17:00 410 60 532 0 100501 1 2 0 1 1 2 0 139 06 JAN 18:00 410 60 515 0 1 1 2 0 1 1 2 0 - 140 06 JAN 19:00 410 0 522 0 1 0 2 0 1 0 2 0 - 141 06 JAN 20:00 410 0 459 0 1 0 2 0 1 0 2 0 + 140 06 JAN 19:00 410 60 462 0 1 0 2 0 1 1 2 0 + 141 06 JAN 20:00 410 60 399 0 1 0 2 0 1 1 2 0 142 06 JAN 21:00 410 0 402 0 1 0 2 0 1 0 2 0 143 06 JAN 22:00 410 0 320 0 1 0 2 0 1 0 2 0 144 06 JAN 23:00 350 0 300 0 1 0 2 0 1 0 2 0 @@ -317,27 +317,27 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 310 13 JAN 21:00 410 270 0 0 1 3 0 0 1 3 0 0 311 13 JAN 22:00 410 270 0 0 1 3 0 0 1 3 0 0 312 13 JAN 23:00 410 270 0 0 1 3 0 0 1 3 0 0 - 313 14 JAN 00:00 410 120 245 0 1 2 69501 0 1 2 1 0 - 314 14 JAN 01:00 407 120 150 0 1 2 1 0 1 2 1 0 - 315 14 JAN 02:00 354 120 150 0 1 2 1 0 1 2 1 0 - 316 14 JAN 03:00 323 120 150 0 1 2 1 0 1 2 1 0 - 317 14 JAN 04:00 325 120 150 0 1 2 1 0 1 2 1 0 - 318 14 JAN 05:00 373 120 150 0 1 2 1 0 1 2 1 0 - 319 14 JAN 06:00 410 120 223 0 1 2 1 0 1 2 1 0 - 320 14 JAN 07:00 410 120 378 0 1 2 69502 0 1 2 2 0 - 321 14 JAN 08:00 410 120 514 0 1 2 2 0 1 2 2 0 - 322 14 JAN 09:00 410 120 575 0 1 2 69503 0 1 2 3 0 - 323 14 JAN 10:00 410 120 573 0 1 2 3 0 1 2 3 0 - 324 14 JAN 11:00 410 120 563 0 1 2 3 0 1 2 3 0 - 325 14 JAN 12:00 410 120 553 0 1 2 3 0 1 2 3 0 - 326 14 JAN 13:00 410 120 590 0 1 2 3 0 1 2 3 0 - 327 14 JAN 14:00 410 120 609 0 1 2 3 0 1 2 3 0 - 328 14 JAN 15:00 410 120 633 0 1 2 3 0 1 2 3 0 - 329 14 JAN 16:00 410 120 731 0 1 2 3 0 1 2 3 0 - 330 14 JAN 17:00 410 143 825 0 1 2 3 0 1 2 3 0 - 331 14 JAN 18:00 410 148 825 0 1 2 3 0 1 2 3 0 - 332 14 JAN 19:00 410 120 810 0 1 2 3 0 1 2 3 0 - 333 14 JAN 20:00 410 60 814 0 1 1 3 0 1 1 3 0 + 313 14 JAN 00:00 410 90 275 0 1 2 69501 0 1 1 1 0 + 314 14 JAN 01:00 410 0 267 0 1 2 1 0 1 0 1 0 + 315 14 JAN 02:00 410 0 214 0 1 2 1 0 1 0 1 0 + 316 14 JAN 03:00 410 0 183 0 1 2 1 0 1 0 1 0 + 317 14 JAN 04:00 410 0 185 0 1 2 1 0 1 0 1 0 + 318 14 JAN 05:00 410 0 233 0 1 2 1 0 1 0 1 0 + 319 14 JAN 06:00 410 0 343 0 1 2 1 0 1 0 2 0 + 320 14 JAN 07:00 410 0 498 0 1 2 69502 0 1 0 2 0 + 321 14 JAN 08:00 410 0 634 0 1 2 2 0 1 0 3 0 + 322 14 JAN 09:00 410 0 695 0 1 2 69503 0 1 0 3 0 + 323 14 JAN 10:00 410 0 693 0 1 2 3 0 1 0 3 0 + 324 14 JAN 11:00 410 0 683 0 1 2 3 0 1 0 3 0 + 325 14 JAN 12:00 410 0 673 0 1 2 3 0 1 0 3 0 + 326 14 JAN 13:00 410 0 710 0 1 2 3 0 1 0 3 0 + 327 14 JAN 14:00 410 0 729 0 1 2 3 0 1 0 3 0 + 328 14 JAN 15:00 410 0 753 0 1 2 3 0 1 0 3 0 + 329 14 JAN 16:00 410 0 851 0 1 2 3 0 1 0 4 0 + 330 14 JAN 17:00 410 0 968 0 1 2 3 0 1 0 4 0 + 331 14 JAN 18:00 410 0 973 0 1 2 3 0 1 0 4 0 + 332 14 JAN 19:00 410 0 930 0 1 2 3 0 1 0 4 0 + 333 14 JAN 20:00 410 0 874 0 1 1 3 0 1 0 4 0 334 14 JAN 21:00 410 0 819 0 1 0 3 0 1 0 3 0 335 14 JAN 22:00 410 0 713 0 1 0 3 0 1 0 3 0 336 14 JAN 23:00 410 0 567 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/data_complex_case/milp/1/details-hourly.txt b/tests/functional/data_complex_case/milp/1/details-hourly.txt index e8004bdb..abb3ae72 100644 --- a/tests/functional/data_complex_case/milp/1/details-hourly.txt +++ b/tests/functional/data_complex_case/milp/1/details-hourly.txt @@ -184,7 +184,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 177 08 JAN 08:00 410 0 656 0 1 0 69503 0 1 0 3 0 178 08 JAN 09:00 410 0 709 0 1 0 3 0 1 0 3 0 179 08 JAN 10:00 410 0 716 0 1 0 3 0 1 0 3 0 - 180 08 JAN 11:00 410 60 662 0 1 24501 3 0 1 1 3 0 + 180 08 JAN 11:00 410 0 722 0 1 24501 3 0 1 0 3 0 181 08 JAN 12:00 410 60 651 0 1 1 3 0 1 1 3 0 182 08 JAN 13:00 410 60 691 0 1 1 3 0 1 1 3 0 183 08 JAN 14:00 410 60 690 0 1 1 3 0 1 1 3 0 @@ -195,7 +195,7 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 188 08 JAN 19:00 410 60 724 0 1 1 3 0 1 1 3 0 189 08 JAN 20:00 410 60 647 0 1 1 3 0 1 1 3 0 190 08 JAN 21:00 410 60 550 0 1 1 2 0 1 1 2 0 - 191 08 JAN 22:00 410 0 505 0 1 0 2 0 1 0 2 0 + 191 08 JAN 22:00 410 60 445 0 1 0 2 0 1 1 2 0 192 08 JAN 23:00 410 0 354 0 1 0 2 0 1 0 2 0 193 09 JAN 00:00 348 0 300 0 1 0 2 0 1 0 2 0 194 09 JAN 01:00 249 0 300 0 1 0 2 0 1 0 2 0 @@ -206,9 +206,9 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 199 09 JAN 06:00 410 0 316 0 1 0 2 0 1 0 2 0 200 09 JAN 07:00 410 0 495 0 1 0 2 0 1 0 2 0 201 09 JAN 08:00 410 0 615 0 1 0 69503 0 1 0 3 0 - 202 09 JAN 09:00 410 60 592 0 1 0 3 0 1 1 3 0 - 203 09 JAN 10:00 410 60 586 0 1 0 3 0 1 1 3 0 - 204 09 JAN 11:00 410 60 587 0 1 0 3 0 1 1 3 0 + 202 09 JAN 09:00 410 0 652 0 1 0 3 0 1 0 3 0 + 203 09 JAN 10:00 410 0 646 0 1 0 3 0 1 0 3 0 + 204 09 JAN 11:00 410 0 647 0 1 0 3 0 1 0 3 0 205 09 JAN 12:00 410 60 581 0 1 24501 3 0 1 1 3 0 206 09 JAN 13:00 410 60 630 0 1 1 3 0 1 1 3 0 207 09 JAN 14:00 410 60 651 0 1 1 3 0 1 1 3 0 @@ -217,9 +217,9 @@ BA00 hourly cluster_1 cluster_2 cluster_3 Pondage_turb cluster_1 cluster_2 cl 210 09 JAN 17:00 410 60 804 0 1 1 3 0 1 1 3 0 211 09 JAN 18:00 410 60 815 0 1 1 3 0 1 1 3 0 212 09 JAN 19:00 410 60 795 0 1 1 3 0 1 1 3 0 - 213 09 JAN 20:00 410 0 801 0 1 1 3 0 1 0 3 0 - 214 09 JAN 21:00 410 0 711 0 1 1 3 0 1 0 3 0 - 215 09 JAN 22:00 410 0 583 0 1 1 3 0 1 0 3 0 + 213 09 JAN 20:00 410 60 741 0 1 1 3 0 1 1 3 0 + 214 09 JAN 21:00 410 60 651 0 1 1 3 0 1 1 3 0 + 215 09 JAN 22:00 410 60 523 0 1 1 3 0 1 1 3 0 216 09 JAN 23:00 387 0 450 0 1 0 3 0 1 0 3 0 217 10 JAN 00:00 280 0 450 0 1 0 3 0 1 0 3 0 218 10 JAN 01:00 196 0 450 0 1 0 3 0 1 0 3 0 diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_heuristic_complex_case.py index 8f9ad3ae..edecb078 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_heuristic_complex_case.py @@ -54,6 +54,7 @@ def test_milp_version() -> None: parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) status = problem.solver.Solve(parameters) @@ -63,7 +64,7 @@ def test_milp_version() -> None: problem, "milp", week, scenario=scenario, dir_path="data_complex_case" ) - expected_cost = [[78933742, 102109698], [17472101, 17424769]] + expected_cost = [[78933742, 102103587], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -166,7 +167,7 @@ def test_accurate_heuristic() -> None: expected_cost = [ [78996726, 102215087 - 69500], - [17587733, 17641808], + [17589534, 17641808], ] assert problem_optimization_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_heuristic_second_complex_case.py index 699dd2c9..6faf3225 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_heuristic_second_complex_case.py @@ -110,4 +110,6 @@ def test_fast_heuristic() -> None: f"tests/functional/data_second_complex_case/fast/itr2_fast_cluster{j+1}.txt" ) for time_step in range(number_hours): - assert mingen_heuristic.values[time_step, 0] == expected_output[time_step] + assert mingen_heuristic.values[time_step, 0] == pytest.approx( + expected_output[time_step] + ) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index 54b056ee..bbed4111 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -60,7 +60,91 @@ def test_one_problem_per_scenario() -> None: number_hours = 168 scenarios = 2 - for scenario in range(scenarios): + solver = pywraplp.Solver.CreateSolver("XPRESS") + if solver: + + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + { + "G1": ConstantData(0), + "G2": ConstantData(0), + "G3": ConstantData(0), + }, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=[scenario], + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933841, 102109698], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_one_problem_per_scenario_with_different_parameters() -> None: + """Resolve the same problem as above with more restrictive parameters. If the problem is solved scenario per scenario the result is better than above.""" + number_hours = 168 + scenarios = 2 + + solver = pywraplp.Solver.CreateSolver("XPRESS") + if solver: + + for scenario in range(scenarios): + for week in range(2): + problem = create_complex_problem( + { + "G1": ConstantData(0), + "G2": ConstantData(0), + "G3": ConstantData(0), + }, + number_hours, + lp_relaxation=False, + fast=False, + week=week, + scenarios=[scenario], + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) + + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + expected_cost = [[78933742, 102103588], [17472101, 17424769]] + assert problem.solver.Objective().Value() == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_one_problem_for_all_scenarios() -> None: + """Resolve the same problem as above with same parameters as Antares. If the problem is solved for all scenarios at the same time, the result is worse than solving the problem one by one.""" + number_hours = 168 + scenarios = [0, 1] + + solver = pywraplp.Solver.CreateSolver("XPRESS") + if solver: + for week in range(2): problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, @@ -68,7 +152,7 @@ def test_one_problem_per_scenario() -> None: lp_relaxation=False, fast=False, week=week, - scenarios=[scenario], + scenarios=scenarios, ) parameters = pywraplp.MPSolverParameters() @@ -83,17 +167,19 @@ def test_one_problem_per_scenario() -> None: assert status == problem.solver.OPTIMAL expected_cost = [[78933841, 102109698], [17472101, 17424769]] - assert problem.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] - ) + # assert problem.solver.Objective().Value() == pytest.approx( + # sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) + # ) -def test_one_problem_per_scenario_with_different_parameters() -> None: - """Resolve the same problem as above with more restrictive parameters. If the problem is solved scenario per scenario the result is better than above.""" +def test_one_problem_for_all_scenarios_with_different_parameters() -> None: + """Resolve the same problem as above with more restrictive parameters. If the problem is solved for all scenarios at the same time, the result is the same than solving the problem one by one. All those tests show that solver parameters and solving scenario at one or one by one are important factors to take into account.""" number_hours = 168 - scenarios = 2 + scenarios = [0, 1] + + solver = pywraplp.Solver.CreateSolver("XPRESS") + if solver: - for scenario in range(scenarios): for week in range(2): problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, @@ -101,7 +187,7 @@ def test_one_problem_per_scenario_with_different_parameters() -> None: lp_relaxation=False, fast=False, week=week, - scenarios=[scenario], + scenarios=scenarios, ) parameters = pywraplp.MPSolverParameters() @@ -119,76 +205,10 @@ def test_one_problem_per_scenario_with_different_parameters() -> None: expected_cost = [[78933742, 102103588], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] + sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) ) -def test_one_problem_for_all_scenarios() -> None: - """Resolve the same problem as above with same parameters as Antares. If the problem is solved for all scenarios at the same time, the result is worse than solving the problem one by one.""" - number_hours = 168 - scenarios = [0, 1] - - for week in range(2): - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=False, - fast=False, - week=week, - scenarios=scenarios, - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - expected_cost = [[78933841, 102109698], [17472101, 17424769]] - # assert problem.solver.Objective().Value() == pytest.approx( - # sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) - # ) - - -def test_one_problem_for_all_scenarios_with_different_parameters() -> None: - """Resolve the same problem as above with more restrictive parameters. If the problem is solved for all scenarios at the same time, the result is the same than solving the problem one by one. All those tests show that solver parameters and solving scenario at one or one by one are important factors to take into account.""" - number_hours = 168 - scenarios = [0, 1] - - for week in range(2): - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=False, - fast=False, - week=week, - scenarios=scenarios, - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) - - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - expected_cost = [[78933742, 102103588], [17472101, 17424769]] - assert problem.solver.Objective().Value() == pytest.approx( - sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) - ) - - CONSTANT = IndexingStructure(False, False) TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) From 3f3d09f9a34367fec211c15ba1c28f0d88505b39 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 15:33:48 +0200 Subject: [PATCH 36/93] Fix ci --- tests/functional/test_resolution_with_differents_scenarios.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index bbed4111..afd931c4 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -62,7 +62,6 @@ def test_one_problem_per_scenario() -> None: solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for scenario in range(scenarios): for week in range(2): problem = create_complex_problem( @@ -102,7 +101,6 @@ def test_one_problem_per_scenario_with_different_parameters() -> None: solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for scenario in range(scenarios): for week in range(2): problem = create_complex_problem( @@ -144,7 +142,6 @@ def test_one_problem_for_all_scenarios() -> None: solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for week in range(2): problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, @@ -179,7 +176,6 @@ def test_one_problem_for_all_scenarios_with_different_parameters() -> None: solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for week in range(2): problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, From 6061ffe9572813ff08af8ed90a2fcec6d03fdc9a Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 28 Jun 2024 15:53:01 +0200 Subject: [PATCH 37/93] Rename tests --- .../components.yml | 0 .../components_heuristic.yml | 0 .../demand-ts.txt | 0 .../accurate/itr1_accurate_cluster1.txt | 0 .../accurate/itr1_accurate_cluster2.txt | 0 .../accurate/itr1_accurate_cluster3.txt | 0 .../accurate/itr1_accurate_cluster4.txt | 0 .../accurate/itr1_accurate_cluster5.txt | 0 .../accurate/itr1_accurate_cluster6.txt | 0 .../accurate/itr2_accurate_cluster1.txt | 0 .../accurate/itr2_accurate_cluster2.txt | 0 .../accurate/itr2_accurate_cluster3.txt | 0 .../accurate/itr2_accurate_cluster4.txt | 0 .../accurate/itr2_accurate_cluster5.txt | 0 .../accurate/itr2_accurate_cluster6.txt | 0 .../components.yml | 0 .../components_heuristic.yml | 0 .../fast/itr1_fast_cluster1.txt | 0 .../fast/itr1_fast_cluster2.txt | 0 .../fast/itr1_fast_cluster3.txt | 0 .../fast/itr1_fast_cluster4.txt | 0 .../fast/itr1_fast_cluster5.txt | 0 .../fast/itr1_fast_cluster6.txt | 0 .../fast/itr2_fast_cluster1.txt | 0 .../fast/itr2_fast_cluster2.txt | 0 .../fast/itr2_fast_cluster3.txt | 0 .../fast/itr2_fast_cluster4.txt | 0 .../fast/itr2_fast_cluster5.txt | 0 .../fast/itr2_fast_cluster6.txt | 0 .../series_G1.txt | 0 .../series_G2.txt | 0 .../series_G3.txt | 0 .../series_G4.txt | 0 .../series_G5.txt | 0 .../series_G6.txt | 0 .../accurate/0/details-hourly.txt | 0 .../accurate/0/values-hourly.txt | 0 .../accurate/1/details-hourly.txt | 0 .../accurate/1/values-hourly.txt | 0 .../components.yml | 0 .../components_heuristic.yml | 0 .../demand-ts.txt | 0 .../fast/0/details-hourly.txt | 0 .../fast/0/values-hourly.txt | 0 .../fast/1/details-hourly.txt | 0 .../fast/1/values-hourly.txt | 0 .../milp/0/details-hourly.txt | 0 .../milp/0/values-hourly.txt | 0 .../milp/1/details-hourly.txt | 0 .../milp/1/values-hourly.txt | 0 .../series_G1.txt | 0 .../series_G2.txt | 0 .../series_G3.txt | 0 ... => test_thermal_heuristic_one_cluster.py} | 16 +++++----- ...=> test_thermal_heuristic_six_clusters.py} | 12 +++---- ... test_thermal_heuristic_three_clusters.py} | 31 +++++++++++++------ 56 files changed, 35 insertions(+), 24 deletions(-) rename tests/functional/{data_simple_case => data/thermal_heuristic_one_cluster}/components.yml (100%) rename tests/functional/{data_simple_case => data/thermal_heuristic_one_cluster}/components_heuristic.yml (100%) rename tests/functional/{data_simple_case => data/thermal_heuristic_one_cluster}/demand-ts.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster1.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster2.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster3.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster4.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster5.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr1_accurate_cluster6.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster1.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster2.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster3.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster4.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster5.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/accurate/itr2_accurate_cluster6.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/components.yml (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/components_heuristic.yml (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster1.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster2.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster3.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster4.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster5.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr1_fast_cluster6.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster1.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster2.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster3.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster4.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster5.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/fast/itr2_fast_cluster6.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G1.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G2.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G3.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G4.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G5.txt (100%) rename tests/functional/{data_second_complex_case => data/thermal_heuristic_six_clusters}/series_G6.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/accurate/0/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/accurate/0/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/accurate/1/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/accurate/1/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/components.yml (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/components_heuristic.yml (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/demand-ts.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/fast/0/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/fast/0/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/fast/1/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/fast/1/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/milp/0/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/milp/0/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/milp/1/details-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/milp/1/values-hourly.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/series_G1.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/series_G2.txt (100%) rename tests/functional/{data_complex_case => data/thermal_heuristic_three_clusters}/series_G3.txt (100%) rename tests/functional/{test_heuristic_simple_case.py => test_thermal_heuristic_one_cluster.py} (95%) rename tests/functional/{test_heuristic_second_complex_case.py => test_thermal_heuristic_six_clusters.py} (84%) rename tests/functional/{test_heuristic_complex_case.py => test_thermal_heuristic_three_clusters.py} (88%) diff --git a/tests/functional/data_simple_case/components.yml b/tests/functional/data/thermal_heuristic_one_cluster/components.yml similarity index 100% rename from tests/functional/data_simple_case/components.yml rename to tests/functional/data/thermal_heuristic_one_cluster/components.yml diff --git a/tests/functional/data_simple_case/components_heuristic.yml b/tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml similarity index 100% rename from tests/functional/data_simple_case/components_heuristic.yml rename to tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml diff --git a/tests/functional/data_simple_case/demand-ts.txt b/tests/functional/data/thermal_heuristic_one_cluster/demand-ts.txt similarity index 100% rename from tests/functional/data_simple_case/demand-ts.txt rename to tests/functional/data/thermal_heuristic_one_cluster/demand-ts.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster1.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster1.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster1.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster2.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster2.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster2.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster3.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster3.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster3.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster4.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster4.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster4.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster5.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster5.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster5.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster6.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster6.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster6.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster1.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster1.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster1.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster2.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster2.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster2.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster3.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster3.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster3.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster4.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster4.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster4.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster5.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster5.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster5.txt diff --git a/tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt b/tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster6.txt similarity index 100% rename from tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster6.txt rename to tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster6.txt diff --git a/tests/functional/data_second_complex_case/components.yml b/tests/functional/data/thermal_heuristic_six_clusters/components.yml similarity index 100% rename from tests/functional/data_second_complex_case/components.yml rename to tests/functional/data/thermal_heuristic_six_clusters/components.yml diff --git a/tests/functional/data_second_complex_case/components_heuristic.yml b/tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml similarity index 100% rename from tests/functional/data_second_complex_case/components_heuristic.yml rename to tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster1.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster1.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster1.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster2.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster2.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster2.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster3.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster3.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster3.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster4.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster4.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster4.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster5.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster5.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster5.txt diff --git a/tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster6.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr1_fast_cluster6.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster6.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster1.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster1.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster1.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster2.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster2.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster2.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster3.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster3.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster3.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster4.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster4.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster4.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster5.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster5.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster5.txt diff --git a/tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt b/tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster6.txt similarity index 100% rename from tests/functional/data_second_complex_case/fast/itr2_fast_cluster6.txt rename to tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster6.txt diff --git a/tests/functional/data_second_complex_case/series_G1.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G1.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G1.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G1.txt diff --git a/tests/functional/data_second_complex_case/series_G2.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G2.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G2.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G2.txt diff --git a/tests/functional/data_second_complex_case/series_G3.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G3.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G3.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G3.txt diff --git a/tests/functional/data_second_complex_case/series_G4.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G4.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G4.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G4.txt diff --git a/tests/functional/data_second_complex_case/series_G5.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G5.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G5.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G5.txt diff --git a/tests/functional/data_second_complex_case/series_G6.txt b/tests/functional/data/thermal_heuristic_six_clusters/series_G6.txt similarity index 100% rename from tests/functional/data_second_complex_case/series_G6.txt rename to tests/functional/data/thermal_heuristic_six_clusters/series_G6.txt diff --git a/tests/functional/data_complex_case/accurate/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/accurate/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/0/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/accurate/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/accurate/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/0/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/accurate/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/1/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/accurate/1/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/1/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/accurate/1/details-hourly.txt diff --git a/tests/functional/data_complex_case/accurate/1/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/accurate/1/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/accurate/1/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/accurate/1/values-hourly.txt diff --git a/tests/functional/data_complex_case/components.yml b/tests/functional/data/thermal_heuristic_three_clusters/components.yml similarity index 100% rename from tests/functional/data_complex_case/components.yml rename to tests/functional/data/thermal_heuristic_three_clusters/components.yml diff --git a/tests/functional/data_complex_case/components_heuristic.yml b/tests/functional/data/thermal_heuristic_three_clusters/components_heuristic.yml similarity index 100% rename from tests/functional/data_complex_case/components_heuristic.yml rename to tests/functional/data/thermal_heuristic_three_clusters/components_heuristic.yml diff --git a/tests/functional/data_complex_case/demand-ts.txt b/tests/functional/data/thermal_heuristic_three_clusters/demand-ts.txt similarity index 100% rename from tests/functional/data_complex_case/demand-ts.txt rename to tests/functional/data/thermal_heuristic_three_clusters/demand-ts.txt diff --git a/tests/functional/data_complex_case/fast/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/fast/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/0/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/fast/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/fast/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/fast/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/0/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/fast/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/fast/1/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/fast/1/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/1/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/fast/1/details-hourly.txt diff --git a/tests/functional/data_complex_case/fast/1/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/fast/1/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/fast/1/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/fast/1/values-hourly.txt diff --git a/tests/functional/data_complex_case/milp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/milp/0/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/0/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/milp/0/details-hourly.txt diff --git a/tests/functional/data_complex_case/milp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/milp/0/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/0/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/milp/0/values-hourly.txt diff --git a/tests/functional/data_complex_case/milp/1/details-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/milp/1/details-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/1/details-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/milp/1/details-hourly.txt diff --git a/tests/functional/data_complex_case/milp/1/values-hourly.txt b/tests/functional/data/thermal_heuristic_three_clusters/milp/1/values-hourly.txt similarity index 100% rename from tests/functional/data_complex_case/milp/1/values-hourly.txt rename to tests/functional/data/thermal_heuristic_three_clusters/milp/1/values-hourly.txt diff --git a/tests/functional/data_complex_case/series_G1.txt b/tests/functional/data/thermal_heuristic_three_clusters/series_G1.txt similarity index 100% rename from tests/functional/data_complex_case/series_G1.txt rename to tests/functional/data/thermal_heuristic_three_clusters/series_G1.txt diff --git a/tests/functional/data_complex_case/series_G2.txt b/tests/functional/data/thermal_heuristic_three_clusters/series_G2.txt similarity index 100% rename from tests/functional/data_complex_case/series_G2.txt rename to tests/functional/data/thermal_heuristic_three_clusters/series_G2.txt diff --git a/tests/functional/data_complex_case/series_G3.txt b/tests/functional/data/thermal_heuristic_three_clusters/series_G3.txt similarity index 100% rename from tests/functional/data_complex_case/series_G3.txt rename to tests/functional/data/thermal_heuristic_three_clusters/series_G3.txt diff --git a/tests/functional/test_heuristic_simple_case.py b/tests/functional/test_thermal_heuristic_one_cluster.py similarity index 95% rename from tests/functional/test_heuristic_simple_case.py rename to tests/functional/test_thermal_heuristic_one_cluster.py index 6ea7d224..ccaf2654 100644 --- a/tests/functional/test_heuristic_simple_case.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -58,7 +58,7 @@ def test_milp_version() -> None: number_hours, lp_relaxation=False, fast=False, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -136,7 +136,7 @@ def test_lp_version() -> None: number_hours, lp_relaxation=True, fast=False, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -192,7 +192,7 @@ def test_accurate_heuristic() -> None: number_hours, lp_relaxation=True, fast=False, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -217,7 +217,7 @@ def test_accurate_heuristic() -> None: problem_accurate_heuristic = create_problem_accurate_heuristic( {"G": n_guide}, number_hours, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", thermal_cluster="G", week=0, scenario=0, @@ -245,7 +245,7 @@ def test_accurate_heuristic() -> None: number_hours, lp_relaxation=True, fast=False, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -324,7 +324,7 @@ def test_fast_heuristic() -> None: number_hours, lp_relaxation=True, fast=True, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -340,7 +340,7 @@ def test_fast_heuristic() -> None: output_1.component("G").var("generation").value[0], # type:ignore number_hours, thermal_cluster="G", - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) @@ -360,7 +360,7 @@ def test_fast_heuristic() -> None: number_hours, lp_relaxation=True, fast=True, - data_dir=Path(__file__).parent / "data_simple_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) diff --git a/tests/functional/test_heuristic_second_complex_case.py b/tests/functional/test_thermal_heuristic_six_clusters.py similarity index 84% rename from tests/functional/test_heuristic_second_complex_case.py rename to tests/functional/test_thermal_heuristic_six_clusters.py index 6faf3225..15d166eb 100644 --- a/tests/functional/test_heuristic_second_complex_case.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -44,7 +44,7 @@ def test_accurate_heuristic() -> None: np.ceil( np.round( np.loadtxt( - f"tests/functional/data_second_complex_case/accurate/itr1_accurate_cluster{j+1}.txt" + f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster{j+1}.txt" ), 12, ) @@ -62,7 +62,7 @@ def test_accurate_heuristic() -> None: for i in range(1, 7) }, number_hours, - data_dir=Path(__file__).parent / "data_second_complex_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", thermal_cluster=cluster, week=week, scenario=scenario, @@ -77,7 +77,7 @@ def test_accurate_heuristic() -> None: ) expected_output = np.loadtxt( - f"tests/functional/data_second_complex_case/accurate/itr2_accurate_cluster{j+1}.txt" + f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster{j+1}.txt" ) for time_step in range(number_hours): assert nb_on_heuristic[time_step, 0] == expected_output[time_step] @@ -93,7 +93,7 @@ def test_fast_heuristic() -> None: for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): nb_on_1 = np.loadtxt( - f"tests/functional/data_second_complex_case/fast/itr1_fast_cluster{j+1}.txt" + f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster{j+1}.txt" ) # Solve heuristic problem @@ -101,13 +101,13 @@ def test_fast_heuristic() -> None: nb_on_1, # type:ignore number_hours, thermal_cluster=cluster, - data_dir=Path(__file__).parent / "data_second_complex_case", + data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", week=week, scenario=scenario, ) expected_output = np.loadtxt( - f"tests/functional/data_second_complex_case/fast/itr2_fast_cluster{j+1}.txt" + f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" ) for time_step in range(number_hours): assert mingen_heuristic.values[time_step, 0] == pytest.approx( diff --git a/tests/functional/test_heuristic_complex_case.py b/tests/functional/test_thermal_heuristic_three_clusters.py similarity index 88% rename from tests/functional/test_heuristic_complex_case.py rename to tests/functional/test_thermal_heuristic_three_clusters.py index edecb078..9f5631c5 100644 --- a/tests/functional/test_heuristic_complex_case.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -48,7 +48,8 @@ def test_milp_version() -> None: fast=False, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) parameters = pywraplp.MPSolverParameters() @@ -61,7 +62,11 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL check_output_values( - problem, "milp", week, scenario=scenario, dir_path="data_complex_case" + problem, + "milp", + week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", ) expected_cost = [[78933742, 102103587], [17472101, 17424769]] @@ -92,7 +97,8 @@ def test_accurate_heuristic() -> None: fast=False, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_1.solver.Solve(parameters) @@ -125,7 +131,8 @@ def test_accurate_heuristic() -> None: thermal_cluster=g, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) status = problem_accurate_heuristic.solver.Solve(parameters) @@ -151,7 +158,8 @@ def test_accurate_heuristic() -> None: fast=False, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_2.solver.Solve(parameters) @@ -162,7 +170,7 @@ def test_accurate_heuristic() -> None: "accurate", week, scenario=scenario, - dir_path="data_complex_case", + dir_path="data/thermal_heuristic_three_clusters", ) expected_cost = [ @@ -197,7 +205,8 @@ def test_fast_heuristic() -> None: fast=True, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_1.solver.Solve(parameters) @@ -215,7 +224,8 @@ def test_fast_heuristic() -> None: thermal_cluster=g, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) mingen[g] = TimeScenarioSeriesData(mingen_heuristic) @@ -228,7 +238,8 @@ def test_fast_heuristic() -> None: fast=True, week=week, scenario=scenario, - data_dir=Path(__file__).parent / "data_complex_case", + data_dir=Path(__file__).parent + / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_2.solver.Solve(parameters) @@ -239,7 +250,7 @@ def test_fast_heuristic() -> None: "fast", week, scenario, - dir_path="data_complex_case", + dir_path="data/thermal_heuristic_three_clusters", ) expected_cost = [ From e7c4cbe514352eb0b5e00bc0c0a173fe1648019b Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 2 Jul 2024 16:23:02 +0200 Subject: [PATCH 38/93] Generalize check_output --- src/andromede/thermal_heuristic/data.py | 144 +++++++------- .../accurate/0/details-hourly.txt | 175 +++++++++++++++++ .../accurate/0/values-hourly.txt | 175 +++++++++++++++++ .../fast/0/details-hourly.txt | 175 +++++++++++++++++ .../fast/0/values-hourly.txt | 175 +++++++++++++++++ .../lp/0/details-hourly.txt | 175 +++++++++++++++++ .../lp/0/values-hourly.txt | 175 +++++++++++++++++ .../milp/0/details-hourly.txt | 175 +++++++++++++++++ .../milp/0/values-hourly.txt | 175 +++++++++++++++++ .../test_thermal_heuristic_one_cluster.py | 184 ++++++------------ .../test_thermal_heuristic_six_clusters.py | 10 +- .../test_thermal_heuristic_three_clusters.py | 59 ++++-- 12 files changed, 1576 insertions(+), 221 deletions(-) create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/accurate/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/accurate/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/fast/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/fast/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/lp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/lp/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/milp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster/milp/0/values-hourly.txt diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 53db7420..8e5e522a 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -10,8 +10,7 @@ # # This file is part of the Antares project. -from math import ceil -from typing import List +from dataclasses import dataclass import numpy as np import pandas as pd @@ -19,7 +18,6 @@ from andromede.simulation import OutputValues from andromede.simulation.optimization import OptimizationProblem -from andromede.study import ConstantData, TimeScenarioSeriesData def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: @@ -73,93 +71,101 @@ def get_failures_for_cluster( return failures_data +@dataclass +class OutputIndexes: + idx_generation: int + idx_nodu: int + idx_spillage: int + idx_unsupplied: int + + +@dataclass +class OutputValuesParameters: + mode: str + week: int + scenario: int + dir_path: str + list_cluster: list[str] + output_idx: OutputIndexes + + def check_output_values( - problem: OptimizationProblem, mode: str, week: int, scenario: int, dir_path: str + problem: OptimizationProblem, parameters: OutputValuesParameters ) -> None: output = OutputValues(problem) - expected_output_clusters_file = open( - "tests/functional/" - + dir_path - + "/" - + mode - + "/" - + str(scenario) - + "/details-hourly.txt", - "r", + expected_output_clusters, expected_output_general = read_expected_output( + parameters.mode, parameters.scenario, parameters.dir_path, parameters.week ) - expected_output_clusters = expected_output_clusters_file.readlines() - expected_output_general_file = open( - "tests/functional/" - + dir_path - + "/" - + mode - + "/" - + str(scenario) - + "/values-hourly.txt", - "r", - ) - expected_output_general = expected_output_general_file.readlines() + for i, cluster in enumerate(parameters.list_cluster): + check_output_cluster( + parameters.mode, + output, + expected_output_clusters, + idx_generation=parameters.output_idx.idx_generation + i, + idx_nodu=parameters.output_idx.idx_nodu + i, + cluster_id=cluster, + ) - assert output.component("G1").var("generation").value == [ + assert output.component("S").var("spillage").value == [ [ - pytest.approx(float(line.strip().split("\t")[4])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + pytest.approx(float(line[parameters.output_idx.idx_spillage])) + for line in expected_output_general ] ] - if mode != "fast": - assert output.component("G1").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[12])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - assert output.component("G2").var("generation").value == [ + assert output.component("U").var("unsupplied_energy").value == [ [ - pytest.approx(float(line.strip().split("\t")[5])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + pytest.approx(float(line[parameters.output_idx.idx_unsupplied])) + for line in expected_output_general ] ] - if mode != "fast": - assert output.component("G2").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[13])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] - ] - assert output.component("G3").var("generation").value == [ + +def check_output_cluster( + mode: str, + output: OutputValues, + expected_output_clusters: list[list[str]], + idx_generation: int, + idx_nodu: int, + cluster_id: str, +) -> None: + assert output.component(cluster_id).var("generation").value == [ [ - pytest.approx(float(line.strip().split("\t")[6])) - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + pytest.approx(float(line[idx_generation])) + for line in expected_output_clusters ] ] if mode != "fast": - assert output.component("G3").var("nb_on").value == [ - [ - pytest.approx(float(line.strip().split("\t")[14])) - for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 - ] - ] + assert output.component(cluster_id).var("nb_on").value == [ + [pytest.approx(float(line[idx_nodu])) for line in expected_output_clusters] ] - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(float(line.strip().split("\t")[20 if mode == "milp" else 21])) - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ +def read_expected_output( + mode: str, scenario: int, dir_path: str, week: int +) -> tuple[list[list[str]], list[list[str]]]: + folder_name = "tests/functional/" + dir_path + "/" + mode + "/" + str(scenario) + + expected_output_clusters_file = open( + folder_name + "/details-hourly.txt", + "r", + ) + expected_output_clusters = expected_output_clusters_file.readlines() + + expected_output_general_file = open( + folder_name + "/values-hourly.txt", + "r", + ) + expected_output_general = expected_output_general_file.readlines() + return ( [ - pytest.approx(float(line.strip().split("\t")[19 if mode == "milp" else 20])) + line.strip().split("\t") + for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] + ], + [ + line.strip().split("\t") for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ] - ] + ], + ) diff --git a/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/details-hourly.txt new file mode 100644 index 00000000..7c87451d --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2000 0 2 0 + 12 01 JAN 11:00 2000 0 2 0 + 13 01 JAN 12:00 2100 0 3 0 + 14 01 JAN 13:00 2000 0 2 0 + 15 01 JAN 14:00 2000 0 2 0 + 16 01 JAN 15:00 2000 0 2 0 + 17 01 JAN 16:00 2000 0 2 0 + 18 01 JAN 17:00 2000 0 2 0 + 19 01 JAN 18:00 2000 0 2 0 + 20 01 JAN 19:00 2000 0 2 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/values-hourly.txt new file mode 100644 index 00000000..b5865967 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/accurate/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 33 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST MRG. PRICE MRG. PRICE MRG. PRICE MRG. PRICE BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 12 01 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 13 01 JAN 12:00 105053 105053 0 105053 105053 0.00 0 0.00 0.00 0 0 0 0 2050 0 2050 2050 2100 0 2100 2100 0 0 0 0 0 0 0 0 50 0 50 50 + 14 01 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 15 01 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 16 01 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 17 01 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 18 01 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 19 01 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 20 01 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 21 01 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/fast/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/fast/0/details-hourly.txt new file mode 100644 index 00000000..dd43c68b --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/fast/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2100 0 3 0 + 12 01 JAN 11:00 2100 0 3 0 + 13 01 JAN 12:00 2100 0 3 0 + 14 01 JAN 13:00 2100 0 3 0 + 15 01 JAN 14:00 2100 0 3 0 + 16 01 JAN 15:00 2100 0 3 0 + 17 01 JAN 16:00 2100 0 3 0 + 18 01 JAN 17:00 2100 0 3 0 + 19 01 JAN 18:00 2100 0 3 0 + 20 01 JAN 19:00 2100 0 3 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/fast/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/fast/0/values-hourly.txt new file mode 100644 index 00000000..7b164551 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/fast/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 33 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST MRG. PRICE MRG. PRICE MRG. PRICE MRG. PRICE BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 105053 105053 0 105053 105053 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 12 01 JAN 11:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 13 01 JAN 12:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2050 0 2050 2050 2100 0 2100 2100 0 0 0 0 0 0 0 0 50 0 50 50 + 14 01 JAN 13:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 15 01 JAN 14:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 16 01 JAN 15:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 17 01 JAN 16:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 18 01 JAN 17:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 19 01 JAN 18:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 20 01 JAN 19:00 105003 105003 0 105003 105003 0.00 0 0.00 0.00 0 0 0 0 2000 0 2000 2000 2100 0 2100 2100 0 0 0 0 0 0 0 0 100 0 100 100 + 21 01 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 50.00 0 50.00 50.00 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/lp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/lp/0/details-hourly.txt new file mode 100644 index 00000000..e5e8b357 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/lp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2000 0 2 0 + 12 01 JAN 11:00 2000 0 2 0 + 13 01 JAN 12:00 2050 0 2.05 0 + 14 01 JAN 13:00 2000 0 2 0 + 15 01 JAN 14:00 2000 0 2 0 + 16 01 JAN 15:00 2000 0 2 0 + 17 01 JAN 16:00 2000 0 2 0 + 18 01 JAN 17:00 2000 0 2 0 + 19 01 JAN 18:00 2000 0 2 0 + 20 01 JAN 19:00 2000 0 2 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/lp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/lp/0/values-hourly.txt new file mode 100644 index 00000000..82750cfb --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/lp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 29 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 12 01 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 13 01 JAN 12:00 105053 105053 0 105053 105053 0 0 0 0 2050 0 2050 2050 2100 0 2100 2100 0 0 0 0 0 0 0 0 0 0 0 0 + 14 01 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 15 01 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 16 01 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 17 01 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 18 01 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 19 01 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 20 01 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 21 01 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/milp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/milp/0/details-hourly.txt new file mode 100644 index 00000000..7c87451d --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/milp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2000 0 2 0 + 12 01 JAN 11:00 2000 0 2 0 + 13 01 JAN 12:00 2100 0 3 0 + 14 01 JAN 13:00 2000 0 2 0 + 15 01 JAN 14:00 2000 0 2 0 + 16 01 JAN 15:00 2000 0 2 0 + 17 01 JAN 16:00 2000 0 2 0 + 18 01 JAN 17:00 2000 0 2 0 + 19 01 JAN 18:00 2000 0 2 0 + 20 01 JAN 19:00 2000 0 2 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster/milp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster/milp/0/values-hourly.txt new file mode 100644 index 00000000..bec4b561 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster/milp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 29 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 12 01 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 13 01 JAN 12:00 105053 105053 0 105053 105053 0 0 0 0 2050 0 2050 2050 2100 0 2100 2100 0 0 0 0 0 0 0 0 50 0 50 50 + 14 01 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 15 01 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 16 01 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 17 01 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 18 01 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 19 01 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 20 01 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 21 01 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index ccaf2654..3d83a35b 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -18,6 +18,11 @@ from andromede.simulation import OutputValues from andromede.study import ConstantData, TimeScenarioSeriesData +from andromede.thermal_heuristic.data import ( + OutputIndexes, + OutputValuesParameters, + check_output_values, +) from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, @@ -67,41 +72,19 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL assert problem.solver.Objective().Value() == 16805387 - output = OutputValues(problem) - assert output.component("G").var("generation").value == [ - [ - pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_on").value == [ - [ - pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_start").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_stop").value == [ - [ - pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] - - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) - for time_step in range(number_hours) - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + check_output_values( + problem, + OutputValuesParameters( + mode="milp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=OutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ), + ) def test_lp_version() -> None: @@ -145,38 +128,19 @@ def test_lp_version() -> None: assert status == problem.solver.OPTIMAL assert problem.solver.Objective().Value() == pytest.approx(16802840.55) - output = OutputValues(problem) - assert output.component("G").var("generation").value == [ - [ - pytest.approx(2000.0) if time_step != 12 else 2050.0 - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_on").value == [ - [ - pytest.approx(2) if time_step != 12 else pytest.approx(2050 / 1000) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_start").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(0.05) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_stop").value == [ - [ - pytest.approx(0.0) if time_step != 13 else pytest.approx(0.05) - for time_step in range(number_hours) - ] - ] - - assert output.component("S").var("spillage").value == [ - [pytest.approx(0.0)] * number_hours - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + check_output_values( + problem, + OutputValuesParameters( + mode="lp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=OutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ), + ) def test_accurate_heuristic() -> None: @@ -254,41 +218,19 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL assert problem_optimization_2.solver.Objective().Value() == 16805387 - output = OutputValues(problem_optimization_2) - assert output.component("G").var("generation").value == [ - [ - pytest.approx(2000.0) if time_step != 12 else pytest.approx(2100.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_on").value == [ - [ - pytest.approx(2.0) if time_step != 12 else pytest.approx(3.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_start").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] - assert output.component("G").var("nb_stop").value == [ - [ - pytest.approx(0.0) if time_step != 13 else pytest.approx(1.0) - for time_step in range(number_hours) - ] - ] - - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0) - for time_step in range(number_hours) - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + check_output_values( + problem_optimization_2, + OutputValuesParameters( + mode="accurate", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=OutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 + ), + ), + ) def test_fast_heuristic() -> None: @@ -369,28 +311,16 @@ def test_fast_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) - output = OutputValues(problem_optimization_2) - assert output.component("G").var("generation").value == [ - [ - ( - pytest.approx(2100.0) - if time_step in [t for t in range(10, 20)] - else pytest.approx(2000.0) - ) - for time_step in range(number_hours) - ] - ] - - assert output.component("S").var("spillage").value == [ - [ - ( - pytest.approx(100.0) - if time_step in [t for t in range(10, 20) if t != 12] - else (pytest.approx(0.0) if time_step != 12 else pytest.approx(50.0)) - ) - for time_step in range(number_hours) - ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [pytest.approx(0.0)] * number_hours - ] + check_output_values( + problem_optimization_2, + OutputValuesParameters( + mode="fast", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=OutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 + ), + ), + ) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 15d166eb..5e47b41d 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -79,8 +79,7 @@ def test_accurate_heuristic() -> None: expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster{j+1}.txt" ) - for time_step in range(number_hours): - assert nb_on_heuristic[time_step, 0] == expected_output[time_step] + assert nb_on_heuristic[:, 0] == [pytest.approx(x) for x in expected_output] def test_fast_heuristic() -> None: @@ -109,7 +108,6 @@ def test_fast_heuristic() -> None: expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" ) - for time_step in range(number_hours): - assert mingen_heuristic.values[time_step, 0] == pytest.approx( - expected_output[time_step] - ) + assert mingen_heuristic.values[:, 0] == [ + pytest.approx(x) for x in expected_output + ] diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 9f5631c5..0d8a10c7 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -19,14 +19,13 @@ import pytest from andromede.simulation import OutputValues -from andromede.study import ( - ConstantData, - TimeIndex, - TimeScenarioSeriesData, - TimeSeriesData, -) +from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.data import check_output_values +from andromede.thermal_heuristic.data import ( + OutputIndexes, + OutputValuesParameters, + check_output_values, +) from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, @@ -38,6 +37,9 @@ def test_milp_version() -> None: """ """ number_hours = 168 scenarios = 2 + output_indexes = OutputIndexes( + idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 + ) for scenario in range(scenarios): for week in range(2): @@ -63,10 +65,14 @@ def test_milp_version() -> None: check_output_values( problem, - "milp", - week, - scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", + OutputValuesParameters( + mode="milp", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ), ) expected_cost = [[78933742, 102103587], [17472101, 17424769]] @@ -80,6 +86,10 @@ def test_accurate_heuristic() -> None: Solve the same problem as before with the heuristic accurate of Antares """ + output_indexes = OutputIndexes( + idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 + ) + number_hours = 168 scenarios = 2 @@ -167,10 +177,14 @@ def test_accurate_heuristic() -> None: check_output_values( problem_optimization_2, - "accurate", - week, - scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", + OutputValuesParameters( + mode="accurate", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ), ) expected_cost = [ @@ -186,6 +200,9 @@ def test_fast_heuristic() -> None: """ Solve the same problem as before with the heuristic fast of Antares """ + output_indexes = OutputIndexes( + idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 + ) number_hours = 168 scenarios = 2 @@ -247,10 +264,14 @@ def test_fast_heuristic() -> None: check_output_values( problem_optimization_2, - "fast", - week, - scenario, - dir_path="data/thermal_heuristic_three_clusters", + OutputValuesParameters( + mode="fast", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ), ) expected_cost = [ From 8067cc865650186d886d15c763164fd575249a0e Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 2 Jul 2024 17:47:12 +0200 Subject: [PATCH 39/93] More tests on data --- src/andromede/thermal_heuristic/data.py | 176 +++++++++--------- ...st_resolution_with_differents_scenarios.py | 2 +- .../test_thermal_heuristic_one_cluster.py | 88 ++++----- .../test_thermal_heuristic_six_clusters.py | 6 +- .../test_thermal_heuristic_three_clusters.py | 66 +++---- .../unittests/thermal_heuristic/test_data.py | 50 +++++ 6 files changed, 214 insertions(+), 174 deletions(-) create mode 100644 tests/unittests/thermal_heuristic/test_data.py diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 8e5e522a..d8720c59 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -11,6 +11,7 @@ # This file is part of the Antares project. from dataclasses import dataclass +from math import ceil import numpy as np import pandas as pd @@ -22,15 +23,15 @@ def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta), index=max_units.index + np.roll(max_units.values, delta, axis=0), index=max_units.index ) end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1), index=max_units.index + np.roll(max_units.values, 1, axis=0), index=max_units.index ) end_failures.where(end_failures > 0, 0, inplace=True) for j in range(delta): nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j), index=end_failures.index + np.roll(end_failures.values, j, axis=0), index=end_failures.index ) return nb_units_max_min_down_time @@ -38,7 +39,8 @@ def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.Da def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1), index=max_units.index) - max_units + pd.DataFrame(np.roll(max_units.values, 1, axis=0), index=max_units.index) + - max_units ) max_failures.where(max_failures > 0, 0, inplace=True) return max_failures @@ -48,6 +50,7 @@ def get_max_unit( pmax: float, units: float, max_generating: pd.DataFrame ) -> pd.DataFrame: max_units = max_generating / pmax + max_units = max_units.applymap(ceil) max_units.where(max_units < units, units, inplace=True) return max_units @@ -72,100 +75,99 @@ def get_failures_for_cluster( @dataclass -class OutputIndexes: +class ExpectedOutputIndexes: idx_generation: int idx_nodu: int idx_spillage: int idx_unsupplied: int -@dataclass -class OutputValuesParameters: - mode: str - week: int - scenario: int - dir_path: str - list_cluster: list[str] - output_idx: OutputIndexes - - -def check_output_values( - problem: OptimizationProblem, parameters: OutputValuesParameters -) -> None: - output = OutputValues(problem) - - expected_output_clusters, expected_output_general = read_expected_output( - parameters.mode, parameters.scenario, parameters.dir_path, parameters.week - ) - - for i, cluster in enumerate(parameters.list_cluster): - check_output_cluster( - parameters.mode, - output, - expected_output_clusters, - idx_generation=parameters.output_idx.idx_generation + i, - idx_nodu=parameters.output_idx.idx_nodu + i, - cluster_id=cluster, +class ExpectedOutput: + def __init__( + self, + mode: str, + week: int, + scenario: int, + dir_path: str, + list_cluster: list[str], + output_idx: ExpectedOutputIndexes, + ): + self.mode = mode + self.list_cluster = list_cluster + self.output_idx = output_idx + self.output_cluster, self.output_general = self.read_expected_output( + scenario, dir_path, week ) - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(float(line[parameters.output_idx.idx_spillage])) - for line in expected_output_general + def check_output_values(self, problem: OptimizationProblem) -> None: + output = OutputValues(problem) + + for i, cluster in enumerate(self.list_cluster): + self.check_output_cluster( + output, + cluster_id=cluster, + idx_generation=self.output_idx.idx_generation + i, + idx_nodu=self.output_idx.idx_nodu + i, + ) + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(float(line[self.output_idx.idx_spillage])) + for line in self.output_general + ] ] - ] - assert output.component("U").var("unsupplied_energy").value == [ - [ - pytest.approx(float(line[parameters.output_idx.idx_unsupplied])) - for line in expected_output_general - ] - ] - - -def check_output_cluster( - mode: str, - output: OutputValues, - expected_output_clusters: list[list[str]], - idx_generation: int, - idx_nodu: int, - cluster_id: str, -) -> None: - assert output.component(cluster_id).var("generation").value == [ - [ - pytest.approx(float(line[idx_generation])) - for line in expected_output_clusters + assert output.component("U").var("unsupplied_energy").value == [ + [ + pytest.approx(float(line[self.output_idx.idx_unsupplied])) + for line in self.output_general + ] ] - ] - if mode != "fast": - assert output.component(cluster_id).var("nb_on").value == [ - [pytest.approx(float(line[idx_nodu])) for line in expected_output_clusters] - ] - -def read_expected_output( - mode: str, scenario: int, dir_path: str, week: int -) -> tuple[list[list[str]], list[list[str]]]: - folder_name = "tests/functional/" + dir_path + "/" + mode + "/" + str(scenario) + def check_output_cluster( + self, + output: OutputValues, + idx_generation: int, + idx_nodu: int, + cluster_id: str, + ) -> None: + assert output.component(cluster_id).var("generation").value == [ + [pytest.approx(float(line[idx_generation])) for line in self.output_cluster] + ] + if self.mode != "fast": + assert output.component(cluster_id).var("nb_on").value == [ + [pytest.approx(float(line[idx_nodu])) for line in self.output_cluster] + ] + + def read_expected_output( + self, scenario: int, dir_path: str, week: int + ) -> tuple[list[list[str]], list[list[str]]]: + folder_name = ( + "tests/functional/" + dir_path + "/" + self.mode + "/" + str(scenario) + ) - expected_output_clusters_file = open( - folder_name + "/details-hourly.txt", - "r", - ) - expected_output_clusters = expected_output_clusters_file.readlines() + expected_output_clusters_file = open( + folder_name + "/details-hourly.txt", + "r", + ) + expected_output_clusters = expected_output_clusters_file.readlines() - expected_output_general_file = open( - folder_name + "/values-hourly.txt", - "r", - ) - expected_output_general = expected_output_general_file.readlines() - return ( - [ - line.strip().split("\t") - for line in expected_output_clusters[168 * week + 7 : 168 * week + 7 + 168] - ], - [ - line.strip().split("\t") - for line in expected_output_general[168 * week + 7 : 168 * week + 7 + 168] - ], - ) + expected_output_general_file = open( + folder_name + "/values-hourly.txt", + "r", + ) + expected_output_general = expected_output_general_file.readlines() + return ( + [ + line.strip().split("\t") + for line in expected_output_clusters[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ], + [ + line.strip().split("\t") + for line in expected_output_general[ + 168 * week + 7 : 168 * week + 7 + 168 + ] + ], + ) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index afd931c4..70ef2249 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -421,7 +421,7 @@ def generate_database( output = {} for scenario in scenarios: output_file = open( - "tests/functional/data_complex_case/milp/" + "tests/functional/data/thermal_heuristic_three_clusters/milp/" + str(scenario) + "/values-hourly.txt", "r", diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 3d83a35b..b661d93e 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -18,11 +18,7 @@ from andromede.simulation import OutputValues from andromede.study import ConstantData, TimeScenarioSeriesData -from andromede.thermal_heuristic.data import ( - OutputIndexes, - OutputValuesParameters, - check_output_values, -) +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, @@ -72,19 +68,17 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL assert problem.solver.Objective().Value() == 16805387 - check_output_values( - problem, - OutputValuesParameters( - mode="milp", - week=0, - scenario=0, - dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], - output_idx=OutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 - ), + expected_output = ExpectedOutput( + mode="milp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) + expected_output.check_output_values(problem) def test_lp_version() -> None: @@ -128,19 +122,19 @@ def test_lp_version() -> None: assert status == problem.solver.OPTIMAL assert problem.solver.Objective().Value() == pytest.approx(16802840.55) - check_output_values( - problem, - OutputValuesParameters( - mode="lp", - week=0, - scenario=0, - dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], - output_idx=OutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 - ), + expected_output = ExpectedOutput( + mode="lp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) + expected_output.check_output_values( + problem, + ) def test_accurate_heuristic() -> None: @@ -218,19 +212,17 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL assert problem_optimization_2.solver.Objective().Value() == 16805387 - check_output_values( - problem_optimization_2, - OutputValuesParameters( - mode="accurate", - week=0, - scenario=0, - dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], - output_idx=OutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 - ), + expected_output = ExpectedOutput( + mode="accurate", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) + expected_output.check_output_values(problem_optimization_2) def test_fast_heuristic() -> None: @@ -311,16 +303,14 @@ def test_fast_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) - check_output_values( - problem_optimization_2, - OutputValuesParameters( - mode="fast", - week=0, - scenario=0, - dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], - output_idx=OutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 - ), + expected_output = ExpectedOutput( + mode="fast", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_one_cluster", + list_cluster=["G"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) + expected_output.check_output_values(problem_optimization_2) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 5e47b41d..3f2ac4fa 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -79,7 +79,9 @@ def test_accurate_heuristic() -> None: expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster{j+1}.txt" ) - assert nb_on_heuristic[:, 0] == [pytest.approx(x) for x in expected_output] + assert list(nb_on_heuristic[:, 0]) == [ + pytest.approx(x) for x in expected_output + ] def test_fast_heuristic() -> None: @@ -108,6 +110,6 @@ def test_fast_heuristic() -> None: expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" ) - assert mingen_heuristic.values[:, 0] == [ + assert list(mingen_heuristic.values[:, 0]) == [ pytest.approx(x) for x in expected_output ] diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 0d8a10c7..f49834fa 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -21,11 +21,7 @@ from andromede.simulation import OutputValues from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.data import ( - OutputIndexes, - OutputValuesParameters, - check_output_values, -) +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ( create_main_problem, create_problem_accurate_heuristic, @@ -37,7 +33,7 @@ def test_milp_version() -> None: """ """ number_hours = 168 scenarios = 2 - output_indexes = OutputIndexes( + output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 ) @@ -63,16 +59,16 @@ def test_milp_version() -> None: assert status == problem.solver.OPTIMAL - check_output_values( + expected_output = ExpectedOutput( + mode="milp", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ) + expected_output.check_output_values( problem, - OutputValuesParameters( - mode="milp", - week=week, - scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], - output_idx=output_indexes, - ), ) expected_cost = [[78933742, 102103587], [17472101, 17424769]] @@ -86,7 +82,7 @@ def test_accurate_heuristic() -> None: Solve the same problem as before with the heuristic accurate of Antares """ - output_indexes = OutputIndexes( + output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) @@ -175,16 +171,16 @@ def test_accurate_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL - check_output_values( + expected_output = ExpectedOutput( + mode="accurate", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ) + expected_output.check_output_values( problem_optimization_2, - OutputValuesParameters( - mode="accurate", - week=week, - scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], - output_idx=output_indexes, - ), ) expected_cost = [ @@ -200,7 +196,7 @@ def test_fast_heuristic() -> None: """ Solve the same problem as before with the heuristic fast of Antares """ - output_indexes = OutputIndexes( + output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) @@ -262,16 +258,16 @@ def test_fast_heuristic() -> None: assert status == problem_optimization_2.solver.OPTIMAL - check_output_values( + expected_output = ExpectedOutput( + mode="fast", + week=week, + scenario=scenario, + dir_path="data/thermal_heuristic_three_clusters", + list_cluster=["G1", "G2", "G3"], + output_idx=output_indexes, + ) + expected_output.check_output_values( problem_optimization_2, - OutputValuesParameters( - mode="fast", - week=week, - scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], - output_idx=output_indexes, - ), ) expected_cost = [ diff --git a/tests/unittests/thermal_heuristic/test_data.py b/tests/unittests/thermal_heuristic/test_data.py new file mode 100644 index 00000000..608015f2 --- /dev/null +++ b/tests/unittests/thermal_heuristic/test_data.py @@ -0,0 +1,50 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +import numpy as np +import pandas as pd + +from andromede.thermal_heuristic.data import ( + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, +) + + +def test_get_max_unit() -> None: + max_generating = pd.DataFrame([0, 10, 10, 15, 20, 5, 25]) + + max_unit = get_max_unit(pmax=10, units=2, max_generating=max_generating) + + assert list(max_unit.values) == [0, 1, 1, 2, 2, 1, 2] + + +def test_get_max_failures() -> None: + max_unit = pd.DataFrame( + np.transpose([[0, 1, 1, 2, 2, 1, 2], [1, 1, 1, 2, 2, 1, 0]]) + ) + + max_failures = get_max_failures(max_unit) + + assert list(max_failures.values[:, 0]) == [2, 0, 0, 0, 0, 1, 0] + assert list(max_failures.values[:, 1]) == [0, 0, 0, 0, 0, 1, 1] + + +def test_get_max_unit_for_min_down_time() -> None: + max_unit = pd.DataFrame( + np.transpose([[0, 1, 1, 2, 2, 1, 2], [1, 1, 1, 2, 2, 1, 0]]) + ) + + max_unit_for_min_down_time = get_max_unit_for_min_down_time(2, max_unit) + + assert list(max_unit_for_min_down_time.values[:, 0]) == [2, 3, 1, 2, 2, 2, 3] + assert list(max_unit_for_min_down_time.values[:, 1]) == [2, 1, 1, 2, 2, 2, 2] From c1408fa984b28029c3edc85d1f222d8b1d181ceb Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 3 Jul 2024 08:19:18 +0200 Subject: [PATCH 40/93] Refactor model --- src/andromede/thermal_heuristic/model.py | 465 ++++++++++-------- src/andromede/thermal_heuristic/problem.py | 16 +- .../unittests/thermal_heuristic/test_model.py | 49 ++ 3 files changed, 304 insertions(+), 226 deletions(-) create mode 100644 tests/unittests/thermal_heuristic/test_model.py diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 81427837..10c1f73e 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -10,13 +10,7 @@ # # This file is part of the Antares project. -from math import ceil -from typing import List - -import numpy as np -import ortools.linear_solver.pywraplp as pywraplp -import pandas as pd -import pytest +from typing import List, Optional from andromede.expression import ( ExpressionNode, @@ -27,36 +21,18 @@ visit, ) from andromede.expression.indexing_structure import IndexingStructure -from andromede.libs.standard import ( - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, +from andromede.model import ( + Model, + ModelPort, + Variable, + float_parameter, + float_variable, + model, ) -from andromede.model import Model, float_parameter, float_variable, model from andromede.model.constraint import Constraint -from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.model import PortFieldDefinition +from andromede.model.parameter import Parameter, float_parameter, int_parameter from andromede.model.variable import ValueType, float_variable, int_variable -from andromede.simulation import ( - BlockBorderManagement, - OutputValues, - TimeBlock, - build_problem, -) -from andromede.simulation.optimization import OptimizationProblem -from andromede.study import ( - ConstantData, - DataBase, - Network, - Node, - PortRef, - TimeIndex, - TimeScenarioSeriesData, - TimeSeriesData, - create_component, -) -from andromede.study.data import AbstractDataStructure -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP CONSTANT = IndexingStructure(False, False) TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) @@ -65,41 +41,68 @@ CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -def get_thermal_cluster_accurate_model(initial_model: Model) -> Model: - THERMAL_CLUSTER_MODEL_LP = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ +class ModelEditer: + def __init__(self, initial_model: Model) -> None: + self.initial_model = initial_model + + def keep_id(self) -> str: + return self.initial_model.id + + def keep_parameters(self) -> List[Parameter]: + return [p for p in self.initial_model.parameters.values()] + + def keep_ports(self) -> List[ModelPort]: + return [p for p in self.initial_model.ports.values()] + + def keep_port_fields_definitions(self) -> List[PortFieldDefinition]: + return [p for p in self.initial_model.port_fields_definitions.values()] + + def keep_constraints(self) -> List[Constraint]: + return [c for c in self.initial_model.constraints.values()] + + def keep_objective_operational_contribution(self) -> Optional[ExpressionNode]: + return self.initial_model.objective_operational_contribution + + def linearize_variables(self) -> List[Variable]: + return [ float_variable( v.name, lower_bound=v.lower_bound, upper_bound=v.upper_bound, structure=v.structure, ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[c for c in initial_model.constraints.values()], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_LP - - -def get_thermal_cluster_fast_model(initial_model: Model) -> Model: - integer_variables = [ - v.name - for v in initial_model.variables.values() - if v.data_type == ValueType.INTEGER - ] - - THERMAL_CLUSTER_MODEL_FAST = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ + for v in self.initial_model.variables.values() + ] + + def variable_in_constraint(self, c: Constraint, variables: List[str]) -> bool: + res = False + if self.variable_in_expression(c.lower_bound, variables): + res = True + elif self.variable_in_expression(c.expression, variables): + res = True + elif self.variable_in_expression(c.upper_bound, variables): + res = True + return res + + def variable_in_expression( + self, expr: ExpressionNode, variables: List[str] + ) -> bool: + res = False + str_expr = visit(expr, PrinterVisitor()) + for v in variables: + if v in str_expr: + res = True + return res + + def get_name_integer_variables(self) -> List[str]: + return [ + v.name + for v in self.initial_model.variables.values() + if v.data_type == ValueType.INTEGER + ] + + def fix_integer_variables_to_zero_and_keep_others(self) -> List[Variable]: + return [ float_variable( v.name, lower_bound=( @@ -110,163 +113,189 @@ def get_thermal_cluster_fast_model(initial_model: Model) -> Model: ), structure=v.structure, ) - for v in initial_model.variables.values() - ], - ports=[p for p in initial_model.ports.values()], - port_fields_definitions=[ - p for p in initial_model.port_fields_definitions.values() - ], - constraints=[ - c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, integer_variables)) - ], - objective_operational_contribution=initial_model.objective_operational_contribution, - ) - - return THERMAL_CLUSTER_MODEL_FAST - - -def variable_in_constraint(c: Constraint, variables: List[str]) -> bool: - res = False - if variable_in_expression(c.lower_bound, variables): - res = True - elif variable_in_expression(c.expression, variables): - res = True - elif variable_in_expression(c.upper_bound, variables): - res = True - return res - - -def variable_in_expression(expr: ExpressionNode, variables: List[str]) -> bool: - res = False - str_expr = visit(expr, PrinterVisitor()) - for v in variables: - if v in str_expr: - res = True - return res - - -def get_accurate_heuristic_model(initial_model: Model) -> Model: - generation_variable = ["generation"] + for v in self.initial_model.variables.values() + ] - THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id=initial_model.id, - parameters=[p for p in initial_model.parameters.values()], - variables=[ - v - for v in initial_model.variables.values() - if v.name not in generation_variable - ], - constraints=[ + def filter_constraints_on_variable(self, variables: List[str]) -> List[Constraint]: + return [ c - for c in initial_model.constraints.values() - if not (variable_in_constraint(c, generation_variable)) - ], - objective_operational_contribution=(var("nb_on")).sum().expec(), - ) - return THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC - - -def get_model_fast_heuristic(Q: int, delta: int) -> Model: - BLOCK_MODEL_FAST_HEURISTIC = model( - id="BLOCK_FAST", - parameters=[ - float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), - float_parameter("n_max", CONSTANT), - ] - + [ - int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(delta) + for c in self.initial_model.constraints.values() + if not (self.variable_in_constraint(c, variables)) ] - + [ - int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(delta) - ], - variables=[ - float_variable( - f"n_block_{k}", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - for k in range(Q) - ] - + [ - float_variable( - "n_ajust", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=CONSTANT_PER_SCENARIO, - ) - ] - + [ - int_variable( - f"t_ajust_{h}", - lower_bound=literal(0), - upper_bound=literal(1), - structure=CONSTANT_PER_SCENARIO, - ) - for h in range(delta) - ] - + [ - float_variable( - "n", - lower_bound=literal(0), - upper_bound=param("n_max"), - structure=TIME_AND_SCENARIO_FREE, - ) - ], - constraints=[ - Constraint( - f"Definition of n block {k} for {h}", - var(f"n_block_{k}") - >= param("n_guide") * param(f"alpha_{k}_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n ajust for {h}", - var(f"n_ajust") - >= param("n_guide") * param(f"alpha_ajust_{h}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to block {k} for {h}", - var(f"n") - >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for k in range(Q) - for h in range(delta) - ] - + [ - Constraint( - f"Definition of n with relation to ajust for {h}", - var(f"n") - >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), - ) - for h in range(delta) + + def filter_variables(self, variables: List[str]) -> List[Variable]: + return [ + v for v in self.initial_model.variables.values() if v.name not in variables ] - + [ - Constraint( - "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) - == literal(1), - ) - ], - objective_operational_contribution=(var("n")).sum().expec() - + sum( + + +class AccurateModelBuilder(ModelEditer): + def __init__(self, initial_model: Model) -> None: + super().__init__(initial_model) + THERMAL_CLUSTER_MODEL_LP = model( + id=self.keep_id(), + parameters=self.keep_parameters(), + variables=self.linearize_variables(), + ports=self.keep_ports(), + port_fields_definitions=self.keep_port_fields_definitions(), + constraints=self.keep_constraints(), + objective_operational_contribution=self.keep_objective_operational_contribution(), + ) + self.model = THERMAL_CLUSTER_MODEL_LP + + +class FastModelBuilder(ModelEditer): + def __init__(self, initial_model: Model) -> None: + super().__init__(initial_model) + integer_variables = self.get_name_integer_variables() + + THERMAL_CLUSTER_MODEL_FAST = model( + id=self.keep_id(), + parameters=self.keep_parameters(), + variables=self.fix_integer_variables_to_zero_and_keep_others(), + ports=self.keep_ports(), + port_fields_definitions=self.keep_port_fields_definitions(), + constraints=self.filter_constraints_on_variable(integer_variables), + objective_operational_contribution=self.keep_objective_operational_contribution(), + ) + + self.model = THERMAL_CLUSTER_MODEL_FAST + + +class HeuristicAccurateModelBuilder(ModelEditer): + def __init__(self, initial_model: Model) -> None: + super().__init__(initial_model) + generation_variable = ["generation"] + + THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( + id=self.keep_id(), + parameters=self.keep_parameters(), + variables=self.filter_variables(generation_variable), + constraints=self.filter_constraints_on_variable(generation_variable), + objective_operational_contribution=(var("nb_on")).sum().expec(), + ) + self.model = THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC + + +class HeuristicFastModelBuilder: + def __init__(self, Q: int, delta: int): + BLOCK_MODEL_FAST_HEURISTIC = model( + id="BLOCK_FAST", + parameters=self.get_parameters(Q, delta), + variables=self.get_variables(Q, delta), + constraints=self.get_constraints(Q, delta), + objective_operational_contribution=self.get_objective_operational_contribution( + delta + ), + ) + self.model = BLOCK_MODEL_FAST_HEURISTIC + + def get_objective_operational_contribution(self, delta: int) -> ExpressionNode: + return (var("n")).sum().expec() + sum( [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] - ).expec(), # type:ignore - ) - return BLOCK_MODEL_FAST_HEURISTIC + ).expec() # type:ignore + + def get_constraints(self, Q: int, delta: int) -> List[Constraint]: + return ( + [ + Constraint( + f"Definition of n block {k} for {h}", + var(f"n_block_{k}") + >= param("n_guide") * param(f"alpha_{k}_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n ajust for {h}", + var(f"n_ajust") + >= param("n_guide") * param(f"alpha_ajust_{h}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to block {k} for {h}", + var(f"n") + >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for k in range(Q) + for h in range(delta) + ] + + [ + Constraint( + f"Definition of n with relation to ajust for {h}", + var(f"n") + >= param(f"alpha_ajust_{h}") * var(f"n_ajust") + - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), + ) + for h in range(delta) + ] + + [ + Constraint( + "Choose one t ajust", + literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + == literal(1), + ) + ] + ) + + def get_variables(self, Q: int, delta: int) -> List[Variable]: + return ( + [ + float_variable( + f"n_block_{k}", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + for k in range(Q) + ] + + [ + float_variable( + "n_ajust", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=CONSTANT_PER_SCENARIO, + ) + ] + + [ + int_variable( + f"t_ajust_{h}", + lower_bound=literal(0), + upper_bound=literal(1), + structure=CONSTANT_PER_SCENARIO, + ) + for h in range(delta) + ] + + [ + float_variable( + "n", + lower_bound=literal(0), + upper_bound=param("n_max"), + structure=TIME_AND_SCENARIO_FREE, + ) + ] + ) + + def get_parameters(self, Q: int, delta: int) -> List[Parameter]: + return ( + [ + float_parameter("n_guide", TIME_AND_SCENARIO_FREE), + float_parameter("delta", CONSTANT), + float_parameter("n_max", CONSTANT), + ] + + [ + int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for k in range(Q) + for h in range(delta) + ] + + [ + int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) + for h in range(delta) + ] + ) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 0867d6aa..34053808 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -58,10 +58,10 @@ get_max_unit_for_min_down_time, ) from andromede.thermal_heuristic.model import ( - get_accurate_heuristic_model, - get_model_fast_heuristic, - get_thermal_cluster_accurate_model, - get_thermal_cluster_fast_model, + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -203,9 +203,9 @@ def get_network_and_database( def choose_thermal_model(lp_relaxation: bool, fast: bool) -> Model: if fast: - thermal_model = get_thermal_cluster_fast_model(THERMAL_CLUSTER_MODEL_MILP) + thermal_model = FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model elif lp_relaxation: - thermal_model = get_thermal_cluster_accurate_model(THERMAL_CLUSTER_MODEL_MILP) + thermal_model = AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model else: thermal_model = THERMAL_CLUSTER_MODEL_MILP return thermal_model @@ -219,7 +219,7 @@ def create_problem_accurate_heuristic( week: int, scenario: int, ) -> OptimizationProblem: - thermal_model = get_accurate_heuristic_model(THERMAL_CLUSTER_MODEL_MILP) + thermal_model = HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model lib = library( port_types=[], @@ -362,7 +362,7 @@ def create_problem_fast_heuristic( time_block = TimeBlock(1, [i for i in range(number_hours)]) block = create_component( - model=get_model_fast_heuristic(number_blocks, delta=delta), id="B" + model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, id="B" ) network = Network("test") diff --git a/tests/unittests/thermal_heuristic/test_model.py b/tests/unittests/thermal_heuristic/test_model.py new file mode 100644 index 00000000..eb0efa81 --- /dev/null +++ b/tests/unittests/thermal_heuristic/test_model.py @@ -0,0 +1,49 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from andromede.expression import literal, param, var +from andromede.model import model +from andromede.model.constraint import Constraint +from andromede.thermal_heuristic.model import ModelEditer + + +def test_variable_in_expression() -> None: + model_editer = ModelEditer(model("model")) + + expression_1 = var("x").sum() + var("y") + expression_2 = ( + var("z").shift(-1) + var("z") + literal(0) * var("y") + var("x").expec() + ) + + assert model_editer.variable_in_expression(expression_1, ["x"]) is True + assert model_editer.variable_in_expression(expression_1, ["y"]) is True + assert model_editer.variable_in_expression(expression_1, ["z"]) is False + assert model_editer.variable_in_expression(expression_2, ["x"]) is True + assert model_editer.variable_in_expression(expression_2, ["y"]) is True + assert model_editer.variable_in_expression(expression_2, ["z"]) is True + + +def test_variable_in_constraint() -> None: + model_editer = ModelEditer(model("model")) + + expression_1 = var("x").sum() + var("y") + expression_2 = ( + var("z").shift(-1) + var("z") + literal(0) * var("y") + var("x").expec() + ) + expression_3 = var("y") - var("y") + param("a") + constraint = Constraint("cst", expression_1 <= expression_2 <= expression_3) + + assert model_editer.variable_in_constraint(constraint, ["x"]) is True + assert model_editer.variable_in_constraint(constraint, ["y"]) is True + assert model_editer.variable_in_constraint(constraint, ["z"]) is True + assert model_editer.variable_in_constraint(constraint, ["xy"]) is False + assert model_editer.variable_in_constraint(constraint, ["a"]) is True From 17c76e6e67fb9337c1ed4f5a4ce8217b557b59b1 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 3 Jul 2024 10:05:29 +0200 Subject: [PATCH 41/93] Refactor problem.py --- src/andromede/thermal_heuristic/data.py | 19 -- src/andromede/thermal_heuristic/problem.py | 202 +++++++++++------- .../test_thermal_heuristic_one_cluster.py | 1 - .../test_thermal_heuristic_six_clusters.py | 1 - .../test_thermal_heuristic_three_clusters.py | 1 - 5 files changed, 120 insertions(+), 104 deletions(-) diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index d8720c59..7cd237fc 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -55,25 +55,6 @@ def get_max_unit( return max_units -def get_failures_for_cluster( - week: int, scenario: int, cluster: str, number_hours: int, dir_path: str -) -> pd.DataFrame: - input_file = np.loadtxt( - "tests/functional/" + dir_path + f"/series_{cluster}.txt", - delimiter="\t", - ) - - failures_data = pd.DataFrame( - data=input_file[ - number_hours * week : number_hours * week + number_hours, scenario - ], - index=[i for i in range(number_hours)], - columns=[0], - ) - - return failures_data - - @dataclass class ExpectedOutputIndexes: idx_generation: int diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 34053808..3d6dec08 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -11,7 +11,7 @@ # This file is part of the Antares project. from pathlib import Path -from typing import Dict, List, Optional +from typing import Dict, Iterable, List, Optional import numpy as np import ortools.linear_solver.pywraplp as pywraplp @@ -24,7 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.model import Model +from andromede.model import Model, PortType from andromede.model.library import Library, library from andromede.simulation import ( BlockBorderManagement, @@ -37,22 +37,19 @@ ConstantData, DataBase, Network, - Node, - PortRef, TimeIndex, TimeScenarioSeriesData, TimeSeriesData, create_component, ) from andromede.study.data import AbstractDataStructure -from andromede.study.parsing import parse_yaml_components +from andromede.study.parsing import InputComponents, parse_yaml_components from andromede.study.resolve_components import ( build_data_base, build_network, resolve_components_and_cnx, ) from andromede.thermal_heuristic.data import ( - get_failures_for_cluster, get_max_failures, get_max_unit, get_max_unit_for_min_down_time, @@ -66,6 +63,36 @@ from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +def library_thermal_problem( + port_types: Iterable[PortType], + models: List[Model], + lp_relaxation: bool, + fast: bool, + initial_thermal_model: Model, +) -> Library: + thermal_model = edit_thermal_model(lp_relaxation, fast, initial_thermal_model) + lib = library( + port_types=port_types, + models=models + [thermal_model], + ) + return lib + + +# class ThermalProblemBuilder: + +# def __init__( +# self, +# lower_bound: Dict[str, AbstractDataStructure], +# number_hours: int, +# lp_relaxation: bool, +# fast: bool, +# data_dir: Path, +# week: int, +# scenario: int, +# ) -> None: +# pass + + def create_main_problem( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, @@ -74,64 +101,66 @@ def create_main_problem( data_dir: Path, week: int, scenario: int, + initial_thermal_model: Model = THERMAL_CLUSTER_MODEL_MILP, + port_types: List[PortType] = [BALANCE_PORT_TYPE], + models: List[Model] = [ + NODE_BALANCE_MODEL, + DEMAND_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], ) -> OptimizationProblem: - thermal_model = choose_thermal_model(lp_relaxation, fast) - - lib = library( - port_types=[BALANCE_PORT_TYPE], - models=[ - NODE_BALANCE_MODEL, - DEMAND_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - thermal_model, - ], + lib = library_thermal_problem( + port_types, models, lp_relaxation, fast, initial_thermal_model ) - network, database = get_network_and_database( + network = get_network(data_dir / "components.yml", lib) + + database = get_database( data_dir, - lib, "components.yml", - scenarios=[scenario], - timesteps=list(range(week * number_hours, (week + 1) * number_hours)), + [scenario], + list(range(week * number_hours, (week + 1) * number_hours)), + number_hours, + week, + scenario, + get_cluster_id(network, initial_thermal_model.id), ) - modify_parameters_of_cluster( - lower_bound, - database, - network, - THERMAL_CLUSTER_MODEL_MILP.id, - dir_path=data_dir, - number_hours=number_hours, - week=week, - scenario=scenario, + modify_lower_bound_of_cluster( + lower_bound, database, get_cluster_id(network, initial_thermal_model.id) ) - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - problem = build_problem( network, database, - time_block, - scenarios, + TimeBlock(1, [i for i in range(number_hours)]), + 1, border_management=BlockBorderManagement.CYCLE, ) return problem -def modify_parameters_of_cluster( +def modify_lower_bound_of_cluster( lower_bound: Dict[str, AbstractDataStructure], database: DataBase, - network: Network, - cluster_model_id: str, + list_cluster_id: List[str], +) -> None: + for cluster_id in list_cluster_id: + database.add_data(cluster_id, "nb_units_min", lower_bound[cluster_id]) + database.add_data(cluster_id, "min_generating", lower_bound[cluster_id]) + + +def complete_database_with_cluster_parameters( + database: DataBase, + list_cluster_id: List[str], dir_path: Path, number_hours: int, week: int, scenario: int, ) -> None: - for cluster_id in get_cluster_id(network, cluster_model_id): + for cluster_id in list_cluster_id: data = get_data( dir_path, "components.yml", @@ -152,18 +181,11 @@ def modify_parameters_of_cluster( nb_units_max_min_down_time = get_max_unit_for_min_down_time( int(max(data["d_min_up"], data["d_min_down"])), max_units ) - - database.add_data(cluster_id, "nb_units_min", lower_bound[cluster_id]) database.add_data( cluster_id, "nb_units_max", TimeScenarioSeriesData(max_units), ) - database.add_data( - cluster_id, - "max_generating", - TimeScenarioSeriesData(max_generating), - ) database.add_data( cluster_id, "max_failure", @@ -174,40 +196,61 @@ def modify_parameters_of_cluster( "nb_units_max_min_down_time", TimeScenarioSeriesData(nb_units_max_min_down_time), ) - database.add_data(cluster_id, "min_generating", lower_bound[cluster_id]) def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: return [c.id for c in network.components if c.model.id == cluster_model_id] -def get_network_and_database( +def get_database( data_dir: Path, - lib: Library, yml_file: str, scenarios: Optional[List[int]], timesteps: Optional[List[int]], -) -> tuple[Network, DataBase]: - compo_file = data_dir / yml_file + number_hours: int, + week: int, + scenario: int, + cluster_id: List[str], +) -> DataBase: + components_file = get_input_components(data_dir / yml_file) + database = build_data_base( + components_file, data_dir, scenarios=scenarios, timesteps=timesteps + ) - with compo_file.open() as c: - components_file = parse_yaml_components(c) + complete_database_with_cluster_parameters( + database, + list_cluster_id=cluster_id, + dir_path=data_dir, + number_hours=number_hours, + week=week, + scenario=scenario, + ) + + return database + + +def get_network(compo_file: Path, lib: Library) -> Network: + components_file = get_input_components(compo_file) components_input = resolve_components_and_cnx(components_file, lib) network = build_network(components_input) + return network - database = build_data_base( - components_file, data_dir, scenarios=scenarios, timesteps=timesteps - ) - return network, database +def get_input_components(compo_file: Path) -> InputComponents: + with compo_file.open() as c: + components_file = parse_yaml_components(c) + return components_file -def choose_thermal_model(lp_relaxation: bool, fast: bool) -> Model: + +def edit_thermal_model( + lp_relaxation: bool, fast: bool, initial_thermal_model: Model +) -> Model: if fast: - thermal_model = FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model + thermal_model = FastModelBuilder(initial_thermal_model).model elif lp_relaxation: - thermal_model = AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model + thermal_model = AccurateModelBuilder(initial_thermal_model).model else: - thermal_model = THERMAL_CLUSTER_MODEL_MILP + thermal_model = initial_thermal_model return thermal_model @@ -215,46 +258,41 @@ def create_problem_accurate_heuristic( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, data_dir: Path, - thermal_cluster: str, week: int, scenario: int, + initial_thermal_model: Model = THERMAL_CLUSTER_MODEL_MILP, ) -> OptimizationProblem: - thermal_model = HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model + thermal_model_builder = HeuristicAccurateModelBuilder(initial_thermal_model) lib = library( port_types=[], models=[ - thermal_model, + thermal_model_builder.model, ], ) - network, database = get_network_and_database( + network = get_network(data_dir / "components_heuristic.yml", lib) + + database = get_database( data_dir, - lib, "components_heuristic.yml", - scenarios=[scenario], - timesteps=list(range(week * number_hours, (week + 1) * number_hours)), + [scenario], + list(range(week * number_hours, (week + 1) * number_hours)), + number_hours, + week, + scenario, + get_cluster_id(network, initial_thermal_model.id), ) - modify_parameters_of_cluster( - lower_bound, - database, - network, - THERMAL_CLUSTER_MODEL_MILP.id, - dir_path=data_dir, - number_hours=number_hours, - week=week, - scenario=scenario, + modify_lower_bound_of_cluster( + lower_bound, database, get_cluster_id(network, initial_thermal_model.id) ) - time_block = TimeBlock(1, [i for i in range(number_hours)]) - scenarios = 1 - problem = build_problem( network, database, - time_block, - scenarios, + TimeBlock(1, [i for i in range(number_hours)]), + 1, border_management=BlockBorderManagement.CYCLE, ) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index b661d93e..7a99bdb7 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -176,7 +176,6 @@ def test_accurate_heuristic() -> None: {"G": n_guide}, number_hours, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - thermal_cluster="G", week=0, scenario=0, ) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 3f2ac4fa..376e3a30 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -63,7 +63,6 @@ def test_accurate_heuristic() -> None: }, number_hours, data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", - thermal_cluster=cluster, week=week, scenario=scenario, ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index f49834fa..9e5341b4 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -134,7 +134,6 @@ def test_accurate_heuristic() -> None: for th in ["G1", "G2", "G3"] }, number_hours, - thermal_cluster=g, week=week, scenario=scenario, data_dir=Path(__file__).parent From 0ad6401a49e523282100b887ea99aa221367723a Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 3 Jul 2024 17:11:19 +0200 Subject: [PATCH 42/93] Generic database --- src/andromede/simulation/optimization.py | 29 +++- src/andromede/study/data.py | 5 +- src/andromede/study/resolve_components.py | 20 +-- src/andromede/thermal_heuristic/data.py | 40 +++-- src/andromede/thermal_heuristic/problem.py | 144 ++++++++---------- .../test_thermal_heuristic_six_clusters.py | 4 +- .../test_thermal_heuristic_three_clusters.py | 8 +- .../unittests/thermal_heuristic/test_data.py | 16 +- 8 files changed, 138 insertions(+), 128 deletions(-) diff --git a/src/andromede/simulation/optimization.py b/src/andromede/simulation/optimization.py index 4ec9cb63..0225b0c7 100644 --- a/src/andromede/simulation/optimization.py +++ b/src/andromede/simulation/optimization.py @@ -18,7 +18,7 @@ from abc import ABC, abstractmethod from dataclasses import dataclass from enum import Enum -from typing import Dict, Iterable, List, Optional, Type +from typing import Dict, Iterable, List, Optional, Type, Union import ortools.linear_solver.pywraplp as lp @@ -68,8 +68,9 @@ def _get_parameter_value( name: str, ) -> float: data = context.database.get_data(component_id, name) + absolute_scenario = context.scenario_to_absolute_scenario(scenario) absolute_timestep = context.block_timestep_to_absolute_timestep(block_timestep) - return data.get_value(absolute_timestep, scenario) + return data.get_value(absolute_timestep, absolute_scenario) # TODO: Maybe add the notion of constant parameter in the model @@ -303,7 +304,7 @@ def __init__( network: Network, database: DataBase, block: TimeBlock, - scenarios: int, + scenarios: Union[List[int], int], border_management: BlockBorderManagement, ): self._network = network @@ -322,9 +323,16 @@ def network(self) -> Network: return self._network @property - def scenarios(self) -> int: + def scenarios(self) -> Union[List[int], int]: return self._scenarios + def scenario_length(self) -> int: + if type(self.scenarios) is int: + return self.scenarios + elif type(self.scenarios) is List: + return len(self.scenarios) + return 1 + def block_length(self) -> int: return len(self._block.timesteps) @@ -336,6 +344,11 @@ def connection_fields_expressions(self) -> Dict[PortFieldKey, List[ExpressionNod def block_timestep_to_absolute_timestep(self, block_timestep: int) -> int: return self._block.timesteps[block_timestep] + def scenario_to_absolute_scenario(self, scenario: int) -> int: + if type(self.scenarios) is List or type(self.scenarios) is list: + return self.scenarios[scenario] + return scenario + @property def database(self) -> DataBase: return self._database @@ -350,7 +363,7 @@ def get_time_indices(self, index_structure: IndexingStructure) -> Iterable[int]: return range(self.block_length()) if index_structure.time else range(1) def get_scenario_indices(self, index_structure: IndexingStructure) -> Iterable[int]: - return range(self.scenarios) if index_structure.scenario else range(1) + return range(self.scenario_length()) if index_structure.scenario else range(1) # TODO: API to improve, variable_structure guides which of the indices block_timestep and scenario should be used def get_component_variable( @@ -508,8 +521,8 @@ def _create_objective( for term in linear_expr.terms.values(): # TODO : How to handle the scenario operator in a general manner ? if isinstance(term.scenario_operator, Expectation): - weight = 1 / opt_context.scenarios - scenario_ids = range(opt_context.scenarios) + weight = 1 / opt_context.scenario_length() + scenario_ids = range(opt_context.scenario_length()) else: weight = 1 scenario_ids = range(1) @@ -819,7 +832,7 @@ def build_problem( network: Network, database: DataBase, block: TimeBlock, - scenarios: int, + scenarios: Union[List[int], int], *, problem_name: str = "optimization_problem", border_management: BlockBorderManagement = BlockBorderManagement.CYCLE, diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index 24d54895..60b4fe07 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -140,7 +140,10 @@ class TimeScenarioSeriesData(AbstractDataStructure): time_scenario_series: pd.DataFrame def get_value(self, timestep: int, scenario: int) -> float: - value = str(self.time_scenario_series.iloc[timestep, scenario]) + if self.time_scenario_series.shape[1] == 1: + value = str(self.time_scenario_series.loc[[timestep]].iloc[0, 0]) + return float(value) + value = str(self.time_scenario_series.loc[timestep, scenario]) return float(value) def check_requirement(self, time: bool, scenario: bool) -> bool: diff --git a/src/andromede/study/resolve_components.py b/src/andromede/study/resolve_components.py index eb868c6c..557ea81e 100644 --- a/src/andromede/study/resolve_components.py +++ b/src/andromede/study/resolve_components.py @@ -143,21 +143,13 @@ def build_network(comp_network: NetworkComponents) -> Network: def build_data_base( - input_comp: InputComponents, - timeseries_dir: Optional[Path], - scenarios: Optional[List[int]] = None, - timesteps: Optional[List[int]] = None, + input_comp: InputComponents, timeseries_dir: Optional[Path] ) -> DataBase: database = DataBase() for comp in input_comp.components: for param in comp.parameters or []: param_value = _evaluate_param_type( - param.type, - param.value, - param.timeseries, - timeseries_dir, - scenarios, - timesteps, + param.type, param.value, param.timeseries, timeseries_dir ) database.add_data(comp.id, param.name, param_value) @@ -169,17 +161,11 @@ def _evaluate_param_type( param_value: Optional[float], timeseries_name: Optional[str], timeseries_dir: Optional[Path], - scenarios: Optional[List[int]], - timesteps: Optional[List[int]], ) -> AbstractDataStructure: if param_type == "constant" and param_value is not None: return ConstantData(float(param_value)) elif param_type == "timeseries": - return TimeScenarioSeriesData( - filter_ts_on_scenarios_and_timesteps( - load_ts_from_txt(timeseries_name, timeseries_dir), scenarios, timesteps - ) - ) + return TimeScenarioSeriesData(load_ts_from_txt(timeseries_name, timeseries_dir)) raise ValueError(f"Data should be either constant or timeseries ") diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 7cd237fc..e16debb3 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -21,27 +21,39 @@ from andromede.simulation.optimization import OptimizationProblem -def get_max_unit_for_min_down_time(delta: int, max_units: pd.DataFrame) -> pd.DataFrame: - nb_units_max_min_down_time = pd.DataFrame( - np.roll(max_units.values, delta, axis=0), index=max_units.index - ) - end_failures = max_units - pd.DataFrame( - np.roll(max_units.values, 1, axis=0), index=max_units.index - ) +def get_max_unit_for_min_down_time( + delta: int, max_units: pd.DataFrame, hours_in_week: int +) -> pd.DataFrame: + max_units = shorten_df(max_units, hours_in_week) + nb_units_max_min_down_time = shift_df(max_units, delta, hours_in_week) + end_failures = max_units - shift_df(max_units, 1, hours_in_week) end_failures.where(end_failures > 0, 0, inplace=True) for j in range(delta): - nb_units_max_min_down_time += pd.DataFrame( - np.roll(end_failures.values, j, axis=0), index=end_failures.index - ) + nb_units_max_min_down_time += shift_df(end_failures, j, hours_in_week) return nb_units_max_min_down_time -def get_max_failures(max_units: pd.DataFrame) -> pd.DataFrame: - max_failures = ( - pd.DataFrame(np.roll(max_units.values, 1, axis=0), index=max_units.index) - - max_units +def shorten_df(df: pd.DataFrame, length_block: int) -> pd.DataFrame: + blocks = len(df) // length_block + df = df[: blocks * length_block] + return df + + +def shift_df(df: pd.DataFrame, shift: int, length_block: int) -> pd.DataFrame: + assert len(df) % length_block == 0 + blocks = len(df) // length_block + values = df.values.reshape((blocks, length_block, df.shape[1])) + shifted_values = np.roll(values, shift, axis=1) + return pd.DataFrame( + shifted_values.reshape((length_block * blocks, df.shape[1])), + index=df.index, ) + + +def get_max_failures(max_units: pd.DataFrame, hours_in_week: int) -> pd.DataFrame: + max_units = shorten_df(max_units, hours_in_week) + max_failures = shift_df(max_units, 1, hours_in_week) - max_units max_failures.where(max_failures > 0, 0, inplace=True) return max_failures diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 3d6dec08..40857667 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -119,12 +119,8 @@ def create_main_problem( database = get_database( data_dir, "components.yml", - [scenario], - list(range(week * number_hours, (week + 1) * number_hours)), - number_hours, - week, - scenario, get_cluster_id(network, initial_thermal_model.id), + number_hours, ) modify_lower_bound_of_cluster( @@ -134,8 +130,8 @@ def create_main_problem( problem = build_problem( network, database, - TimeBlock(1, [i for i in range(number_hours)]), - 1, + TimeBlock(1, list(range(week * number_hours, (week + 1) * number_hours))), + [scenario], border_management=BlockBorderManagement.CYCLE, ) @@ -153,49 +149,57 @@ def modify_lower_bound_of_cluster( def complete_database_with_cluster_parameters( - database: DataBase, - list_cluster_id: List[str], - dir_path: Path, - number_hours: int, - week: int, - scenario: int, + database: DataBase, list_cluster_id: List[str], dir_path: Path, hours_in_week: int ) -> None: for cluster_id in list_cluster_id: data = get_data( dir_path, "components.yml", cluster_id, - number_hours=number_hours, - week=week, - scenario=scenario, ) - max_generating = pd.DataFrame( - np.repeat( - data["max_generating"], - 1 if type(data["max_generating"]) is list else number_hours, - ).reshape((number_hours, 1)) - ) - max_units = get_max_unit(data["p_max"], data["nb_units_max"], max_generating) - max_failures = get_max_failures(max_units) - nb_units_max_min_down_time = get_max_unit_for_min_down_time( - int(max(data["d_min_up"], data["d_min_down"])), max_units - ) - database.add_data( - cluster_id, - "nb_units_max", - TimeScenarioSeriesData(max_units), - ) - database.add_data( - cluster_id, - "max_failure", - TimeScenarioSeriesData(max_failures), - ) - database.add_data( - cluster_id, - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time), - ) + if type(data["max_generating"]) is float: + database.add_data( + cluster_id, + "max_failure", + ConstantData(0), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + ConstantData(data["nb_units_max"]), + ) + + else: + max_generating_shape = data["max_generating"].shape + if len(max_generating_shape) == 1: + max_generating = pd.DataFrame( + data["max_generating"].reshape((max_generating_shape[0], 1)) + ) + else: + max_generating = pd.DataFrame(data["max_generating"]) + max_units = get_max_unit( + data["p_max"], data["nb_units_max"], max_generating + ) + max_failures = get_max_failures(max_units, hours_in_week) + nb_units_max_min_down_time = get_max_unit_for_min_down_time( + int(max(data["d_min_up"], data["d_min_down"])), max_units, hours_in_week + ) + database.add_data( + cluster_id, + "nb_units_max", + TimeScenarioSeriesData(max_units), + ) + database.add_data( + cluster_id, + "max_failure", + TimeScenarioSeriesData(max_failures), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time), + ) def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: @@ -203,27 +207,16 @@ def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: def get_database( - data_dir: Path, - yml_file: str, - scenarios: Optional[List[int]], - timesteps: Optional[List[int]], - number_hours: int, - week: int, - scenario: int, - cluster_id: List[str], + data_dir: Path, yml_file: str, cluster_id: List[str], hours_in_week: int ) -> DataBase: components_file = get_input_components(data_dir / yml_file) - database = build_data_base( - components_file, data_dir, scenarios=scenarios, timesteps=timesteps - ) + database = build_data_base(components_file, data_dir) complete_database_with_cluster_parameters( database, list_cluster_id=cluster_id, dir_path=data_dir, - number_hours=number_hours, - week=week, - scenario=scenario, + hours_in_week=hours_in_week, ) return database @@ -276,12 +269,8 @@ def create_problem_accurate_heuristic( database = get_database( data_dir, "components_heuristic.yml", - [scenario], - list(range(week * number_hours, (week + 1) * number_hours)), - number_hours, - week, - scenario, get_cluster_id(network, initial_thermal_model.id), + number_hours, ) modify_lower_bound_of_cluster( @@ -291,8 +280,8 @@ def create_problem_accurate_heuristic( problem = build_problem( network, database, - TimeBlock(1, [i for i in range(number_hours)]), - 1, + TimeBlock(1, list(range(week * number_hours, (week + 1) * number_hours))), + [scenario], border_management=BlockBorderManagement.CYCLE, ) @@ -303,9 +292,6 @@ def get_data( data_dir: Path, yml_file: str, id_cluster: str, - week: int, - number_hours: int, - scenario: int, ) -> Dict: compo_file = data_dir / yml_file @@ -316,11 +302,7 @@ def get_data( p.name: ( p.value if p.value is not None - else list( - np.loadtxt(data_dir / (p.timeseries + ".txt"))[ # type:ignore - week * number_hours : (week + 1) * number_hours, scenario - ] - ) + else np.loadtxt(data_dir / (p.timeseries + ".txt")) # type:ignore ) for p in cluster.parameters # type:ignore } @@ -339,18 +321,20 @@ def create_problem_fast_heuristic( data_dir=data_dir, yml_file="components.yml", id_cluster=thermal_cluster, - week=week, - number_hours=number_hours, - scenario=scenario, ) delta = int(max(data["d_min_up"], data["d_min_down"])) pmax = data["p_max"] pmin = data["p_min"] nmax = data["nb_units_max"] - pdispo = np.repeat( - data["max_generating"], - 1 if type(data["max_generating"]) is list else number_hours, - ).reshape((number_hours, 1)) + if type(data["max_generating"]) is float: + pdispo = np.repeat( + data["max_generating"], + number_hours, + ).reshape((number_hours, 1)) + else: + pdispo = data["max_generating"][ + number_hours * week : number_hours * (week + 1), scenario + ].reshape((number_hours, 1)) number_blocks = number_hours // delta @@ -431,8 +415,8 @@ def create_problem_fast_heuristic( mingen_heuristic = pd.DataFrame( np.minimum(n_heuristic * pmin, pdispo), - index=[i for i in range(number_hours)], - columns=[0], + index=[list(range(week * number_hours, (week + 1) * number_hours))], + columns=[scenario], ) return mingen_heuristic diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 376e3a30..b0108432 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -50,8 +50,8 @@ def test_accurate_heuristic() -> None: ) ) ), - index=[i for i in range(number_hours)], - columns=[0], + index=list(range(week * number_hours, (week + 1) * number_hours)), + columns=[scenario], ) n_guide = TimeScenarioSeriesData(nb_on_1) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 9e5341b4..e7ae3827 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -122,8 +122,8 @@ def test_accurate_heuristic() -> None: ) ) ), - index=[i for i in range(number_hours)], - columns=[0], + index=list(range(number_hours * week, number_hours * (week + 1))), + columns=[scenario], ) n_guide = TimeScenarioSeriesData(nb_on_1) @@ -150,8 +150,8 @@ def test_accurate_heuristic() -> None: np.array(output_heuristic.component(g).var("nb_on").value) ) ), - index=[i for i in range(number_hours)], - columns=[0], + index=list(range(number_hours * week, number_hours * (week + 1))), + columns=[scenario], ) nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) diff --git a/tests/unittests/thermal_heuristic/test_data.py b/tests/unittests/thermal_heuristic/test_data.py index 608015f2..1bcf2a91 100644 --- a/tests/unittests/thermal_heuristic/test_data.py +++ b/tests/unittests/thermal_heuristic/test_data.py @@ -17,6 +17,7 @@ get_max_failures, get_max_unit, get_max_unit_for_min_down_time, + shift_df, ) @@ -33,7 +34,7 @@ def test_get_max_failures() -> None: np.transpose([[0, 1, 1, 2, 2, 1, 2], [1, 1, 1, 2, 2, 1, 0]]) ) - max_failures = get_max_failures(max_unit) + max_failures = get_max_failures(max_unit, 7) assert list(max_failures.values[:, 0]) == [2, 0, 0, 0, 0, 1, 0] assert list(max_failures.values[:, 1]) == [0, 0, 0, 0, 0, 1, 1] @@ -44,7 +45,18 @@ def test_get_max_unit_for_min_down_time() -> None: np.transpose([[0, 1, 1, 2, 2, 1, 2], [1, 1, 1, 2, 2, 1, 0]]) ) - max_unit_for_min_down_time = get_max_unit_for_min_down_time(2, max_unit) + max_unit_for_min_down_time = get_max_unit_for_min_down_time(2, max_unit, 7) assert list(max_unit_for_min_down_time.values[:, 0]) == [2, 3, 1, 2, 2, 2, 3] assert list(max_unit_for_min_down_time.values[:, 1]) == [2, 1, 1, 2, 2, 2, 2] + + +def test_shift_df() -> None: + A = np.array([[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12]]) + + df = pd.DataFrame(A.transpose()) + + shifted = shift_df(df, 1, 3) + + assert list(shifted.values[:, 0]) == [3, 1, 2, 6, 4, 5] + assert list(shifted.values[:, 1]) == [9, 7, 8, 12, 10, 11] From 54c93c087ff28f9fe2b6a98d45f70f4883803f19 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 3 Jul 2024 17:18:02 +0200 Subject: [PATCH 43/93] Correct error --- src/andromede/thermal_heuristic/model.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 10c1f73e..d266068e 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -123,9 +123,16 @@ def filter_constraints_on_variable(self, variables: List[str]) -> List[Constrain if not (self.variable_in_constraint(c, variables)) ] - def filter_variables(self, variables: List[str]) -> List[Variable]: + def filter_and_linearize_variables(self, variables: List[str]) -> List[Variable]: return [ - v for v in self.initial_model.variables.values() if v.name not in variables + float_variable( + v.name, + lower_bound=v.lower_bound, + upper_bound=v.upper_bound, + structure=v.structure, + ) + for v in self.initial_model.variables.values() + if v.name not in variables ] @@ -170,7 +177,7 @@ def __init__(self, initial_model: Model) -> None: THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( id=self.keep_id(), parameters=self.keep_parameters(), - variables=self.filter_variables(generation_variable), + variables=self.filter_and_linearize_variables(generation_variable), constraints=self.filter_constraints_on_variable(generation_variable), objective_operational_contribution=(var("nb_on")).sum().expec(), ) From 585fc50e3867a584664decd2d9068666cfe57987 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 4 Jul 2024 09:54:03 +0200 Subject: [PATCH 44/93] Create ThermalProblemBuilder --- src/andromede/thermal_heuristic/problem.py | 476 +++++++++--------- .../test_thermal_heuristic_one_cluster.py | 117 +++-- .../test_thermal_heuristic_six_clusters.py | 53 +- .../test_thermal_heuristic_three_clusters.py | 146 ++++-- 4 files changed, 463 insertions(+), 329 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 40857667..1b237539 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -17,13 +17,6 @@ import ortools.linear_solver.pywraplp as pywraplp import pandas as pd -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, -) from andromede.model import Model, PortType from andromede.model.library import Library, library from andromede.simulation import ( @@ -60,7 +53,6 @@ HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, ) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP def library_thermal_problem( @@ -78,64 +70,244 @@ def library_thermal_problem( return lib -# class ThermalProblemBuilder: +class ThermalProblemBuilder: + + def __init__( + self, + number_hours: int, + lp_relaxation: bool, + fast: bool, + data_dir: Path, + initial_thermal_model: Model, + port_types: List[PortType], + models: List[Model], + ) -> None: + lib = library_thermal_problem( + port_types, models, lp_relaxation, fast, initial_thermal_model + ) -# def __init__( -# self, -# lower_bound: Dict[str, AbstractDataStructure], -# number_hours: int, -# lp_relaxation: bool, -# fast: bool, -# data_dir: Path, -# week: int, -# scenario: int, -# ) -> None: -# pass + self.network = get_network(data_dir / "components.yml", lib) + self.database = get_database( + data_dir, + "components.yml", + get_cluster_id(self.network, initial_thermal_model.id), + number_hours, + ) + self.initial_thermal_model = initial_thermal_model + self.number_hours = number_hours + self.data_dir = data_dir + + def get_main_problem( + self, week: int, scenario: int, lower_bound: Dict[str, AbstractDataStructure] + ) -> OptimizationProblem: + modify_lower_bound_of_cluster( + lower_bound, + self.database, + get_cluster_id(self.network, self.initial_thermal_model.id), + ) -def create_main_problem( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - lp_relaxation: bool, - fast: bool, - data_dir: Path, - week: int, - scenario: int, - initial_thermal_model: Model = THERMAL_CLUSTER_MODEL_MILP, - port_types: List[PortType] = [BALANCE_PORT_TYPE], - models: List[Model] = [ - NODE_BALANCE_MODEL, - DEMAND_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], -) -> OptimizationProblem: - lib = library_thermal_problem( - port_types, models, lp_relaxation, fast, initial_thermal_model - ) + problem = build_problem( + self.network, + self.database, + TimeBlock( + 1, list(range(week * self.number_hours, (week + 1) * self.number_hours)) + ), + [scenario], + border_management=BlockBorderManagement.CYCLE, + ) - network = get_network(data_dir / "components.yml", lib) + return problem + + def get_problem_accurate_heuristic( + self, + lower_bound: Dict[str, AbstractDataStructure], + week: int, + scenario: int, + cluster_id: str, + ) -> OptimizationProblem: + thermal_model_builder = HeuristicAccurateModelBuilder( + self.initial_thermal_model + ) - database = get_database( - data_dir, - "components.yml", - get_cluster_id(network, initial_thermal_model.id), - number_hours, - ) + cluster = create_component(model=thermal_model_builder.model, id=cluster_id) - modify_lower_bound_of_cluster( - lower_bound, database, get_cluster_id(network, initial_thermal_model.id) - ) + network = Network("test") + network.add_component(cluster) - problem = build_problem( - network, - database, - TimeBlock(1, list(range(week * number_hours, (week + 1) * number_hours))), - [scenario], - border_management=BlockBorderManagement.CYCLE, - ) + modify_lower_bound_of_cluster( + lower_bound, + self.database, + [cluster_id], + ) + + problem = build_problem( + network, + self.database, + TimeBlock( + 1, list(range(week * self.number_hours, (week + 1) * self.number_hours)) + ), + [scenario], + border_management=BlockBorderManagement.CYCLE, + ) + + return problem + + def get_problem_fast_heuristic( + self, + lower_bound: List[float], + thermal_cluster: str, + week: int, + scenario: int, + ) -> OptimizationProblem: + delta, pmax, nmax, _, _, number_blocks = self.get_data_fast_heuristic( + thermal_cluster, week, scenario + ) + + database = self.get_database_fast_heuristic( + lower_bound, delta, pmax, nmax, number_blocks + ) + + network = self.get_network_fast_heuristic(delta, number_blocks) + + problem = build_problem( + network, + database, + TimeBlock(1, [i for i in range(self.number_hours)]), + 1, + border_management=BlockBorderManagement.CYCLE, + ) + + return problem + + def get_database_fast_heuristic( + self, + lower_bound: list[float], + delta: int, + pmax: int, + nmax: int, + number_blocks: int, + ) -> DataBase: + database = DataBase() + + database.add_data("B", "n_max", ConstantData(nmax)) + database.add_data("B", "delta", ConstantData(delta)) + + nb_on_1 = np.ceil( + np.round( + np.array(lower_bound) / pmax, + 12, + ) + ) + + database.add_data( + "B", + "n_guide", + TimeSeriesData( + {TimeIndex(i): nb_on_1[i] for i in range(self.number_hours)} + ), + ) + for h in range(delta): + start_ajust = self.number_hours - delta + h + database.add_data( + "B", + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 + for t in range(self.number_hours) + } + ), + ) + for k in range(number_blocks): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + "B", + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 + for t in range(self.number_hours) + } + ), + ) - return problem + return database + + def get_data_fast_heuristic( + self, thermal_cluster: str, week: int, scenario: int + ) -> tuple[int, int, int, int, list[float], int]: + data = get_data( + data_dir=self.data_dir, + yml_file="components.yml", + id_cluster=thermal_cluster, + ) + delta = int(max(data["d_min_up"], data["d_min_down"])) + pmax = data["p_max"] + pmin = data["p_min"] + nmax = data["nb_units_max"] + if type(data["max_generating"]) is float: + pdispo = np.repeat( + data["max_generating"], + self.number_hours, + ).reshape((self.number_hours, 1)) + else: + pdispo = data["max_generating"][ + self.number_hours * week : self.number_hours * (week + 1), scenario + ].reshape((self.number_hours, 1)) + + number_blocks = self.number_hours // delta + + return delta, pmax, nmax, pmin, list(pdispo), number_blocks + + def get_output_heuristic_fast( + self, + problem: OptimizationProblem, + week: int, + scenario: int, + thermal_cluster: str, + ) -> pd.DataFrame: + + _, _, _, pmin, pdispo, _ = self.get_data_fast_heuristic( + thermal_cluster, week, scenario + ) + + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) + problem.solver.EnableOutput() + + status = problem.solver.Solve(parameters) + + assert status == problem.solver.OPTIMAL + + output_heuristic = OutputValues(problem) + n_heuristic = np.array( + output_heuristic.component("B").var("n").value[0] # type:ignore + ).reshape((self.number_hours, 1)) + + mingen_heuristic = pd.DataFrame( + np.minimum( + n_heuristic * pmin, np.array(pdispo).reshape((self.number_hours, 1)) + ), + index=[ + list(range(week * self.number_hours, (week + 1) * self.number_hours)) + ], + columns=[scenario], + ) + + return mingen_heuristic + + def get_network_fast_heuristic(self, delta: int, number_blocks: int) -> Network: + block = create_component( + model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, id="B" + ) + + network = Network("test") + network.add_component(block) + return network def modify_lower_bound_of_cluster( @@ -171,19 +343,8 @@ def complete_database_with_cluster_parameters( ) else: - max_generating_shape = data["max_generating"].shape - if len(max_generating_shape) == 1: - max_generating = pd.DataFrame( - data["max_generating"].reshape((max_generating_shape[0], 1)) - ) - else: - max_generating = pd.DataFrame(data["max_generating"]) - max_units = get_max_unit( - data["p_max"], data["nb_units_max"], max_generating - ) - max_failures = get_max_failures(max_units, hours_in_week) - nb_units_max_min_down_time = get_max_unit_for_min_down_time( - int(max(data["d_min_up"], data["d_min_down"])), max_units, hours_in_week + max_units, max_failures, nb_units_max_min_down_time = ( + compute_cluster_parameters(hours_in_week, data) ) database.add_data( cluster_id, @@ -202,6 +363,25 @@ def complete_database_with_cluster_parameters( ) +def compute_cluster_parameters( + hours_in_week: int, data: Dict +) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: + max_generating_shape = data["max_generating"].shape + if len(max_generating_shape) == 1: + max_generating = pd.DataFrame( + data["max_generating"].reshape((max_generating_shape[0], 1)) + ) + else: + max_generating = pd.DataFrame(data["max_generating"]) + max_units = get_max_unit(data["p_max"], data["nb_units_max"], max_generating) + max_failures = get_max_failures(max_units, hours_in_week) + nb_units_max_min_down_time = get_max_unit_for_min_down_time( + int(max(data["d_min_up"], data["d_min_down"])), max_units, hours_in_week + ) + + return max_units, max_failures, nb_units_max_min_down_time + + def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: return [c.id for c in network.components if c.model.id == cluster_model_id] @@ -247,47 +427,6 @@ def edit_thermal_model( return thermal_model -def create_problem_accurate_heuristic( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, - data_dir: Path, - week: int, - scenario: int, - initial_thermal_model: Model = THERMAL_CLUSTER_MODEL_MILP, -) -> OptimizationProblem: - thermal_model_builder = HeuristicAccurateModelBuilder(initial_thermal_model) - - lib = library( - port_types=[], - models=[ - thermal_model_builder.model, - ], - ) - - network = get_network(data_dir / "components_heuristic.yml", lib) - - database = get_database( - data_dir, - "components_heuristic.yml", - get_cluster_id(network, initial_thermal_model.id), - number_hours, - ) - - modify_lower_bound_of_cluster( - lower_bound, database, get_cluster_id(network, initial_thermal_model.id) - ) - - problem = build_problem( - network, - database, - TimeBlock(1, list(range(week * number_hours, (week + 1) * number_hours))), - [scenario], - border_management=BlockBorderManagement.CYCLE, - ) - - return problem - - def get_data( data_dir: Path, yml_file: str, @@ -307,116 +446,3 @@ def get_data( for p in cluster.parameters # type:ignore } return parameters # type:ignore - - -def create_problem_fast_heuristic( - lower_bound: List[float], - number_hours: int, - thermal_cluster: str, - data_dir: Path, - week: int, - scenario: int, -) -> pd.DataFrame: - data = get_data( - data_dir=data_dir, - yml_file="components.yml", - id_cluster=thermal_cluster, - ) - delta = int(max(data["d_min_up"], data["d_min_down"])) - pmax = data["p_max"] - pmin = data["p_min"] - nmax = data["nb_units_max"] - if type(data["max_generating"]) is float: - pdispo = np.repeat( - data["max_generating"], - number_hours, - ).reshape((number_hours, 1)) - else: - pdispo = data["max_generating"][ - number_hours * week : number_hours * (week + 1), scenario - ].reshape((number_hours, 1)) - - number_blocks = number_hours // delta - - database = DataBase() - - database.add_data("B", "n_max", ConstantData(nmax)) - database.add_data("B", "delta", ConstantData(delta)) - - nb_on_1 = np.ceil( - np.round( - np.array(lower_bound) / pmax, - 12, - ) - ) - - database.add_data( - "B", - "n_guide", - TimeSeriesData({TimeIndex(i): nb_on_1[i] for i in range(number_hours)}), - ) - for h in range(delta): - start_ajust = number_hours - delta + h - database.add_data( - "B", - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 - for t in range(number_hours) - } - ), - ) - for k in range(number_blocks): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) - database.add_data( - "B", - f"alpha_{k}_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 - for t in range(number_hours) - } - ), - ) - - time_block = TimeBlock(1, [i for i in range(number_hours)]) - - block = create_component( - model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, id="B" - ) - - network = Network("test") - network.add_component(block) - - problem = build_problem( - network, - database, - time_block, - 1, - border_management=BlockBorderManagement.CYCLE, - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - n_heuristic = np.array( - output_heuristic.component("B").var("n").value[0] # type:ignore - ).reshape((number_hours, 1)) - - mingen_heuristic = pd.DataFrame( - np.minimum(n_heuristic * pmin, pdispo), - index=[list(range(week * number_hours, (week + 1) * number_hours))], - columns=[scenario], - ) - - return mingen_heuristic diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 7a99bdb7..d6859619 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -20,11 +20,18 @@ from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ( - create_main_problem, - create_problem_accurate_heuristic, - create_problem_fast_heuristic, + ThermalProblemBuilder, ) +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP + def test_milp_version() -> None: """ @@ -54,12 +61,23 @@ def test_milp_version() -> None: """ number_hours = 168 - problem = create_main_problem( - {"G": ConstantData(0)}, - number_hours, + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + + problem = thermal_problem_builder.get_main_problem( + lower_bound={"G": ConstantData(0)}, week=0, scenario=0, ) @@ -108,12 +126,24 @@ def test_lp_version() -> None: = 16 802 840,55 """ number_hours = 168 - problem = create_main_problem( - {"G": ConstantData(0)}, - number_hours, + + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + + problem = thermal_problem_builder.get_main_problem( + lower_bound={"G": ConstantData(0)}, week=0, scenario=0, ) @@ -144,13 +174,24 @@ def test_accurate_heuristic() -> None: number_hours = 168 - # First optimization - problem_optimization_1 = create_main_problem( - {"G": ConstantData(0)}, - number_hours, + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + + # First optimization + problem_optimization_1 = thermal_problem_builder.get_main_problem( + lower_bound={"G": ConstantData(0)}, week=0, scenario=0, ) @@ -172,12 +213,8 @@ def test_accurate_heuristic() -> None: assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - {"G": n_guide}, - number_hours, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - week=0, - scenario=0, + problem_accurate_heuristic = thermal_problem_builder.get_problem_accurate_heuristic( + {"G": n_guide}, week=0, scenario=0, cluster_id="G" ) status = problem_accurate_heuristic.solver.Solve() @@ -197,12 +234,8 @@ def test_accurate_heuristic() -> None: assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 # Second optimization with lower bound modified - problem_optimization_2 = create_main_problem( - {"G": nb_on_min}, - number_hours, - lp_relaxation=True, - fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + problem_optimization_2 = thermal_problem_builder.get_main_problem( + lower_bound={"G": nb_on_min}, week=0, scenario=0, ) @@ -251,13 +284,24 @@ def test_fast_heuristic() -> None: number_hours = 168 - # First optimization - problem_optimization_1 = create_main_problem( - {"G": ConstantData(0)}, - number_hours, + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + + # First optimization + problem_optimization_1 = thermal_problem_builder.get_main_problem( + lower_bound={"G": ConstantData(0)}, week=0, scenario=0, ) @@ -269,14 +313,15 @@ def test_fast_heuristic() -> None: output_1 = OutputValues(problem_optimization_1) # Solve heuristic problem - mingen_heuristic = create_problem_fast_heuristic( + problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( output_1.component("G").var("generation").value[0], # type:ignore - number_hours, thermal_cluster="G", - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", week=0, scenario=0, ) + mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( + problem_heuristic, 0, 0, "G" + ) mingen = TimeScenarioSeriesData(mingen_heuristic) @@ -288,12 +333,8 @@ def test_fast_heuristic() -> None: ) # Second optimization with lower bound modified - problem_optimization_2 = create_main_problem( - {"G": mingen}, - number_hours, - lp_relaxation=True, - fast=True, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + problem_optimization_2 = thermal_problem_builder.get_main_problem( + lower_bound={"G": mingen}, week=0, scenario=0, ) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index b0108432..b206feae 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -20,10 +20,11 @@ from andromede.simulation import OutputValues from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.thermal_heuristic.problem import ( - create_problem_accurate_heuristic, - create_problem_fast_heuristic, + ThermalProblemBuilder, ) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP + def test_accurate_heuristic() -> None: """ @@ -34,6 +35,16 @@ def test_accurate_heuristic() -> None: scenario = 0 week = 0 + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[], + models=[], + ) + parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) @@ -56,15 +67,17 @@ def test_accurate_heuristic() -> None: n_guide = TimeScenarioSeriesData(nb_on_1) # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - { - "G" + str(i): ConstantData(0) if "G" + str(i) != cluster else n_guide - for i in range(1, 7) - }, - number_hours, - data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", - week=week, - scenario=scenario, + problem_accurate_heuristic = ( + thermal_problem_builder.get_problem_accurate_heuristic( + { + "G" + + str(i): ConstantData(0) if "G" + str(i) != cluster else n_guide + for i in range(1, 7) + }, + week=week, + scenario=scenario, + cluster_id=cluster, + ) ) status = problem_accurate_heuristic.solver.Solve(parameters) @@ -91,21 +104,33 @@ def test_fast_heuristic() -> None: scenario = 0 week = 0 + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[], + models=[], + ) + for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): nb_on_1 = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster{j+1}.txt" ) # Solve heuristic problem - mingen_heuristic = create_problem_fast_heuristic( + problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( nb_on_1, # type:ignore - number_hours, thermal_cluster=cluster, - data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", week=week, scenario=scenario, ) + mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( + problem_heuristic, week, scenario, cluster + ) + expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index e7ae3827..b96abeba 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -23,11 +23,18 @@ from andromede.study.data import AbstractDataStructure from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ( - create_main_problem, - create_problem_accurate_heuristic, - create_problem_fast_heuristic, + ThermalProblemBuilder, ) +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP + def test_milp_version() -> None: """ """ @@ -37,17 +44,31 @@ def test_milp_version() -> None: idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 ) + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=False, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + for scenario in range(scenarios): for week in range(2): - problem = create_main_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=False, - fast=False, + problem = thermal_problem_builder.get_main_problem( + lower_bound={ + "G1": ConstantData(0), + "G2": ConstantData(0), + "G3": ConstantData(0), + }, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", ) parameters = pywraplp.MPSolverParameters() @@ -93,18 +114,32 @@ def test_accurate_heuristic() -> None: parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + for scenario in range(scenarios): for week in range(2): # First optimization - problem_optimization_1 = create_main_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=False, + problem_optimization_1 = thermal_problem_builder.get_main_problem( + lower_bound={ + "G1": ConstantData(0), + "G2": ConstantData(0), + "G3": ConstantData(0), + }, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_1.solver.Solve(parameters) @@ -128,16 +163,16 @@ def test_accurate_heuristic() -> None: n_guide = TimeScenarioSeriesData(nb_on_1) # Solve heuristic problem - problem_accurate_heuristic = create_problem_accurate_heuristic( - { - th: n_guide if th == g else ConstantData(0) - for th in ["G1", "G2", "G3"] - }, - number_hours, - week=week, - scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", + problem_accurate_heuristic = ( + thermal_problem_builder.get_problem_accurate_heuristic( + { + th: n_guide if th == g else ConstantData(0) + for th in ["G1", "G2", "G3"] + }, + week=week, + scenario=scenario, + cluster_id=g, + ) ) status = problem_accurate_heuristic.solver.Solve(parameters) @@ -156,15 +191,10 @@ def test_accurate_heuristic() -> None: nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) # Second optimization with lower bound modified - problem_optimization_2 = create_main_problem( - nb_on_min, - number_hours, - lp_relaxation=True, - fast=False, + problem_optimization_2 = thermal_problem_builder.get_main_problem( + lower_bound=nb_on_min, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_2.solver.Solve(parameters) @@ -207,18 +237,32 @@ def test_fast_heuristic() -> None: parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + ], + ) + for scenario in range(scenarios): for week in range(weeks): # First optimization - problem_optimization_1 = create_main_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - lp_relaxation=True, - fast=True, + problem_optimization_1 = thermal_problem_builder.get_main_problem( + lower_bound={ + "G1": ConstantData(0), + "G2": ConstantData(0), + "G3": ConstantData(0), + }, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_1.solver.Solve(parameters) @@ -230,28 +274,26 @@ def test_fast_heuristic() -> None: # Solve heuristic problem mingen: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: # - mingen_heuristic = create_problem_fast_heuristic( + problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( output_1.component(g).var("generation").value[0], # type:ignore - number_hours, thermal_cluster=g, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", + ) + mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( + problem_heuristic, + thermal_cluster=g, + week=week, + scenario=scenario, ) mingen[g] = TimeScenarioSeriesData(mingen_heuristic) # Second optimization with lower bound modified - problem_optimization_2 = create_main_problem( - mingen, - number_hours, - lp_relaxation=True, - fast=True, + problem_optimization_2 = thermal_problem_builder.get_main_problem( + lower_bound=mingen, week=week, scenario=scenario, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_three_clusters", ) status = problem_optimization_2.solver.Solve(parameters) From ec850d858758a8c770828555ff27cd30ddd77f79 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 4 Jul 2024 17:49:26 +0200 Subject: [PATCH 45/93] Resolution steps --- src/andromede/study/data.py | 33 +- src/andromede/study/resolve_components.py | 1 - src/andromede/thermal_heuristic/data.py | 4 +- src/andromede/thermal_heuristic/problem.py | 453 ++++++++++-------- src/andromede/thermal_heuristic/workflow.py | 98 ++++ .../test_thermal_heuristic_one_cluster.py | 179 ++++--- .../test_thermal_heuristic_six_clusters.py | 81 ++-- .../test_thermal_heuristic_three_clusters.py | 171 +++---- 8 files changed, 574 insertions(+), 446 deletions(-) create mode 100644 src/andromede/thermal_heuristic/workflow.py diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index 60b4fe07..c40796c1 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -41,6 +41,9 @@ class AbstractDataStructure(ABC): def get_value(self, timestep: int, scenario: int) -> float: return NotImplemented + def get_max_value(self) -> float: + return NotImplemented + @abstractmethod def check_requirement(self, time: bool, scenario: bool) -> bool: """ @@ -57,6 +60,9 @@ class ConstantData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.value + def get_max_value(self) -> float: + return self.value + # ConstantData can be used for time varying or constant models def check_requirement(self, time: bool, scenario: bool) -> bool: if not isinstance(self, ConstantData): @@ -77,6 +83,9 @@ class TimeSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.time_series[TimeIndex(timestep)] + def get_max_value(self) -> float: + return max(self.time_series.values()) + def check_requirement(self, time: bool, scenario: bool) -> bool: if not isinstance(self, TimeSeriesData): raise ValueError("Invalid data type for TimeSeriesData") @@ -97,6 +106,9 @@ class ScenarioSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.scenario_series[ScenarioIndex(scenario)] + def get_max_value(self) -> float: + return max(self.scenario_series.values()) + def check_requirement(self, time: bool, scenario: bool) -> bool: if not isinstance(self, ScenarioSeriesData): raise ValueError("Invalid data type for TimeSeriesData") @@ -116,19 +128,6 @@ def load_ts_from_txt( raise Exception(f"An error has arrived when processing '{ts_path}'") -def filter_ts_on_scenarios_and_timesteps( - raw_ts: pd.DataFrame, - scenarios: Optional[List[int]], - timesteps: Optional[List[int]], -) -> pd.DataFrame: - filtered_ts = raw_ts - if scenarios is not None: - filtered_ts = filtered_ts.filter(items=scenarios, axis=1) - if timesteps is not None: - filtered_ts = filtered_ts.filter(items=timesteps, axis=0) - return filtered_ts.reset_index(drop=True) - - @dataclass(frozen=True) class TimeScenarioSeriesData(AbstractDataStructure): """ @@ -144,7 +143,13 @@ def get_value(self, timestep: int, scenario: int) -> float: value = str(self.time_scenario_series.loc[[timestep]].iloc[0, 0]) return float(value) value = str(self.time_scenario_series.loc[timestep, scenario]) - return float(value) + try: + return float(value) + except ValueError: + return float(list(self.time_scenario_series.loc[timestep, scenario])[0]) + + def get_max_value(self) -> float: + return self.time_scenario_series.values.max() def check_requirement(self, time: bool, scenario: bool) -> bool: if not isinstance(self, TimeScenarioSeriesData): diff --git a/src/andromede/study/resolve_components.py b/src/andromede/study/resolve_components.py index 557ea81e..d6650e78 100644 --- a/src/andromede/study/resolve_components.py +++ b/src/andromede/study/resolve_components.py @@ -30,7 +30,6 @@ AbstractDataStructure, TimeScenarioIndex, TimeScenarioSeriesData, - filter_ts_on_scenarios_and_timesteps, load_ts_from_txt, ) from andromede.study.parsing import ( diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index e16debb3..6a5867ca 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -92,9 +92,7 @@ def __init__( scenario, dir_path, week ) - def check_output_values(self, problem: OptimizationProblem) -> None: - output = OutputValues(problem) - + def check_output_values(self, output: OutputValues) -> None: for i, cluster in enumerate(self.list_cluster): self.check_output_cluster( output, diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 1b237539..beb61197 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -35,7 +35,7 @@ TimeSeriesData, create_component, ) -from andromede.study.data import AbstractDataStructure +from andromede.study.data import AbstractDataStructure, ComponentParameterIndex from andromede.study.parsing import InputComponents, parse_yaml_components from andromede.study.resolve_components import ( build_data_base, @@ -53,6 +53,7 @@ HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, ) +from andromede.thermal_heuristic.workflow import ResolutionStep def library_thermal_problem( @@ -71,7 +72,6 @@ def library_thermal_problem( class ThermalProblemBuilder: - def __init__( self, number_hours: int, @@ -81,51 +81,172 @@ def __init__( initial_thermal_model: Model, port_types: List[PortType], models: List[Model], + number_week: int, + list_scenario: List[int], ) -> None: lib = library_thermal_problem( port_types, models, lp_relaxation, fast, initial_thermal_model ) - + self.number_week = number_week + self.list_scenario = list_scenario self.network = get_network(data_dir / "components.yml", lib) - - self.database = get_database( + self.number_hours = number_hours + self.database = self.get_database( data_dir, "components.yml", get_cluster_id(self.network, initial_thermal_model.id), number_hours, + fast, ) self.initial_thermal_model = initial_thermal_model - self.number_hours = number_hours - self.data_dir = data_dir - - def get_main_problem( - self, week: int, scenario: int, lower_bound: Dict[str, AbstractDataStructure] - ) -> OptimizationProblem: - modify_lower_bound_of_cluster( - lower_bound, - self.database, - get_cluster_id(self.network, self.initial_thermal_model.id), - ) - problem = build_problem( - self.network, - self.database, - TimeBlock( - 1, list(range(week * self.number_hours, (week + 1) * self.number_hours)) + def get_main_resolution_step(self, week: int, scenario: int) -> ResolutionStep: + main_resolution_step = ResolutionStep( + timesteps=list( + range(week * self.number_hours, (week + 1) * self.number_hours) ), - [scenario], - border_management=BlockBorderManagement.CYCLE, + scenarios=[scenario], + database=self.database, + network=self.network, ) - return problem + return main_resolution_step + + def update_database_accurate( + self, + output: OutputValues, + week: int, + scenario: int, + list_cluster_id: Optional[list[str]], + ) -> None: + if list_cluster_id is None: + list_cluster_id = get_cluster_id( + self.network, self.initial_thermal_model.id + ) + for cluster in list_cluster_id: + nb_on = np.zeros( + (self.number_hours * self.number_week, len(self.list_scenario)) + ) + nb_on[ + range(week * self.number_hours, (week + 1) * self.number_hours), + scenario, + ] = np.ceil( + np.round( + output.component(cluster).var("nb_on").value[0], # type:ignore + 12, + ) + ) + for s in self.list_scenario: + if s != scenario: + for t in range(self.number_week * self.number_hours): + if t not in list( + range( + week * self.number_hours, (week + 1) * self.number_hours + ) + ): + nb_on[t, s] = self.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), t, s + ) + nb_on_min = TimeScenarioSeriesData( + pd.DataFrame( + nb_on, + index=[list(range(self.number_week * self.number_hours))], + columns=self.list_scenario, + ) + ) + + self.database.add_data(cluster, "nb_units_min", nb_on_min) + + def update_database_fast_before_heuristic( + self, output: OutputValues, week: int + ) -> None: + for cluster in get_cluster_id(self.network, self.initial_thermal_model.id): + pmax = self.database.get_value( + ComponentParameterIndex(cluster, "p_max"), 0, 0 + ) + nb_on_1 = np.ceil( + np.round( + np.array(output.component(cluster).var("generation").value[0]) # type: ignore + / pmax, + 12, + ) + ) + + self.database.add_data( + cluster, + "n_guide", + TimeSeriesData( + { + TimeIndex(i + week * self.number_hours): nb_on_1[i] + for i in range(self.number_hours) + } + ), + ) + + def update_database_fast_after_heuristic( + self, + output: OutputValues, + week: int, + scenario: int, + list_cluster_id: Optional[list[str]], + ) -> None: + if list_cluster_id is None: + list_cluster_id = get_cluster_id( + self.network, self.initial_thermal_model.id + ) + for cluster in list_cluster_id: + pmin = self.database.get_value( + ComponentParameterIndex(cluster, "p_min"), 0, 0 + ) + pdispo = [ + self.database.get_value( + ComponentParameterIndex(cluster, "max_generating"), t, scenario + ) + for t in range(week * self.number_hours, (week + 1) * self.number_hours) + ] + + min_gen = np.zeros( + (self.number_hours * self.number_week, len(self.list_scenario)) + ) + min_gen[ + range(week * self.number_hours, (week + 1) * self.number_hours), + scenario, + ] = np.minimum( + np.array( + output.component(cluster).var("n").value[0] # type:ignore + ).reshape((self.number_hours, 1)) + * pmin, + np.array(pdispo).reshape((self.number_hours, 1)), + ).reshape( + self.number_hours + ) + + for s in self.list_scenario: + if s != scenario: + for t in range(self.number_week * self.number_hours): + if t not in list( + range( + week * self.number_hours, (week + 1) * self.number_hours + ) + ): + min_gen[t, s] = self.database.get_value( + ComponentParameterIndex(cluster, "min_generating"), t, s + ) + min_gen_df = TimeScenarioSeriesData( + pd.DataFrame( + min_gen, + index=[list(range(self.number_week * self.number_hours))], + columns=self.list_scenario, + ) + ) + self.database.add_data(cluster, "min_generating", min_gen_df) - def get_problem_accurate_heuristic( + def get_resolution_step_accurate_heuristic( self, - lower_bound: Dict[str, AbstractDataStructure], week: int, scenario: int, cluster_id: str, - ) -> OptimizationProblem: + ) -> ResolutionStep: thermal_model_builder = HeuristicAccurateModelBuilder( self.initial_thermal_model ) @@ -135,189 +256,139 @@ def get_problem_accurate_heuristic( network = Network("test") network.add_component(cluster) - modify_lower_bound_of_cluster( - lower_bound, - self.database, - [cluster_id], - ) - - problem = build_problem( - network, - self.database, - TimeBlock( - 1, list(range(week * self.number_hours, (week + 1) * self.number_hours)) + resolution_step = ResolutionStep( + timesteps=list( + range(week * self.number_hours, (week + 1) * self.number_hours) ), - [scenario], - border_management=BlockBorderManagement.CYCLE, + scenarios=[scenario], + database=self.database, + network=network, ) - return problem + return resolution_step - def get_problem_fast_heuristic( + def get_resolution_step_fast_heuristic( self, - lower_bound: List[float], thermal_cluster: str, week: int, scenario: int, - ) -> OptimizationProblem: - delta, pmax, nmax, _, _, number_blocks = self.get_data_fast_heuristic( - thermal_cluster, week, scenario + ) -> ResolutionStep: + delta = int( + max( + self.database.get_value( + ComponentParameterIndex(thermal_cluster, "d_min_up"), 0, 0 + ), + self.database.get_value( + ComponentParameterIndex(thermal_cluster, "d_min_down"), 0, 0 + ), + ) ) - database = self.get_database_fast_heuristic( - lower_bound, delta, pmax, nmax, number_blocks + network = self.get_network_fast_heuristic( + delta, self.number_hours // delta, thermal_cluster ) - network = self.get_network_fast_heuristic(delta, number_blocks) - - problem = build_problem( - network, - database, - TimeBlock(1, [i for i in range(self.number_hours)]), - 1, - border_management=BlockBorderManagement.CYCLE, + resolution_step = ResolutionStep( + network=network, + database=self.database, + timesteps=list( + range(week * self.number_hours, (week + 1) * self.number_hours) + ), + scenarios=[scenario], ) - return problem + return resolution_step - def get_database_fast_heuristic( - self, - lower_bound: list[float], - delta: int, - pmax: int, - nmax: int, - number_blocks: int, - ) -> DataBase: - database = DataBase() - - database.add_data("B", "n_max", ConstantData(nmax)) - database.add_data("B", "delta", ConstantData(delta)) - - nb_on_1 = np.ceil( - np.round( - np.array(lower_bound) / pmax, - 12, + def complete_database_for_fast_heuristic( + self, database: DataBase, list_cluster_id: list[str], number_hours: int + ) -> None: + for cluster_id in list_cluster_id: + delta = int( + max( + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_up"), 0, 0 + ), + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_down"), 0, 0 + ), + ) ) - ) + n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() + database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) + database.add_data(cluster_id, "delta", ConstantData(delta)) - database.add_data( - "B", - "n_guide", - TimeSeriesData( - {TimeIndex(i): nb_on_1[i] for i in range(self.number_hours)} - ), - ) - for h in range(delta): - start_ajust = self.number_hours - delta + h - database.add_data( - "B", - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): 1 if (t >= start_ajust) or (t < h) else 0 - for t in range(self.number_hours) - } - ), - ) - for k in range(number_blocks): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) + for h in range(delta): + start_ajust = self.number_hours - delta + h database.add_data( - "B", - f"alpha_{k}_{h}", + cluster_id, + f"alpha_ajust_{h}", TimeSeriesData( { - TimeIndex(t): 1 if (t >= start_k) and (t < end_k) else 0 - for t in range(self.number_hours) + TimeIndex(t): ( + 1 + if (t % self.number_hours >= start_ajust) + or (t % self.number_hours < h) + else 0 + ) + for t in range(self.number_hours * self.number_week) } ), ) - - return database - - def get_data_fast_heuristic( - self, thermal_cluster: str, week: int, scenario: int - ) -> tuple[int, int, int, int, list[float], int]: - data = get_data( - data_dir=self.data_dir, - yml_file="components.yml", - id_cluster=thermal_cluster, - ) - delta = int(max(data["d_min_up"], data["d_min_down"])) - pmax = data["p_max"] - pmin = data["p_min"] - nmax = data["nb_units_max"] - if type(data["max_generating"]) is float: - pdispo = np.repeat( - data["max_generating"], - self.number_hours, - ).reshape((self.number_hours, 1)) - else: - pdispo = data["max_generating"][ - self.number_hours * week : self.number_hours * (week + 1), scenario - ].reshape((self.number_hours, 1)) - - number_blocks = self.number_hours // delta - - return delta, pmax, nmax, pmin, list(pdispo), number_blocks - - def get_output_heuristic_fast( - self, - problem: OptimizationProblem, - week: int, - scenario: int, - thermal_cluster: str, - ) -> pd.DataFrame: - - _, _, _, pmin, pdispo, _ = self.get_data_fast_heuristic( - thermal_cluster, week, scenario - ) - - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-7) - problem.solver.EnableOutput() - - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL - - output_heuristic = OutputValues(problem) - n_heuristic = np.array( - output_heuristic.component("B").var("n").value[0] # type:ignore - ).reshape((self.number_hours, 1)) - - mingen_heuristic = pd.DataFrame( - np.minimum( - n_heuristic * pmin, np.array(pdispo).reshape((self.number_hours, 1)) - ), - index=[ - list(range(week * self.number_hours, (week + 1) * self.number_hours)) - ], - columns=[scenario], - ) - - return mingen_heuristic - - def get_network_fast_heuristic(self, delta: int, number_blocks: int) -> Network: + for k in range(number_hours // delta): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + cluster_id, + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): ( + 1 + if (t % self.number_hours >= start_k) + and (t % self.number_hours < end_k) + else 0 + ) + for t in range(self.number_hours * self.number_week) + } + ), + ) + + def get_network_fast_heuristic( + self, delta: int, number_blocks: int, cluster_id: str + ) -> Network: block = create_component( - model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, id="B" + model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, + id=cluster_id, ) network = Network("test") network.add_component(block) return network + def get_database( + self, + data_dir: Path, + yml_file: str, + cluster_id: List[str], + hours_in_week: int, + fast: bool, + ) -> DataBase: + components_file = get_input_components(data_dir / yml_file) + database = build_data_base(components_file, data_dir) -def modify_lower_bound_of_cluster( - lower_bound: Dict[str, AbstractDataStructure], - database: DataBase, - list_cluster_id: List[str], -) -> None: - for cluster_id in list_cluster_id: - database.add_data(cluster_id, "nb_units_min", lower_bound[cluster_id]) - database.add_data(cluster_id, "min_generating", lower_bound[cluster_id]) + complete_database_with_cluster_parameters( + database, + list_cluster_id=cluster_id, + dir_path=data_dir, + hours_in_week=hours_in_week, + ) + + if fast: + self.complete_database_for_fast_heuristic( + database, cluster_id, hours_in_week + ) + + return database def complete_database_with_cluster_parameters( @@ -343,9 +414,11 @@ def complete_database_with_cluster_parameters( ) else: - max_units, max_failures, nb_units_max_min_down_time = ( - compute_cluster_parameters(hours_in_week, data) - ) + ( + max_units, + max_failures, + nb_units_max_min_down_time, + ) = compute_cluster_parameters(hours_in_week, data) database.add_data( cluster_id, "nb_units_max", @@ -386,22 +459,6 @@ def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: return [c.id for c in network.components if c.model.id == cluster_model_id] -def get_database( - data_dir: Path, yml_file: str, cluster_id: List[str], hours_in_week: int -) -> DataBase: - components_file = get_input_components(data_dir / yml_file) - database = build_data_base(components_file, data_dir) - - complete_database_with_cluster_parameters( - database, - list_cluster_id=cluster_id, - dir_path=data_dir, - hours_in_week=hours_in_week, - ) - - return database - - def get_network(compo_file: Path, lib: Library) -> Network: components_file = get_input_components(compo_file) components_input = resolve_components_and_cnx(components_file, lib) diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py new file mode 100644 index 00000000..68253acf --- /dev/null +++ b/src/andromede/thermal_heuristic/workflow.py @@ -0,0 +1,98 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from pathlib import Path +from typing import Dict, Iterable, List, Optional + +import numpy as np +import ortools.linear_solver.pywraplp as pywraplp +import pandas as pd + +from andromede.model import Model, PortType +from andromede.model.library import Library, library +from andromede.simulation import ( + BlockBorderManagement, + OutputValues, + TimeBlock, + build_problem, +) +from andromede.simulation.optimization import OptimizationProblem +from andromede.study import ( + ConstantData, + DataBase, + Network, + TimeIndex, + TimeScenarioSeriesData, + TimeSeriesData, + create_component, +) +from andromede.study.data import AbstractDataStructure +from andromede.study.parsing import InputComponents, parse_yaml_components +from andromede.study.resolve_components import ( + build_data_base, + build_network, + resolve_components_and_cnx, +) +from andromede.thermal_heuristic.data import ( + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, +) +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) + + +class ResolutionStep: + def __init__( + self, + timesteps: list[int], + scenarios: list[int], + database: DataBase, + network: Network, + ) -> None: + self.timesteps = timesteps + self.scenarios = scenarios + + problem = build_problem( + network, + database, + TimeBlock(1, timesteps), + scenarios, + border_management=BlockBorderManagement.CYCLE, + ) + + self.problem = problem + + def solve( + self, + solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), + ) -> int: + status = self.problem.solver.Solve(solver_parameters) + + self.output = OutputValues(self.problem) + self.objective = self.problem.solver.Objective().Value() + + return status + + +class ConnectionBetweenResolutionSteps: + def __init__(self) -> None: + pass + + +class Workflow: + def __init__(self) -> None: + pass diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index d6859619..c2f0aa7b 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -13,16 +13,10 @@ from pathlib import Path import numpy as np +import ortools.linear_solver.pywraplp as pywraplp import pandas as pd import pytest -from andromede.simulation import OutputValues -from andromede.study import ConstantData, TimeScenarioSeriesData -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, -) - from andromede.libs.standard import ( BALANCE_PORT_TYPE, DEMAND_MODEL, @@ -30,6 +24,11 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues +from andromede.study import ConstantData, TimeScenarioSeriesData +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -59,10 +58,8 @@ def test_milp_version() -> None: + 3 x 1 (fixed cost step 13) = 16 805 387 """ - number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, + number_hours=168, lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", @@ -74,17 +71,18 @@ def test_milp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=1, + list_scenario=list(range(1)), ) - problem = thermal_problem_builder.get_main_problem( - lower_bound={"G": ConstantData(0)}, + main_resolution_step = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem.solver.Solve() + status = main_resolution_step.solve() - assert status == problem.solver.OPTIMAL - assert problem.solver.Objective().Value() == 16805387 + assert status == pywraplp.Solver.OPTIMAL + assert main_resolution_step.objective == 16805387 expected_output = ExpectedOutput( mode="milp", @@ -96,7 +94,7 @@ def test_milp_version() -> None: idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values(problem) + expected_output.check_output_values(main_resolution_step.output) def test_lp_version() -> None: @@ -125,10 +123,8 @@ def test_lp_version() -> None: + 0,05 x 50 (start up cost step 13) = 16 802 840,55 """ - number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, + number_hours=168, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", @@ -140,17 +136,18 @@ def test_lp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=1, + list_scenario=list(range(1)), ) - problem = thermal_problem_builder.get_main_problem( - lower_bound={"G": ConstantData(0)}, + main_resolution_step = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem.solver.Solve() + status = main_resolution_step.solve() - assert status == problem.solver.OPTIMAL - assert problem.solver.Objective().Value() == pytest.approx(16802840.55) + assert status == pywraplp.Solver.OPTIMAL + assert main_resolution_step.objective == pytest.approx(16802840.55) expected_output = ExpectedOutput( mode="lp", @@ -162,9 +159,7 @@ def test_lp_version() -> None: idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values( - problem, - ) + expected_output.check_output_values(main_resolution_step.output) def test_accurate_heuristic() -> None: @@ -172,10 +167,8 @@ def test_accurate_heuristic() -> None: Solve the same problem as before with the heuristic accurate of Antares """ - number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, + number_hours=168, lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", @@ -187,62 +180,63 @@ def test_accurate_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=1, + list_scenario=list(range(1)), ) # First optimization - problem_optimization_1 = thermal_problem_builder.get_main_problem( - lower_bound={"G": ConstantData(0)}, + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem_optimization_1.solver.Solve() - - assert status == problem_optimization_1.solver.OPTIMAL + status = resolution_step_1.solve() + assert status == pywraplp.Solver.OPTIMAL # Get number of on units and round it to integer - output_1 = OutputValues(problem_optimization_1) - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil(np.round(np.array(output_1.component("G").var("nb_on").value), 12)) - ), - index=[i for i in range(number_hours)], - columns=[0], + thermal_problem_builder.update_database_accurate( + resolution_step_1.output, 0, 0, None ) - n_guide = TimeScenarioSeriesData(nb_on_1) - for time_step in range(number_hours): - assert nb_on_1.iloc[time_step, 0] == 2 if time_step != 12 else 3 + for time_step in range(thermal_problem_builder.number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex("G", "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) # Solve heuristic problem - problem_accurate_heuristic = thermal_problem_builder.get_problem_accurate_heuristic( - {"G": n_guide}, week=0, scenario=0, cluster_id="G" + resolution_step_accurate_heuristic = ( + thermal_problem_builder.get_resolution_step_accurate_heuristic( + week=0, scenario=0, cluster_id="G" + ) ) - status = problem_accurate_heuristic.solver.Solve() + status = resolution_step_accurate_heuristic.solve() + assert status == pywraplp.Solver.OPTIMAL - assert status == problem_accurate_heuristic.solver.OPTIMAL - - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil(np.array(output_heuristic.component("G").var("nb_on").value)) - ), - index=[i for i in range(number_hours)], - columns=[0], + thermal_problem_builder.update_database_accurate( + resolution_step_accurate_heuristic.output, 0, 0, None ) - nb_on_min = TimeScenarioSeriesData(nb_on_heuristic) - for time_step in range(number_hours): - assert nb_on_heuristic.iloc[time_step, 0] == 2 if time_step != 12 else 3 + for time_step in range(thermal_problem_builder.number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex("G", "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) # Second optimization with lower bound modified - problem_optimization_2 = thermal_problem_builder.get_main_problem( - lower_bound={"G": nb_on_min}, + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem_optimization_2.solver.Solve() - - assert status == problem_optimization_2.solver.OPTIMAL - assert problem_optimization_2.solver.Objective().Value() == 16805387 + status = resolution_step_2.solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.objective == 16805387 expected_output = ExpectedOutput( mode="accurate", @@ -254,7 +248,7 @@ def test_accurate_heuristic() -> None: idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) - expected_output.check_output_values(problem_optimization_2) + expected_output.check_output_values(resolution_step_2.output) def test_fast_heuristic() -> None: @@ -297,51 +291,52 @@ def test_fast_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=1, + list_scenario=list(range(1)), ) # First optimization - problem_optimization_1 = thermal_problem_builder.get_main_problem( - lower_bound={"G": ConstantData(0)}, + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem_optimization_1.solver.Solve() - - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units - output_1 = OutputValues(problem_optimization_1) + status = resolution_step_1.solve() + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_fast_before_heuristic( + resolution_step_1.output, 0 + ) # Solve heuristic problem - problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( - output_1.component("G").var("generation").value[0], # type:ignore - thermal_cluster="G", - week=0, - scenario=0, + resolution_step_heuristic = ( + thermal_problem_builder.get_resolution_step_fast_heuristic( + thermal_cluster="G", + week=0, + scenario=0, + ) ) - mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( - problem_heuristic, 0, 0, "G" + resolution_step_heuristic.solve() + thermal_problem_builder.update_database_fast_after_heuristic( + resolution_step_heuristic.output, 0, 0, None ) - mingen = TimeScenarioSeriesData(mingen_heuristic) - for time_step in range(number_hours): assert ( - mingen_heuristic.iloc[time_step, 0] == 3 * 700 + thermal_problem_builder.database.get_value( + ComponentParameterIndex("G", "min_generating"), time_step, 0 + ) + == 3 * 700 if time_step in [t for t in range(10, 20)] else 2 * 700 ) # Second optimization with lower bound modified - problem_optimization_2 = thermal_problem_builder.get_main_problem( - lower_bound={"G": mingen}, + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, ) - status = problem_optimization_2.solver.Solve() - - assert status == problem_optimization_2.solver.OPTIMAL - assert problem_optimization_2.solver.Objective().Value() == pytest.approx(16850000) + status = resolution_step_2.solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.objective == pytest.approx(16850000) expected_output = ExpectedOutput( mode="fast", @@ -353,4 +348,4 @@ def test_fast_heuristic() -> None: idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) - expected_output.check_output_values(problem_optimization_2) + expected_output.check_output_values(resolution_step_2.output) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index b206feae..fa5958cb 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -19,10 +19,8 @@ from andromede.simulation import OutputValues from andromede.study import ConstantData, TimeScenarioSeriesData -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, -) - +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -43,6 +41,8 @@ def test_accurate_heuristic() -> None: initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[], models=[], + number_week=1, + list_scenario=list(range(1)), ) parameters = pywraplp.MPSolverParameters() @@ -64,28 +64,30 @@ def test_accurate_heuristic() -> None: index=list(range(week * number_hours, (week + 1) * number_hours)), columns=[scenario], ) - n_guide = TimeScenarioSeriesData(nb_on_1) + thermal_problem_builder.database.add_data( + cluster, "nb_units_min", TimeScenarioSeriesData(nb_on_1) + ) # Solve heuristic problem - problem_accurate_heuristic = ( - thermal_problem_builder.get_problem_accurate_heuristic( - { - "G" - + str(i): ConstantData(0) if "G" + str(i) != cluster else n_guide - for i in range(1, 7) - }, + resolution_step_accurate_heuristic = ( + thermal_problem_builder.get_resolution_step_accurate_heuristic( week=week, scenario=scenario, cluster_id=cluster, ) ) - status = problem_accurate_heuristic.solver.Solve(parameters) + status = resolution_step_accurate_heuristic.solve(parameters) - assert status == problem_accurate_heuristic.solver.OPTIMAL + assert status == pywraplp.Solver.OPTIMAL - output_heuristic = OutputValues(problem_accurate_heuristic) nb_on_heuristic = np.transpose( - np.ceil(np.array(output_heuristic.component(cluster).var("nb_on").value)) + np.ceil( + np.array( + resolution_step_accurate_heuristic.output.component(cluster) + .var("nb_on") + .value + ) + ) ) expected_output = np.loadtxt( @@ -112,28 +114,51 @@ def test_fast_heuristic() -> None: initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[], models=[], + number_week=1, + list_scenario=list(range(1)), ) for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): - nb_on_1 = np.loadtxt( - f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster{j+1}.txt" + pmax = thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "p_max"), 0, 0 + ) + nb_on_1 = pd.DataFrame( + np.ceil( + np.round( + np.loadtxt( + f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster{j+1}.txt" + ) # type: ignore + / pmax, + 12, + ) + ), + index=list(range(week * number_hours, (week + 1) * number_hours)), + columns=[scenario], + ) + + thermal_problem_builder.database.add_data( + cluster, "n_guide", TimeScenarioSeriesData(nb_on_1) ) # Solve heuristic problem - problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( - nb_on_1, # type:ignore - thermal_cluster=cluster, - week=week, - scenario=scenario, + resolution_step_heuristic = ( + thermal_problem_builder.get_resolution_step_fast_heuristic( + thermal_cluster=cluster, + week=week, + scenario=scenario, + ) ) - mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( - problem_heuristic, week, scenario, cluster + status = resolution_step_heuristic.solve() + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_fast_after_heuristic( + resolution_step_heuristic.output, week, scenario, [cluster] ) expected_output = np.loadtxt( f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" ) - assert list(mingen_heuristic.values[:, 0]) == [ - pytest.approx(x) for x in expected_output - ] + for t in range(number_hours): + assert thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "min_generating"), t, scenario + ) == pytest.approx(expected_output[t]) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index b96abeba..7ca7575c 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -18,14 +18,6 @@ import pandas as pd import pytest -from andromede.simulation import OutputValues -from andromede.study import ConstantData, TimeScenarioSeriesData -from andromede.study.data import AbstractDataStructure -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, -) - from andromede.libs.standard import ( BALANCE_PORT_TYPE, DEMAND_MODEL, @@ -33,6 +25,11 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues +from andromede.study import ConstantData, TimeScenarioSeriesData +from andromede.study.data import AbstractDataStructure +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -57,28 +54,25 @@ def test_milp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=2, + list_scenario=list(range(scenarios)), ) + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) + for scenario in range(scenarios): for week in range(2): - problem = thermal_problem_builder.get_main_problem( - lower_bound={ - "G1": ConstantData(0), - "G2": ConstantData(0), - "G3": ConstantData(0), - }, + resolution_step = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) + status = resolution_step.solve(parameters) - status = problem.solver.Solve(parameters) - - assert status == problem.solver.OPTIMAL + assert status == pywraplp.Solver.OPTIMAL expected_output = ExpectedOutput( mode="milp", @@ -88,12 +82,10 @@ def test_milp_version() -> None: list_cluster=["G1", "G2", "G3"], output_idx=output_indexes, ) - expected_output.check_output_values( - problem, - ) + expected_output.check_output_values(resolution_step.output) expected_cost = [[78933742, 102103587], [17472101, 17424769]] - assert problem.solver.Objective().Value() == pytest.approx( + assert resolution_step.objective == pytest.approx( expected_cost[scenario][week] ) @@ -127,78 +119,47 @@ def test_accurate_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=2, + list_scenario=list(range(scenarios)), ) for scenario in range(scenarios): for week in range(2): # First optimization - problem_optimization_1 = thermal_problem_builder.get_main_problem( - lower_bound={ - "G1": ConstantData(0), - "G2": ConstantData(0), - "G3": ConstantData(0), - }, + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, ) - status = problem_optimization_1.solver.Solve(parameters) + status = resolution_step_1.solve(parameters) + assert status == pywraplp.Solver.OPTIMAL - assert status == problem_optimization_1.solver.OPTIMAL + thermal_problem_builder.update_database_accurate( + resolution_step_1.output, week, scenario, None + ) - # Get number of on units and round it to integer - output_1 = OutputValues(problem_optimization_1) - nb_on_min: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: - nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round( - np.array(output_1.component(g).var("nb_on").value), 12 - ) - ) - ), - index=list(range(number_hours * week, number_hours * (week + 1))), - columns=[scenario], - ) - n_guide = TimeScenarioSeriesData(nb_on_1) - # Solve heuristic problem - problem_accurate_heuristic = ( - thermal_problem_builder.get_problem_accurate_heuristic( - { - th: n_guide if th == g else ConstantData(0) - for th in ["G1", "G2", "G3"] - }, + resolution_step_accurate_heuristic = ( + thermal_problem_builder.get_resolution_step_accurate_heuristic( week=week, scenario=scenario, cluster_id=g, ) ) - status = problem_accurate_heuristic.solver.Solve(parameters) - - assert status == problem_accurate_heuristic.solver.OPTIMAL - - output_heuristic = OutputValues(problem_accurate_heuristic) - nb_on_heuristic = pd.DataFrame( - np.transpose( - np.ceil( - np.array(output_heuristic.component(g).var("nb_on").value) - ) - ), - index=list(range(number_hours * week, number_hours * (week + 1))), - columns=[scenario], + status = resolution_step_accurate_heuristic.solve(parameters) + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_accurate( + resolution_step_accurate_heuristic.output, week, scenario, [g] ) - nb_on_min[g] = TimeScenarioSeriesData(nb_on_heuristic) # Second optimization with lower bound modified - problem_optimization_2 = thermal_problem_builder.get_main_problem( - lower_bound=nb_on_min, + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, ) - status = problem_optimization_2.solver.Solve(parameters) - - assert status == problem_optimization_2.solver.OPTIMAL + status = resolution_step_2.solve(parameters) + assert status == pywraplp.Solver.OPTIMAL expected_output = ExpectedOutput( mode="accurate", @@ -208,15 +169,13 @@ def test_accurate_heuristic() -> None: list_cluster=["G1", "G2", "G3"], output_idx=output_indexes, ) - expected_output.check_output_values( - problem_optimization_2, - ) + expected_output.check_output_values(resolution_step_2.output) expected_cost = [ [78996726, 102215087 - 69500], [17589534, 17641808], ] - assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + assert resolution_step_2.objective == pytest.approx( expected_cost[scenario][week] ) @@ -250,54 +209,46 @@ def test_fast_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], + number_week=2, + list_scenario=list(range(scenarios)), ) for scenario in range(scenarios): for week in range(weeks): # First optimization - problem_optimization_1 = thermal_problem_builder.get_main_problem( - lower_bound={ - "G1": ConstantData(0), - "G2": ConstantData(0), - "G3": ConstantData(0), - }, + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, ) - status = problem_optimization_1.solver.Solve(parameters) + status = resolution_step_1.solve(parameters) + assert status == pywraplp.Solver.OPTIMAL - assert status == problem_optimization_1.solver.OPTIMAL - - # Get number of on units - output_1 = OutputValues(problem_optimization_1) + thermal_problem_builder.update_database_fast_before_heuristic( + resolution_step_1.output, week + ) - # Solve heuristic problem - mingen: Dict[str, AbstractDataStructure] = {} for g in ["G1", "G2", "G3"]: # - problem_heuristic = thermal_problem_builder.get_problem_fast_heuristic( - output_1.component(g).var("generation").value[0], # type:ignore - thermal_cluster=g, - week=week, - scenario=scenario, - ) - mingen_heuristic = thermal_problem_builder.get_output_heuristic_fast( - problem_heuristic, - thermal_cluster=g, - week=week, - scenario=scenario, + resolution_step_heuristic = ( + thermal_problem_builder.get_resolution_step_fast_heuristic( + thermal_cluster=g, + week=week, + scenario=scenario, + ) ) + status = resolution_step_heuristic.solve() + assert status == pywraplp.Solver.OPTIMAL - mingen[g] = TimeScenarioSeriesData(mingen_heuristic) + thermal_problem_builder.update_database_fast_after_heuristic( + resolution_step_heuristic.output, week, scenario, [g] + ) # Second optimization with lower bound modified - problem_optimization_2 = thermal_problem_builder.get_main_problem( - lower_bound=mingen, + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, ) - status = problem_optimization_2.solver.Solve(parameters) - - assert status == problem_optimization_2.solver.OPTIMAL + status = resolution_step_2.solve(parameters) + assert status == pywraplp.Solver.OPTIMAL expected_output = ExpectedOutput( mode="fast", @@ -308,13 +259,13 @@ def test_fast_heuristic() -> None: output_idx=output_indexes, ) expected_output.check_output_values( - problem_optimization_2, + resolution_step_2.output, ) expected_cost = [ [79277215 - 630089, 102461792 - 699765], [17803738 - 661246, 17720390 - 661246], ] - assert problem_optimization_2.solver.Objective().Value() == pytest.approx( + assert resolution_step_2.objective == pytest.approx( expected_cost[scenario][week] ) From a3325e783abd9fd1c16854dea5c81a736a81e631 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 4 Jul 2024 18:03:31 +0200 Subject: [PATCH 46/93] Simplify get_value out of database --- src/andromede/study/data.py | 10 ++-------- src/andromede/thermal_heuristic/problem.py | 14 ++++++++++++-- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index c40796c1..9d3c16f5 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -139,14 +139,8 @@ class TimeScenarioSeriesData(AbstractDataStructure): time_scenario_series: pd.DataFrame def get_value(self, timestep: int, scenario: int) -> float: - if self.time_scenario_series.shape[1] == 1: - value = str(self.time_scenario_series.loc[[timestep]].iloc[0, 0]) - return float(value) - value = str(self.time_scenario_series.loc[timestep, scenario]) - try: - return float(value) - except ValueError: - return float(list(self.time_scenario_series.loc[timestep, scenario])[0]) + value = str(self.time_scenario_series.iloc[timestep, scenario]) + return float(value) def get_max_value(self) -> float: return self.time_scenario_series.values.max() diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index beb61197..e3a4195e 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -177,8 +177,18 @@ def update_database_fast_before_heuristic( "n_guide", TimeSeriesData( { - TimeIndex(i + week * self.number_hours): nb_on_1[i] - for i in range(self.number_hours) + TimeIndex(i): ( + nb_on_1[i % self.number_hours] + if i + in list( + range( + week * self.number_hours, + (week + 1) * self.number_hours, + ) + ) + else 0 + ) + for i in range(self.number_hours * self.number_week) } ), ) From 5fadf5d89819861fa8789850d465aab4425ad825 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 8 Jul 2024 11:17:07 +0200 Subject: [PATCH 47/93] Simplify update of database --- src/andromede/study/data.py | 47 ++++++ src/andromede/thermal_heuristic/problem.py | 149 +++++++----------- .../test_thermal_heuristic_one_cluster.py | 2 +- .../test_thermal_heuristic_three_clusters.py | 2 +- 4 files changed, 107 insertions(+), 93 deletions(-) diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index 9d3c16f5..bf5709bc 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -41,6 +41,9 @@ class AbstractDataStructure(ABC): def get_value(self, timestep: int, scenario: int) -> float: return NotImplemented + def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + return NotImplemented + def get_max_value(self) -> float: return NotImplemented @@ -60,6 +63,9 @@ class ConstantData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.value + def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + return NotImplemented + def get_max_value(self) -> float: return self.value @@ -83,6 +89,10 @@ class TimeSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.time_series[TimeIndex(timestep)] + def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + self.time_series[TimeIndex(timestep)] = value + return True + def get_max_value(self) -> float: return max(self.time_series.values()) @@ -106,6 +116,10 @@ class ScenarioSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.scenario_series[ScenarioIndex(scenario)] + def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + self.scenario_series[ScenarioIndex(scenario)] = value + return True + def get_max_value(self) -> float: return max(self.scenario_series.values()) @@ -142,6 +156,10 @@ def get_value(self, timestep: int, scenario: int) -> float: value = str(self.time_scenario_series.iloc[timestep, scenario]) return float(value) + def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + self.time_scenario_series.iloc[timestep, scenario] = value + return True + def get_max_value(self) -> float: return self.time_scenario_series.values.max() @@ -187,6 +205,20 @@ def get_value( else: raise KeyError(f"Index {index} not found.") + def edit_value( + self, index: ComponentParameterIndex, value: float, timestep: int, scenario: int + ) -> None: + done = self._data[index].edit_value(value, timestep, scenario) + if done is not True: + raise ValueError + + def convert_to_time_scenario_series_data( + self, index: ComponentParameterIndex, timesteps: int, scenarios: int + ) -> None: + self._data[index] = convert_to_time_scenario_series_data( + self._data[index], timesteps, scenarios + ) + def requirements_consistency(self, network: Network) -> None: for component in network.components: for param in component.model.parameters.values(): @@ -199,3 +231,18 @@ def requirements_consistency(self, network: Network) -> None: raise ValueError( f"Data inconsistency for component: {component.id}, parameter: {param.name}. Requirement not met." ) + + +def convert_to_time_scenario_series_data( + initial_data: AbstractDataStructure, timesteps: int, scenarios: int +) -> TimeScenarioSeriesData: + + data = pd.DataFrame( + [ + [initial_data.get_value(t, s) for s in range(scenarios)] + for t in range(timesteps) + ], + index=list(range(timesteps)), + columns=list(range(scenarios)), + ) + return TimeScenarioSeriesData(data) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index e3a4195e..c18bae41 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -14,18 +14,15 @@ from typing import Dict, Iterable, List, Optional import numpy as np -import ortools.linear_solver.pywraplp as pywraplp import pandas as pd +from math import ceil + from andromede.model import Model, PortType from andromede.model.library import Library, library from andromede.simulation import ( - BlockBorderManagement, OutputValues, - TimeBlock, - build_problem, ) -from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( ConstantData, DataBase, @@ -35,7 +32,9 @@ TimeSeriesData, create_component, ) -from andromede.study.data import AbstractDataStructure, ComponentParameterIndex +from andromede.study.data import ( + ComponentParameterIndex, +) from andromede.study.parsing import InputComponents, parse_yaml_components from andromede.study.resolve_components import ( build_data_base, @@ -124,75 +123,55 @@ def update_database_accurate( self.network, self.initial_thermal_model.id ) for cluster in list_cluster_id: - nb_on = np.zeros( - (self.number_hours * self.number_week, len(self.list_scenario)) - ) - nb_on[ - range(week * self.number_hours, (week + 1) * self.number_hours), - scenario, - ] = np.ceil( - np.round( - output.component(cluster).var("nb_on").value[0], # type:ignore - 12, - ) + + self.database.convert_to_time_scenario_series_data( + ComponentParameterIndex(cluster, "nb_units_min"), + self.number_hours * self.number_week, + len(self.list_scenario), ) - for s in self.list_scenario: - if s != scenario: - for t in range(self.number_week * self.number_hours): - if t not in list( - range( - week * self.number_hours, (week + 1) * self.number_hours - ) - ): - nb_on[t, s] = self.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), t, s - ) - nb_on_min = TimeScenarioSeriesData( - pd.DataFrame( - nb_on, - index=[list(range(self.number_week * self.number_hours))], - columns=self.list_scenario, + nb_on = output.component(cluster).var("nb_on").value[0] # type:ignore + + for i, t in enumerate( + list(range(week * self.number_hours, (week + 1) * self.number_hours)) + ): + self.database.edit_value( + ComponentParameterIndex(cluster, "nb_units_min"), + ceil(round(nb_on[i], 12)), # type:ignore + t, + scenario, ) - ) - - self.database.add_data(cluster, "nb_units_min", nb_on_min) def update_database_fast_before_heuristic( - self, output: OutputValues, week: int + self, output: OutputValues, week: int, scenario: int ) -> None: for cluster in get_cluster_id(self.network, self.initial_thermal_model.id): pmax = self.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) - nb_on_1 = np.ceil( - np.round( - np.array(output.component(cluster).var("generation").value[0]) # type: ignore - / pmax, - 12, - ) - ) + nb_on_1 = output.component(cluster).var("generation").value[0] # type: ignore - self.database.add_data( - cluster, - "n_guide", - TimeSeriesData( - { - TimeIndex(i): ( - nb_on_1[i % self.number_hours] - if i - in list( - range( - week * self.number_hours, - (week + 1) * self.number_hours, - ) - ) - else 0 - ) - for i in range(self.number_hours * self.number_week) - } - ), + self.database.add_data(cluster, "n_guide", ConstantData(0)) + self.database.convert_to_time_scenario_series_data( + ComponentParameterIndex(cluster, "n_guide"), + self.number_hours * self.number_week, + len(self.list_scenario), ) + for i, t in enumerate( + list( + range( + week * self.number_hours, + (week + 1) * self.number_hours, + ) + ) + ): + self.database.edit_value( + ComponentParameterIndex(cluster, "n_guide"), + ceil(round(nb_on_1[i] / pmax, 12)), # type: ignore + t, + scenario, + ) + def update_database_fast_after_heuristic( self, output: OutputValues, @@ -215,41 +194,29 @@ def update_database_fast_after_heuristic( for t in range(week * self.number_hours, (week + 1) * self.number_hours) ] - min_gen = np.zeros( - (self.number_hours * self.number_week, len(self.list_scenario)) + self.database.convert_to_time_scenario_series_data( + ComponentParameterIndex(cluster, "min_generating"), + self.number_hours * self.number_week, + len(self.list_scenario), ) - min_gen[ - range(week * self.number_hours, (week + 1) * self.number_hours), - scenario, - ] = np.minimum( + + min_gen = np.minimum( np.array( output.component(cluster).var("n").value[0] # type:ignore ).reshape((self.number_hours, 1)) * pmin, np.array(pdispo).reshape((self.number_hours, 1)), - ).reshape( - self.number_hours - ) - - for s in self.list_scenario: - if s != scenario: - for t in range(self.number_week * self.number_hours): - if t not in list( - range( - week * self.number_hours, (week + 1) * self.number_hours - ) - ): - min_gen[t, s] = self.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), t, s - ) - min_gen_df = TimeScenarioSeriesData( - pd.DataFrame( - min_gen, - index=[list(range(self.number_week * self.number_hours))], - columns=self.list_scenario, + ).reshape(self.number_hours) + + for i, t in enumerate( + list(range(week * self.number_hours, (week + 1) * self.number_hours)) + ): + self.database.edit_value( + ComponentParameterIndex(cluster, "min_generating"), + min_gen[i], + t, + scenario, ) - ) - self.database.add_data(cluster, "min_generating", min_gen_df) def get_resolution_step_accurate_heuristic( self, diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index c2f0aa7b..075e1602 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -304,7 +304,7 @@ def test_fast_heuristic() -> None: assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, 0 + resolution_step_1.output, 0, 0 ) # Solve heuristic problem resolution_step_heuristic = ( diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 7ca7575c..e7bb5063 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -224,7 +224,7 @@ def test_fast_heuristic() -> None: assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, week + resolution_step_1.output, week, scenario ) for g in ["G1", "G2", "G3"]: # From f259b55304ade6a10da9574c64e817806a9f2205 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 8 Jul 2024 11:22:33 +0200 Subject: [PATCH 48/93] Fix ci --- src/andromede/study/data.py | 1 - src/andromede/thermal_heuristic/problem.py | 12 +++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index bf5709bc..53546b1a 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -236,7 +236,6 @@ def requirements_consistency(self, network: Network) -> None: def convert_to_time_scenario_series_data( initial_data: AbstractDataStructure, timesteps: int, scenarios: int ) -> TimeScenarioSeriesData: - data = pd.DataFrame( [ [initial_data.get_value(t, s) for s in range(scenarios)] diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index c18bae41..a8c4c75c 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -10,19 +10,16 @@ # # This file is part of the Antares project. +from math import ceil from pathlib import Path from typing import Dict, Iterable, List, Optional import numpy as np import pandas as pd -from math import ceil - from andromede.model import Model, PortType from andromede.model.library import Library, library -from andromede.simulation import ( - OutputValues, -) +from andromede.simulation import OutputValues from andromede.study import ( ConstantData, DataBase, @@ -32,9 +29,7 @@ TimeSeriesData, create_component, ) -from andromede.study.data import ( - ComponentParameterIndex, -) +from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents, parse_yaml_components from andromede.study.resolve_components import ( build_data_base, @@ -123,7 +118,6 @@ def update_database_accurate( self.network, self.initial_thermal_model.id ) for cluster in list_cluster_id: - self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "nb_units_min"), self.number_hours * self.number_week, From f59285cf56de6badf22171d6ff298fc903ee1b03 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 8 Jul 2024 17:57:05 +0200 Subject: [PATCH 49/93] Remove not used imports --- tests/functional/test_thermal_heuristic_one_cluster.py | 4 ---- tests/functional/test_thermal_heuristic_six_clusters.py | 3 +-- tests/functional/test_thermal_heuristic_three_clusters.py | 6 ------ 3 files changed, 1 insertion(+), 12 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 075e1602..e4a37f5b 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -12,9 +12,7 @@ from pathlib import Path -import numpy as np import ortools.linear_solver.pywraplp as pywraplp -import pandas as pd import pytest from andromede.libs.standard import ( @@ -24,8 +22,6 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.simulation import OutputValues -from andromede.study import ConstantData, TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ThermalProblemBuilder diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index fa5958cb..1f44e4a9 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -17,8 +17,7 @@ import pandas as pd import pytest -from andromede.simulation import OutputValues -from andromede.study import ConstantData, TimeScenarioSeriesData +from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index e7bb5063..52919486 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -11,11 +11,8 @@ # This file is part of the Antares project. from pathlib import Path -from typing import Dict -import numpy as np import ortools.linear_solver.pywraplp as pywraplp -import pandas as pd import pytest from andromede.libs.standard import ( @@ -25,9 +22,6 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.simulation import OutputValues -from andromede.study import ConstantData, TimeScenarioSeriesData -from andromede.study.data import AbstractDataStructure from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP From b6ec938912b03319c4535bcdd71bd1514283a8be Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 15 Jul 2024 14:32:25 +0200 Subject: [PATCH 50/93] New test --- .../components.yml | 49 +++++ .../itr1_fast_cluster.txt | 168 ++++++++++++++++++ .../itr2_fast_cluster.txt | 168 ++++++++++++++++++ ...l_heuristic_fast_min_down_not_respected.py | 91 ++++++++++ 4 files changed, 476 insertions(+) create mode 100644 tests/functional/data/thermal_heuristic_fast_min_down_not_respected/components.yml create mode 100644 tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt create mode 100644 tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt create mode 100644 tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py diff --git a/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/components.yml b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/components.yml new file mode 100644 index 00000000..dccbea26 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/components.yml @@ -0,0 +1,49 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + components: + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 1318.5 + - name: p_min + type: constant + value: 870.21 + - name: cost + type: constant + value: 0 + - name: startup_cost + type: constant + value: 0 + - name: fixed_cost + type: constant + value: 0 + - name: d_min_up + type: constant + value: 72 + - name: d_min_down + type: constant + value: 30 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 20 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 22064 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt new file mode 100644 index 00000000..a3af72b2 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt @@ -0,0 +1,168 @@ +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +1.348931562100992051e+04 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +5.346886591584365306e+03 +5.621959990000001198e+03 +5.547999990000001162e+03 +5.706039990000001126e+03 +8.873079990000001999e+03 +4.276119990000001053e+03 +5.494159980000002179e+03 +6.051199980000000323e+03 +4.282239980000001196e+03 +3.214628002076438861e+03 +1.644279990000000907e+03 +6.037278330187548818e+03 +1.174831999000000360e+04 +1.451883999000000222e+04 +1.408095910568306135e+04 +1.265693287617486749e+04 +1.987689160327871832e+03 +6.536677138469948659e+03 +9.095654187650279709e+03 +7.889680417158471755e+03 +3.339087193114760794e+03 +5.302477357307655438e+03 +4.031111455409835798e+03 +8.418677988142137110e+03 +1.150179533467353031e+04 +7.812626869028314104e+03 +1.688945037378975940e+03 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +8.899112347049169330e+03 +1.325622958202186783e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +1.669222476038255263e+04 +1.962963997000000381e+04 +1.497669526961748852e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.130248388388000240e+04 +2.145025228559306561e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 +2.206400000000000000e+04 diff --git a/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt new file mode 100644 index 00000000..6a33494f --- /dev/null +++ b/tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt @@ -0,0 +1,168 @@ +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +0.000000000000000000e+00 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 +1.479356999999999971e+04 diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py new file mode 100644 index 00000000..c93c164d --- /dev/null +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -0,0 +1,91 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from pathlib import Path + +import numpy as np +import ortools.linear_solver.pywraplp as pywraplp +import pandas as pd +import pytest + +from andromede.study import TimeScenarioSeriesData +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP + + +def test_fast_heuristic() -> None: + """ + Solve the same problem as before with the heuristic fast of Antares + """ + number_hours = 168 + scenario = 0 + week = 0 + + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent + / "data/thermal_heuristic_fast_min_down_not_respected", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[], + models=[], + number_week=1, + list_scenario=list(range(1)), + ) + + cluster = "G1" + + pmax = thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "p_max"), 0, 0 + ) + nb_on_1 = pd.DataFrame( + np.ceil( + np.round( + np.loadtxt( + f"tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt" + ) # type: ignore + / pmax, + 12, + ) + ), + index=list(range(week * number_hours, (week + 1) * number_hours)), + columns=[scenario], + ) + + thermal_problem_builder.database.add_data( + cluster, "n_guide", TimeScenarioSeriesData(nb_on_1) + ) + + # Solve heuristic problem + resolution_step_heuristic = ( + thermal_problem_builder.get_resolution_step_fast_heuristic( + thermal_cluster=cluster, + week=week, + scenario=scenario, + ) + ) + + status = resolution_step_heuristic.solve() + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_fast_after_heuristic( + resolution_step_heuristic.output, week, scenario, [cluster] + ) + + expected_output = np.loadtxt( + f"tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt" + ) + for t in range(number_hours): + assert thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "min_generating"), t, scenario + ) == pytest.approx(expected_output[t]) From 38aafbb27dfade2c7f84a33b4ee1551e2623f3b7 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 15 Jul 2024 15:30:23 +0200 Subject: [PATCH 51/93] Small changes --- src/andromede/thermal_heuristic/model.py | 8 ++++---- tests/unittests/thermal_heuristic/test_model.py | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index d266068e..a7a97f5e 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -41,7 +41,7 @@ CONSTANT_PER_SCENARIO = IndexingStructure(False, True) -class ModelEditer: +class ModelEditor: def __init__(self, initial_model: Model) -> None: self.initial_model = initial_model @@ -136,7 +136,7 @@ def filter_and_linearize_variables(self, variables: List[str]) -> List[Variable] ] -class AccurateModelBuilder(ModelEditer): +class AccurateModelBuilder(ModelEditor): def __init__(self, initial_model: Model) -> None: super().__init__(initial_model) THERMAL_CLUSTER_MODEL_LP = model( @@ -151,7 +151,7 @@ def __init__(self, initial_model: Model) -> None: self.model = THERMAL_CLUSTER_MODEL_LP -class FastModelBuilder(ModelEditer): +class FastModelBuilder(ModelEditor): def __init__(self, initial_model: Model) -> None: super().__init__(initial_model) integer_variables = self.get_name_integer_variables() @@ -169,7 +169,7 @@ def __init__(self, initial_model: Model) -> None: self.model = THERMAL_CLUSTER_MODEL_FAST -class HeuristicAccurateModelBuilder(ModelEditer): +class HeuristicAccurateModelBuilder(ModelEditor): def __init__(self, initial_model: Model) -> None: super().__init__(initial_model) generation_variable = ["generation"] diff --git a/tests/unittests/thermal_heuristic/test_model.py b/tests/unittests/thermal_heuristic/test_model.py index eb0efa81..8a6947a7 100644 --- a/tests/unittests/thermal_heuristic/test_model.py +++ b/tests/unittests/thermal_heuristic/test_model.py @@ -13,11 +13,11 @@ from andromede.expression import literal, param, var from andromede.model import model from andromede.model.constraint import Constraint -from andromede.thermal_heuristic.model import ModelEditer +from andromede.thermal_heuristic.model import ModelEditor def test_variable_in_expression() -> None: - model_editer = ModelEditer(model("model")) + model_editer = ModelEditor(model("model")) expression_1 = var("x").sum() + var("y") expression_2 = ( @@ -33,7 +33,7 @@ def test_variable_in_expression() -> None: def test_variable_in_constraint() -> None: - model_editer = ModelEditer(model("model")) + model_editer = ModelEditor(model("model")) expression_1 = var("x").sum() + var("y") expression_2 = ( From 627aeb22efda149194c8502caa6d2076e23ba0d9 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 15 Jul 2024 16:27:35 +0200 Subject: [PATCH 52/93] New test with bc --- .../components_heuristic.yml | 60 ----- .../components_heuristic.yml | 230 ---------------- .../components.yml} | 148 ++++++---- .../demand-ts.txt | 168 ++++++++++++ .../lp/0/details-hourly.txt | 175 ++++++++++++ .../lp/0/values-hourly.txt | 175 ++++++++++++ .../milp/0/details-hourly.txt | 175 ++++++++++++ .../milp/0/values-hourly.txt | 175 ++++++++++++ .../functional/libs/lib_thermal_heuristic.py | 15 +- ..._thermal_heuristic_two_clusters_with_bc.py | 252 ++++++++++++++++++ 10 files changed, 1231 insertions(+), 342 deletions(-) delete mode 100644 tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml delete mode 100644 tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml rename tests/functional/data/{thermal_heuristic_three_clusters/components_heuristic.yml => thermal_heuristic_two_clusters_with_bc/components.yml} (55%) create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_with_bc/demand-ts.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/values-hourly.txt create mode 100644 tests/functional/test_thermal_heuristic_two_clusters_with_bc.py diff --git a/tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml b/tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml deleted file mode 100644 index 4d1f4fc3..00000000 --- a/tests/functional/data/thermal_heuristic_one_cluster/components_heuristic.yml +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright (c) 2024, RTE (https://www.rte-france.com) -# -# See AUTHORS.txt -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# SPDX-License-Identifier: MPL-2.0 -# -# This file is part of the Antares project. -study: - components: - - id: G - model: GEN - parameters: - - name: p_max - type: constant - value: 1000 - - name: p_min - type: constant - value: 700 - - name: cost - type: constant - value: 50 - - name: startup_cost - type: constant - value: 50 - - name: fixed_cost - type: constant - value: 1 - - name: d_min_up - type: constant - value: 3 - - name: d_min_down - type: constant - value: 10 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 3 - - name: max_failure - type: constant - value: 0 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: constant - value: 3000 - - name: nb_units_max_min_down_time - type: constant - value: 3 - - - - - diff --git a/tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml b/tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml deleted file mode 100644 index f39bce2f..00000000 --- a/tests/functional/data/thermal_heuristic_six_clusters/components_heuristic.yml +++ /dev/null @@ -1,230 +0,0 @@ -# Copyright (c) 2024, RTE (https://www.rte-france.com) -# -# See AUTHORS.txt -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# SPDX-License-Identifier: MPL-2.0 -# -# This file is part of the Antares project. -study: - components: - - id: G1 - model: GEN - parameters: - - name: p_max - type: constant - value: 64 - - name: p_min - type: constant - value: 32 - - name: cost - type: constant - value: 165 - - name: startup_cost - type: constant - value: 10 - - name: fixed_cost - type: constant - value: 1 - - name: d_min_up - type: constant - value: 3 - - name: d_min_down - type: constant - value: 3 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 21 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G1 - - id: G2 - model: GEN - parameters: - - name: p_max - type: constant - value: 221 - - name: p_min - type: constant - value: 111 - - name: cost - type: constant - value: 117 - - name: startup_cost - type: constant - value: 20 - - name: fixed_cost - type: constant - value: 2 - - name: d_min_up - type: constant - value: 3 - - name: d_min_down - type: constant - value: 3 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 13 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G2 - - id: G3 - model: GEN - parameters: - - name: p_max - type: constant - value: 486 - - name: p_min - type: constant - value: 194 - - name: cost - type: constant - value: 106 - - name: startup_cost - type: constant - value: 30 - - name: fixed_cost - type: constant - value: 3 - - name: d_min_up - type: constant - value: 2 - - name: d_min_down - type: constant - value: 2 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 13 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G3 - - id: G4 - model: GEN - parameters: - - name: p_max - type: constant - value: 218 - - name: p_min - type: constant - value: 87 - - name: cost - type: constant - value: 135 - - name: startup_cost - type: constant - value: 40 - - name: fixed_cost - type: constant - value: 4 - - name: d_min_up - type: constant - value: 1 - - name: d_min_down - type: constant - value: 1 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 2 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G4 - - id: G5 - model: GEN - parameters: - - name: p_max - type: constant - value: 29 - - name: p_min - type: constant - value: 14 - - name: cost - type: constant - value: 191 - - name: startup_cost - type: constant - value: 50 - - name: fixed_cost - type: constant - value: 5 - - name: d_min_up - type: constant - value: 1 - - name: d_min_down - type: constant - value: 1 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 7 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G5 - - id: G6 - model: GEN - parameters: - - name: p_max - type: constant - value: 159 - - name: p_min - type: constant - value: 80 - - name: cost - type: constant - value: 166 - - name: startup_cost - type: constant - value: 60 - - name: fixed_cost - type: constant - value: 6 - - name: d_min_up - type: constant - value: 3 - - name: d_min_down - type: constant - value: 3 - - name: nb_units_min - type: constant - value: 0 - - name: nb_units_max - type: constant - value: 16 - - name: min_generating - type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G6 - diff --git a/tests/functional/data/thermal_heuristic_three_clusters/components_heuristic.yml b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/components.yml similarity index 55% rename from tests/functional/data/thermal_heuristic_three_clusters/components_heuristic.yml rename to tests/functional/data/thermal_heuristic_two_clusters_with_bc/components.yml index c6c7d03f..e80a4a30 100644 --- a/tests/functional/data/thermal_heuristic_three_clusters/components_heuristic.yml +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/components.yml @@ -10,112 +10,158 @@ # # This file is part of the Antares project. study: + nodes: + - id: N + model: NODE_BALANCE_MODEL + components: - - id: G1 - model: GEN + - id: D + model: FIXED_DEMAND + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: S + model: SPI parameters: - - name: p_max - type: constant - value: 410 - - name: p_min - type: constant - value: 180 - name: cost - type: constant - value: 96 - - name: startup_cost - type: constant - value: 100500 - - name: fixed_cost - type: constant - value: 1 - - name: d_min_up - type: constant - value: 8 - - name: d_min_down - type: constant - value: 8 - - name: nb_units_min type: constant value: 0 - - name: nb_units_max - type: constant - value: 1 - - name: min_generating + - id: U + model: UNSP + parameters: + - name: cost type: constant - value: 0 - - name: max_generating - type: timeseries - timeseries: series_G1 - - id: G2 + value: 1000 + - id: G1 model: GEN parameters: - name: p_max type: constant - value: 90 + value: 1000 - name: p_min type: constant - value: 60 + value: 700 - name: cost type: constant - value: 137 + value: 50 - name: startup_cost type: constant - value: 24500 + value: 50 - name: fixed_cost type: constant value: 1 - name: d_min_up type: constant - value: 11 + value: 3 - name: d_min_down type: constant - value: 11 + value: 10 - name: nb_units_min type: constant value: 0 - name: nb_units_max type: constant value: 3 + - name: max_failure + type: constant + value: 0 - name: min_generating type: constant value: 0 - name: max_generating - type: timeseries - timeseries: series_G2 - - id: G3 + type: constant + value: 3000 + - name: nb_units_max_min_down_time + type: constant + value: 3 + - id: G2 model: GEN parameters: - name: p_max type: constant - value: 275 + value: 500 - name: p_min type: constant - value: 150 + value: 50 - name: cost type: constant - value: 107 + value: 150 - name: startup_cost type: constant - value: 69500 + value: 20 - name: fixed_cost type: constant - value: 1 + value: 2 - name: d_min_up type: constant - value: 9 + value: 4 - name: d_min_down type: constant - value: 9 + value: 4 - name: nb_units_min type: constant value: 0 - name: nb_units_max type: constant - value: 4 + value: 2 + - name: max_failure + type: constant + value: 0 - name: min_generating type: constant value: 0 - name: max_generating - type: timeseries - timeseries: series_G3 \ No newline at end of file + type: constant + value: 1000 + - name: nb_units_max_min_down_time + type: constant + value: 2 + - id: upper_bound_sum + model: BC + parameters: + - name: upper_bound + type: constant + value: 2050 + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G1 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G2 + port_2: balance_port + + - component1: upper_bound_sum + port_1: balance_port + component2: G1 + port_2: balance_port + + - component1: upper_bound_sum + port_1: balance_port + component2: G2 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: U + port_2: balance_port + + - component1: N + port_1: balance_port + component2: S + port_2: balance_port + + + + + diff --git a/tests/functional/data/thermal_heuristic_two_clusters_with_bc/demand-ts.txt b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/demand-ts.txt new file mode 100644 index 00000000..49b32bee --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/demand-ts.txt @@ -0,0 +1,168 @@ +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2050 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 +2000 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/details-hourly.txt new file mode 100644 index 00000000..e5e8b357 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2000 0 2 0 + 12 01 JAN 11:00 2000 0 2 0 + 13 01 JAN 12:00 2050 0 2.05 0 + 14 01 JAN 13:00 2000 0 2 0 + 15 01 JAN 14:00 2000 0 2 0 + 16 01 JAN 15:00 2000 0 2 0 + 17 01 JAN 16:00 2000 0 2 0 + 18 01 JAN 17:00 2000 0 2 0 + 19 01 JAN 18:00 2000 0 2 0 + 20 01 JAN 19:00 2000 0 2 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/values-hourly.txt new file mode 100644 index 00000000..82750cfb --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/lp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 29 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 12 01 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 13 01 JAN 12:00 105053 105053 0 105053 105053 0 0 0 0 2050 0 2050 2050 2100 0 2100 2100 0 0 0 0 0 0 0 0 0 0 0 0 + 14 01 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 15 01 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 16 01 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 17 01 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 18 01 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 19 01 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 20 01 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 21 01 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/details-hourly.txt new file mode 100644 index 00000000..c9a34899 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly cluster1 cluster2 cluster1 cluster2 + MWh MWh NODU NODU + index day month hour EXP EXP EXP EXP + 1 01 JAN 00:00 2000 0 2 0 + 2 01 JAN 01:00 2000 0 2 0 + 3 01 JAN 02:00 2000 0 2 0 + 4 01 JAN 03:00 2000 0 2 0 + 5 01 JAN 04:00 2000 0 2 0 + 6 01 JAN 05:00 2000 0 2 0 + 7 01 JAN 06:00 2000 0 2 0 + 8 01 JAN 07:00 2000 0 2 0 + 9 01 JAN 08:00 2000 0 2 0 + 10 01 JAN 09:00 2000 0 2 0 + 11 01 JAN 10:00 2000 0 2 0 + 12 01 JAN 11:00 2000 0 2 0 + 13 01 JAN 12:00 2000 50 2 1 + 14 01 JAN 13:00 1950 50 2 1 + 15 01 JAN 14:00 1950 50 2 1 + 16 01 JAN 15:00 1950 50 2 1 + 17 01 JAN 16:00 2000 0 2 0 + 18 01 JAN 17:00 2000 0 2 0 + 19 01 JAN 18:00 2000 0 2 0 + 20 01 JAN 19:00 2000 0 2 0 + 21 01 JAN 20:00 2000 0 2 0 + 22 01 JAN 21:00 2000 0 2 0 + 23 01 JAN 22:00 2000 0 2 0 + 24 01 JAN 23:00 2000 0 2 0 + 25 02 JAN 00:00 2000 0 2 0 + 26 02 JAN 01:00 2000 0 2 0 + 27 02 JAN 02:00 2000 0 2 0 + 28 02 JAN 03:00 2000 0 2 0 + 29 02 JAN 04:00 2000 0 2 0 + 30 02 JAN 05:00 2000 0 2 0 + 31 02 JAN 06:00 2000 0 2 0 + 32 02 JAN 07:00 2000 0 2 0 + 33 02 JAN 08:00 2000 0 2 0 + 34 02 JAN 09:00 2000 0 2 0 + 35 02 JAN 10:00 2000 0 2 0 + 36 02 JAN 11:00 2000 0 2 0 + 37 02 JAN 12:00 2000 0 2 0 + 38 02 JAN 13:00 2000 0 2 0 + 39 02 JAN 14:00 2000 0 2 0 + 40 02 JAN 15:00 2000 0 2 0 + 41 02 JAN 16:00 2000 0 2 0 + 42 02 JAN 17:00 2000 0 2 0 + 43 02 JAN 18:00 2000 0 2 0 + 44 02 JAN 19:00 2000 0 2 0 + 45 02 JAN 20:00 2000 0 2 0 + 46 02 JAN 21:00 2000 0 2 0 + 47 02 JAN 22:00 2000 0 2 0 + 48 02 JAN 23:00 2000 0 2 0 + 49 03 JAN 00:00 2000 0 2 0 + 50 03 JAN 01:00 2000 0 2 0 + 51 03 JAN 02:00 2000 0 2 0 + 52 03 JAN 03:00 2000 0 2 0 + 53 03 JAN 04:00 2000 0 2 0 + 54 03 JAN 05:00 2000 0 2 0 + 55 03 JAN 06:00 2000 0 2 0 + 56 03 JAN 07:00 2000 0 2 0 + 57 03 JAN 08:00 2000 0 2 0 + 58 03 JAN 09:00 2000 0 2 0 + 59 03 JAN 10:00 2000 0 2 0 + 60 03 JAN 11:00 2000 0 2 0 + 61 03 JAN 12:00 2000 0 2 0 + 62 03 JAN 13:00 2000 0 2 0 + 63 03 JAN 14:00 2000 0 2 0 + 64 03 JAN 15:00 2000 0 2 0 + 65 03 JAN 16:00 2000 0 2 0 + 66 03 JAN 17:00 2000 0 2 0 + 67 03 JAN 18:00 2000 0 2 0 + 68 03 JAN 19:00 2000 0 2 0 + 69 03 JAN 20:00 2000 0 2 0 + 70 03 JAN 21:00 2000 0 2 0 + 71 03 JAN 22:00 2000 0 2 0 + 72 03 JAN 23:00 2000 0 2 0 + 73 04 JAN 00:00 2000 0 2 0 + 74 04 JAN 01:00 2000 0 2 0 + 75 04 JAN 02:00 2000 0 2 0 + 76 04 JAN 03:00 2000 0 2 0 + 77 04 JAN 04:00 2000 0 2 0 + 78 04 JAN 05:00 2000 0 2 0 + 79 04 JAN 06:00 2000 0 2 0 + 80 04 JAN 07:00 2000 0 2 0 + 81 04 JAN 08:00 2000 0 2 0 + 82 04 JAN 09:00 2000 0 2 0 + 83 04 JAN 10:00 2000 0 2 0 + 84 04 JAN 11:00 2000 0 2 0 + 85 04 JAN 12:00 2000 0 2 0 + 86 04 JAN 13:00 2000 0 2 0 + 87 04 JAN 14:00 2000 0 2 0 + 88 04 JAN 15:00 2000 0 2 0 + 89 04 JAN 16:00 2000 0 2 0 + 90 04 JAN 17:00 2000 0 2 0 + 91 04 JAN 18:00 2000 0 2 0 + 92 04 JAN 19:00 2000 0 2 0 + 93 04 JAN 20:00 2000 0 2 0 + 94 04 JAN 21:00 2000 0 2 0 + 95 04 JAN 22:00 2000 0 2 0 + 96 04 JAN 23:00 2000 0 2 0 + 97 05 JAN 00:00 2000 0 2 0 + 98 05 JAN 01:00 2000 0 2 0 + 99 05 JAN 02:00 2000 0 2 0 + 100 05 JAN 03:00 2000 0 2 0 + 101 05 JAN 04:00 2000 0 2 0 + 102 05 JAN 05:00 2000 0 2 0 + 103 05 JAN 06:00 2000 0 2 0 + 104 05 JAN 07:00 2000 0 2 0 + 105 05 JAN 08:00 2000 0 2 0 + 106 05 JAN 09:00 2000 0 2 0 + 107 05 JAN 10:00 2000 0 2 0 + 108 05 JAN 11:00 2000 0 2 0 + 109 05 JAN 12:00 2000 0 2 0 + 110 05 JAN 13:00 2000 0 2 0 + 111 05 JAN 14:00 2000 0 2 0 + 112 05 JAN 15:00 2000 0 2 0 + 113 05 JAN 16:00 2000 0 2 0 + 114 05 JAN 17:00 2000 0 2 0 + 115 05 JAN 18:00 2000 0 2 0 + 116 05 JAN 19:00 2000 0 2 0 + 117 05 JAN 20:00 2000 0 2 0 + 118 05 JAN 21:00 2000 0 2 0 + 119 05 JAN 22:00 2000 0 2 0 + 120 05 JAN 23:00 2000 0 2 0 + 121 06 JAN 00:00 2000 0 2 0 + 122 06 JAN 01:00 2000 0 2 0 + 123 06 JAN 02:00 2000 0 2 0 + 124 06 JAN 03:00 2000 0 2 0 + 125 06 JAN 04:00 2000 0 2 0 + 126 06 JAN 05:00 2000 0 2 0 + 127 06 JAN 06:00 2000 0 2 0 + 128 06 JAN 07:00 2000 0 2 0 + 129 06 JAN 08:00 2000 0 2 0 + 130 06 JAN 09:00 2000 0 2 0 + 131 06 JAN 10:00 2000 0 2 0 + 132 06 JAN 11:00 2000 0 2 0 + 133 06 JAN 12:00 2000 0 2 0 + 134 06 JAN 13:00 2000 0 2 0 + 135 06 JAN 14:00 2000 0 2 0 + 136 06 JAN 15:00 2000 0 2 0 + 137 06 JAN 16:00 2000 0 2 0 + 138 06 JAN 17:00 2000 0 2 0 + 139 06 JAN 18:00 2000 0 2 0 + 140 06 JAN 19:00 2000 0 2 0 + 141 06 JAN 20:00 2000 0 2 0 + 142 06 JAN 21:00 2000 0 2 0 + 143 06 JAN 22:00 2000 0 2 0 + 144 06 JAN 23:00 2000 0 2 0 + 145 07 JAN 00:00 2000 0 2 0 + 146 07 JAN 01:00 2000 0 2 0 + 147 07 JAN 02:00 2000 0 2 0 + 148 07 JAN 03:00 2000 0 2 0 + 149 07 JAN 04:00 2000 0 2 0 + 150 07 JAN 05:00 2000 0 2 0 + 151 07 JAN 06:00 2000 0 2 0 + 152 07 JAN 07:00 2000 0 2 0 + 153 07 JAN 08:00 2000 0 2 0 + 154 07 JAN 09:00 2000 0 2 0 + 155 07 JAN 10:00 2000 0 2 0 + 156 07 JAN 11:00 2000 0 2 0 + 157 07 JAN 12:00 2000 0 2 0 + 158 07 JAN 13:00 2000 0 2 0 + 159 07 JAN 14:00 2000 0 2 0 + 160 07 JAN 15:00 2000 0 2 0 + 161 07 JAN 16:00 2000 0 2 0 + 162 07 JAN 17:00 2000 0 2 0 + 163 07 JAN 18:00 2000 0 2 0 + 164 07 JAN 19:00 2000 0 2 0 + 165 07 JAN 20:00 2000 0 2 0 + 166 07 JAN 21:00 2000 0 2 0 + 167 07 JAN 22:00 2000 0 2 0 + 168 07 JAN 23:00 2000 0 2 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/values-hourly.txt new file mode 100644 index 00000000..dcddfaec --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_with_bc/milp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 29 1 168 + +Area hourly OV. COST OP. COST OP. COST OP. COST OP. COST BALANCE BALANCE BALANCE BALANCE LOAD LOAD LOAD LOAD NUCLEAR NUCLEAR NUCLEAR NUCLEAR COAL COAL COAL COAL UNSP. ENRG UNSP. ENRG UNSP. ENRG UNSP. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG SPIL. ENRG + Euro Euro Euro Euro Euro MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh + index day month hour EXP EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max EXP std min max + 1 01 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 2 01 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 3 01 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 4 01 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 5 01 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 6 01 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 7 01 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 8 01 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 9 01 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 10 01 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 11 01 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 12 01 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 13 01 JAN 12:00 107524 107524 0 107524 107524 0 0 0 0 2050 0 2050 2050 2000 0 2000 2000 50 0 50 50 0 0 0 0 0 0 0 0 + 14 01 JAN 13:00 105004 105004 0 105004 105004 0 0 0 0 2000 0 2000 2000 1950 0 1950 1950 50 0 50 50 0 0 0 0 0 0 0 0 + 15 01 JAN 14:00 105004 105004 0 105004 105004 0 0 0 0 2000 0 2000 2000 1950 0 1950 1950 50 0 50 50 0 0 0 0 0 0 0 0 + 16 01 JAN 15:00 105004 105004 0 105004 105004 0 0 0 0 2000 0 2000 2000 1950 0 1950 1950 50 0 50 50 0 0 0 0 0 0 0 0 + 17 01 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 18 01 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 19 01 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 20 01 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 21 01 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 22 01 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 23 01 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 24 01 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 25 02 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 26 02 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 27 02 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 28 02 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 29 02 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 30 02 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 31 02 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 32 02 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 33 02 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 34 02 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 35 02 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 36 02 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 37 02 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 38 02 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 39 02 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 40 02 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 41 02 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 42 02 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 43 02 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 44 02 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 45 02 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 46 02 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 47 02 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 48 02 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 49 03 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 50 03 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 51 03 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 52 03 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 53 03 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 54 03 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 55 03 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 56 03 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 57 03 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 58 03 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 59 03 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 60 03 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 61 03 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 62 03 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 63 03 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 64 03 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 65 03 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 66 03 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 67 03 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 68 03 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 69 03 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 70 03 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 71 03 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 72 03 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 73 04 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 74 04 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 75 04 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 76 04 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 77 04 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 78 04 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 79 04 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 80 04 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 81 04 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 82 04 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 83 04 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 84 04 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 85 04 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 86 04 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 87 04 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 88 04 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 89 04 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 90 04 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 91 04 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 92 04 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 93 04 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 94 04 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 95 04 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 96 04 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 97 05 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 98 05 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 99 05 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 100 05 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 101 05 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 102 05 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 103 05 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 104 05 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 105 05 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 106 05 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 107 05 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 108 05 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 109 05 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 110 05 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 111 05 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 112 05 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 113 05 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 114 05 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 115 05 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 116 05 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 117 05 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 118 05 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 119 05 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 120 05 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 121 06 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 122 06 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 123 06 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 124 06 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 125 06 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 126 06 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 127 06 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 128 06 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 129 06 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 130 06 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 131 06 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 132 06 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 133 06 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 134 06 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 135 06 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 136 06 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 137 06 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 138 06 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 139 06 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 140 06 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 141 06 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 142 06 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 143 06 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 144 06 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 145 07 JAN 00:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 146 07 JAN 01:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 147 07 JAN 02:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 148 07 JAN 03:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 149 07 JAN 04:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 150 07 JAN 05:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 151 07 JAN 06:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 152 07 JAN 07:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 153 07 JAN 08:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 154 07 JAN 09:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 155 07 JAN 10:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 156 07 JAN 11:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 157 07 JAN 12:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 158 07 JAN 13:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 159 07 JAN 14:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 160 07 JAN 15:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 161 07 JAN 16:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 162 07 JAN 17:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 163 07 JAN 18:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 164 07 JAN 19:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 165 07 JAN 20:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 166 07 JAN 21:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 167 07 JAN 22:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 + 168 07 JAN 23:00 100002 100002 0 100002 100002 0 0 0 0 2000 0 2000 2000 2000 0 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index 759e843a..24150f35 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -11,7 +11,7 @@ # This file is part of the Antares project. from andromede.expression import literal, param, var -from andromede.expression.expression import ExpressionRange +from andromede.expression.expression import ExpressionRange, port_field from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.model import ModelPort, float_parameter, float_variable, model @@ -124,3 +124,16 @@ .sum() .expec(), ) + +BINDING_CONSTRAINT = model( + id="BC", + parameters=[float_parameter("upper_bound", structure=CONSTANT)], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + binding_constraints=[ + Constraint( + name="Binding constraint", + expression=port_field("balance_port", "flow").sum_connections() + <= param("upper_bound"), + ) + ], +) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py new file mode 100644 index 00000000..69f0ec15 --- /dev/null +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -0,0 +1,252 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from pathlib import Path + +import ortools.linear_solver.pywraplp as pywraplp +import pytest + +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from tests.functional.libs.lib_thermal_heuristic import ( + THERMAL_CLUSTER_MODEL_MILP, + BINDING_CONSTRAINT, +) + + +def test_milp_version() -> None: + """ """ + thermal_problem_builder = ThermalProblemBuilder( + number_hours=168, + lp_relaxation=False, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + BINDING_CONSTRAINT, + ], + number_week=1, + list_scenario=list(range(1)), + ) + + main_resolution_step = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = main_resolution_step.solve() + + assert status == pywraplp.Solver.OPTIMAL + assert main_resolution_step.objective == 16822864 + + expected_output = ExpectedOutput( + mode="milp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_two_clusters_with_bc", + list_cluster=["G1", "G2"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ) + expected_output.check_output_values(main_resolution_step.output) + + +def test_lp_version() -> None: + """ """ + thermal_problem_builder = ThermalProblemBuilder( + number_hours=168, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + BINDING_CONSTRAINT, + ], + number_week=1, + list_scenario=list(range(1)), + ) + + main_resolution_step = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = main_resolution_step.solve() + + assert status == pywraplp.Solver.OPTIMAL + assert main_resolution_step.objective == pytest.approx(16802840.55) + + expected_output = ExpectedOutput( + mode="lp", + week=0, + scenario=0, + dir_path="data/thermal_heuristic_two_clusters_with_bc", + list_cluster=["G1", "G2"], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ) + expected_output.check_output_values(main_resolution_step.output) + + +def test_accurate_heuristic() -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares + """ + + thermal_problem_builder = ThermalProblemBuilder( + number_hours=168, + lp_relaxation=True, + fast=False, + data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + BINDING_CONSTRAINT, + ], + number_week=1, + list_scenario=list(range(1)), + ) + + # First optimization + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = resolution_step_1.solve() + assert status == pywraplp.Solver.OPTIMAL + + # Get number of on units and round it to integer + thermal_problem_builder.update_database_accurate( + resolution_step_1.output, 0, 0, None + ) + + for g in ["G1", "G2"]: + + for time_step in range(thermal_problem_builder.number_hours): + assert thermal_problem_builder.database.get_value( + ComponentParameterIndex(g, "nb_units_min"), time_step, 0 + ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) + + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.get_resolution_step_accurate_heuristic( + week=0, scenario=0, cluster_id=g + ) + ) + status = resolution_step_accurate_heuristic.solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_accurate( + resolution_step_accurate_heuristic.output, 0, 0, [g] + ) + + for time_step in range(thermal_problem_builder.number_hours): + assert thermal_problem_builder.database.get_value( + ComponentParameterIndex(g, "nb_units_min"), time_step, 0 + ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = resolution_step_2.solve() + assert status == pywraplp.Solver.INFEASIBLE + + +def test_fast_heuristic() -> None: + """ """ + + number_hours = 168 + + thermal_problem_builder = ThermalProblemBuilder( + number_hours=number_hours, + lp_relaxation=True, + fast=True, + data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + port_types=[BALANCE_PORT_TYPE], + models=[ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + BINDING_CONSTRAINT, + ], + number_week=1, + list_scenario=list(range(1)), + ) + + # First optimization + resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = resolution_step_1.solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_fast_before_heuristic( + resolution_step_1.output, 0, 0 + ) + + for g in ["G1", "G2"]: + # Solve heuristic problem + resolution_step_heuristic = ( + thermal_problem_builder.get_resolution_step_fast_heuristic( + thermal_cluster=g, + week=0, + scenario=0, + ) + ) + resolution_step_heuristic.solve() + thermal_problem_builder.update_database_fast_after_heuristic( + resolution_step_heuristic.output, 0, 0, [g] + ) + + for time_step in range(number_hours): + assert thermal_problem_builder.database.get_value( + ComponentParameterIndex(g, "min_generating"), time_step, 0 + ) == ( + 3 * 700 + if time_step in [t for t in range(10, 20)] and g == "G1" + else (2 * 700 if g == "G1" else 0) + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.get_main_resolution_step( + week=0, + scenario=0, + ) + status = resolution_step_2.solve() + assert status == pywraplp.Solver.INFEASIBLE From a5dcb1fc31317741d94ca447712d950d13d3495c Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 30 Jul 2024 16:56:49 +0200 Subject: [PATCH 53/93] Refactoring --- src/andromede/thermal_heuristic/model.py | 44 ++---- src/andromede/thermal_heuristic/problem.py | 126 +++++++++--------- ...l_heuristic_fast_min_down_not_respected.py | 4 +- .../test_thermal_heuristic_one_cluster.py | 34 +++-- .../test_thermal_heuristic_six_clusters.py | 12 +- .../test_thermal_heuristic_three_clusters.py | 16 +-- ..._thermal_heuristic_two_clusters_with_bc.py | 16 +-- 7 files changed, 123 insertions(+), 129 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index a7a97f5e..9ed9767c 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -45,24 +45,6 @@ class ModelEditor: def __init__(self, initial_model: Model) -> None: self.initial_model = initial_model - def keep_id(self) -> str: - return self.initial_model.id - - def keep_parameters(self) -> List[Parameter]: - return [p for p in self.initial_model.parameters.values()] - - def keep_ports(self) -> List[ModelPort]: - return [p for p in self.initial_model.ports.values()] - - def keep_port_fields_definitions(self) -> List[PortFieldDefinition]: - return [p for p in self.initial_model.port_fields_definitions.values()] - - def keep_constraints(self) -> List[Constraint]: - return [c for c in self.initial_model.constraints.values()] - - def keep_objective_operational_contribution(self) -> Optional[ExpressionNode]: - return self.initial_model.objective_operational_contribution - def linearize_variables(self) -> List[Variable]: return [ float_variable( @@ -140,13 +122,13 @@ class AccurateModelBuilder(ModelEditor): def __init__(self, initial_model: Model) -> None: super().__init__(initial_model) THERMAL_CLUSTER_MODEL_LP = model( - id=self.keep_id(), - parameters=self.keep_parameters(), + id=self.initial_model.id, + parameters=self.initial_model.parameters.values(), variables=self.linearize_variables(), - ports=self.keep_ports(), - port_fields_definitions=self.keep_port_fields_definitions(), - constraints=self.keep_constraints(), - objective_operational_contribution=self.keep_objective_operational_contribution(), + ports=self.initial_model.ports.values(), + port_fields_definitions=self.initial_model.port_fields_definitions.values(), + constraints=self.initial_model.constraints.values(), + objective_operational_contribution=self.initial_model.objective_operational_contribution, ) self.model = THERMAL_CLUSTER_MODEL_LP @@ -157,13 +139,13 @@ def __init__(self, initial_model: Model) -> None: integer_variables = self.get_name_integer_variables() THERMAL_CLUSTER_MODEL_FAST = model( - id=self.keep_id(), - parameters=self.keep_parameters(), + id=self.initial_model.id, + parameters=self.initial_model.parameters.values(), variables=self.fix_integer_variables_to_zero_and_keep_others(), - ports=self.keep_ports(), - port_fields_definitions=self.keep_port_fields_definitions(), + ports=self.initial_model.ports.values(), + port_fields_definitions=self.initial_model.port_fields_definitions.values(), constraints=self.filter_constraints_on_variable(integer_variables), - objective_operational_contribution=self.keep_objective_operational_contribution(), + objective_operational_contribution=self.initial_model.objective_operational_contribution, ) self.model = THERMAL_CLUSTER_MODEL_FAST @@ -175,8 +157,8 @@ def __init__(self, initial_model: Model) -> None: generation_variable = ["generation"] THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( - id=self.keep_id(), - parameters=self.keep_parameters(), + id=self.initial_model.id, + parameters=self.initial_model.parameters.values(), variables=self.filter_and_linearize_variables(generation_variable), constraints=self.filter_constraints_on_variable(generation_variable), objective_operational_contribution=(var("nb_on")).sum().expec(), diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index a8c4c75c..ff365211 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -76,23 +76,24 @@ def __init__( port_types: List[PortType], models: List[Model], number_week: int, - list_scenario: List[int], + number_scenario: int, ) -> None: lib = library_thermal_problem( port_types, models, lp_relaxation, fast, initial_thermal_model ) self.number_week = number_week - self.list_scenario = list_scenario + self.number_scenario = number_scenario self.network = get_network(data_dir / "components.yml", lib) self.number_hours = number_hours + self.initial_thermal_model = initial_thermal_model self.database = self.get_database( data_dir, "components.yml", - get_cluster_id(self.network, initial_thermal_model.id), number_hours, fast, + timesteps=number_hours * number_week, + scenarios=number_scenario, ) - self.initial_thermal_model = initial_thermal_model def get_main_resolution_step(self, week: int, scenario: int) -> ResolutionStep: main_resolution_step = ResolutionStep( @@ -114,14 +115,12 @@ def update_database_accurate( list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: - list_cluster_id = get_cluster_id( - self.network, self.initial_thermal_model.id - ) + list_cluster_id = self.get_milp_heuristic_components() for cluster in list_cluster_id: self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "nb_units_min"), self.number_hours * self.number_week, - len(self.list_scenario), + self.number_scenario, ) nb_on = output.component(cluster).var("nb_on").value[0] # type:ignore @@ -138,7 +137,7 @@ def update_database_accurate( def update_database_fast_before_heuristic( self, output: OutputValues, week: int, scenario: int ) -> None: - for cluster in get_cluster_id(self.network, self.initial_thermal_model.id): + for cluster in self.get_milp_heuristic_components(): pmax = self.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) @@ -148,7 +147,7 @@ def update_database_fast_before_heuristic( self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "n_guide"), self.number_hours * self.number_week, - len(self.list_scenario), + self.number_scenario, ) for i, t in enumerate( @@ -174,9 +173,7 @@ def update_database_fast_after_heuristic( list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: - list_cluster_id = get_cluster_id( - self.network, self.initial_thermal_model.id - ) + list_cluster_id = self.get_milp_heuristic_components() for cluster in list_cluster_id: pmin = self.database.get_value( ComponentParameterIndex(cluster, "p_min"), 0, 0 @@ -191,7 +188,7 @@ def update_database_fast_after_heuristic( self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "min_generating"), self.number_hours * self.number_week, - len(self.list_scenario), + self.number_scenario, ) min_gen = np.minimum( @@ -340,39 +337,46 @@ def get_database( self, data_dir: Path, yml_file: str, - cluster_id: List[str], hours_in_week: int, fast: bool, + timesteps: int, + scenarios: int, ) -> DataBase: components_file = get_input_components(data_dir / yml_file) database = build_data_base(components_file, data_dir) complete_database_with_cluster_parameters( database, - list_cluster_id=cluster_id, - dir_path=data_dir, + list_cluster_id=self.get_milp_heuristic_components(), hours_in_week=hours_in_week, + timesteps=timesteps, + scenarios=scenarios, ) if fast: self.complete_database_for_fast_heuristic( - database, cluster_id, hours_in_week + database, self.get_milp_heuristic_components(), hours_in_week ) return database + def get_milp_heuristic_components(self) -> list[str]: + return [ + c.id + for c in self.network.components + if c.model.id == self.initial_thermal_model.id + ] + def complete_database_with_cluster_parameters( - database: DataBase, list_cluster_id: List[str], dir_path: Path, hours_in_week: int + database: DataBase, + list_cluster_id: List[str], + hours_in_week: int, + timesteps: int, + scenarios: int, ) -> None: for cluster_id in list_cluster_id: - data = get_data( - dir_path, - "components.yml", - cluster_id, - ) - - if type(data["max_generating"]) is float: + if type(database.get_data(cluster_id, "max_generating")) is ConstantData: database.add_data( cluster_id, "max_failure", @@ -381,7 +385,7 @@ def complete_database_with_cluster_parameters( database.add_data( cluster_id, "nb_units_max_min_down_time", - ConstantData(data["nb_units_max"]), + database.get_data(cluster_id, "nb_units_max"), ) else: @@ -389,7 +393,9 @@ def complete_database_with_cluster_parameters( max_units, max_failures, nb_units_max_min_down_time, - ) = compute_cluster_parameters(hours_in_week, data) + ) = compute_cluster_parameters( + hours_in_week, database, cluster_id, timesteps, scenarios + ) database.add_data( cluster_id, "nb_units_max", @@ -408,28 +414,43 @@ def complete_database_with_cluster_parameters( def compute_cluster_parameters( - hours_in_week: int, data: Dict + hours_in_week: int, + database: DataBase, + cluster_id: str, + timesteps: int, + scenarios: int, ) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: - max_generating_shape = data["max_generating"].shape - if len(max_generating_shape) == 1: - max_generating = pd.DataFrame( - data["max_generating"].reshape((max_generating_shape[0], 1)) - ) - else: - max_generating = pd.DataFrame(data["max_generating"]) - max_units = get_max_unit(data["p_max"], data["nb_units_max"], max_generating) + database.convert_to_time_scenario_series_data( + ComponentParameterIndex(cluster_id, "max_generating"), + timesteps=timesteps, + scenarios=scenarios, + ) + max_units = get_max_unit( + database.get_value(ComponentParameterIndex(cluster_id, "p_max"), 0, 0), + database.get_value(ComponentParameterIndex(cluster_id, "nb_units_max"), 0, 0), + database.get_data( + cluster_id, "max_generating" + ).time_scenario_series, # type:ignore + ) max_failures = get_max_failures(max_units, hours_in_week) nb_units_max_min_down_time = get_max_unit_for_min_down_time( - int(max(data["d_min_up"], data["d_min_down"])), max_units, hours_in_week + int( + max( + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_up"), 0, 0 + ), + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_down"), 0, 0 + ), + ) + ), + max_units, + hours_in_week, ) return max_units, max_failures, nb_units_max_min_down_time -def get_cluster_id(network: Network, cluster_model_id: str) -> list[str]: - return [c.id for c in network.components if c.model.id == cluster_model_id] - - def get_network(compo_file: Path, lib: Library) -> Network: components_file = get_input_components(compo_file) components_input = resolve_components_and_cnx(components_file, lib) @@ -453,24 +474,3 @@ def edit_thermal_model( else: thermal_model = initial_thermal_model return thermal_model - - -def get_data( - data_dir: Path, - yml_file: str, - id_cluster: str, -) -> Dict: - compo_file = data_dir / yml_file - - with compo_file.open() as c: - components_file = parse_yaml_components(c) - cluster = [c for c in components_file.components if c.id == id_cluster][0] - parameters = { - p.name: ( - p.value - if p.value is not None - else np.loadtxt(data_dir / (p.timeseries + ".txt")) # type:ignore - ) - for p in cluster.parameters # type:ignore - } - return parameters # type:ignore diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index c93c164d..6393c675 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -41,10 +41,10 @@ def test_fast_heuristic() -> None: port_types=[], models=[], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) - cluster = "G1" + cluster = thermal_problem_builder.get_milp_heuristic_components()[0] pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index e4a37f5b..233588a2 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -68,9 +68,11 @@ def test_milp_version() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) + cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + main_resolution_step = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, @@ -85,7 +87,7 @@ def test_milp_version() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], + list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -133,9 +135,11 @@ def test_lp_version() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) + cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + main_resolution_step = thermal_problem_builder.get_main_resolution_step( week=0, scenario=0, @@ -150,7 +154,7 @@ def test_lp_version() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], + list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -177,9 +181,11 @@ def test_accurate_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) + cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=0, @@ -195,7 +201,7 @@ def test_accurate_heuristic() -> None: for time_step in range(thermal_problem_builder.number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex("G", "nb_units_min"), time_step, 0 + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 ) == 2 if time_step != 12 @@ -205,7 +211,7 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_accurate_heuristic( - week=0, scenario=0, cluster_id="G" + week=0, scenario=0, cluster_id=cluster ) ) status = resolution_step_accurate_heuristic.solve() @@ -218,7 +224,7 @@ def test_accurate_heuristic() -> None: for time_step in range(thermal_problem_builder.number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex("G", "nb_units_min"), time_step, 0 + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 ) == 2 if time_step != 12 @@ -239,7 +245,7 @@ def test_accurate_heuristic() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], + list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), @@ -288,9 +294,11 @@ def test_fast_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) + cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=0, @@ -305,7 +313,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster="G", + thermal_cluster=cluster, week=0, scenario=0, ) @@ -318,7 +326,7 @@ def test_fast_heuristic() -> None: for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex("G", "min_generating"), time_step, 0 + ComponentParameterIndex(cluster, "min_generating"), time_step, 0 ) == 3 * 700 if time_step in [t for t in range(10, 20)] @@ -339,7 +347,7 @@ def test_fast_heuristic() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_one_cluster", - list_cluster=["G"], + list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 1f44e4a9..230e5d99 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -41,14 +41,16 @@ def test_accurate_heuristic() -> None: port_types=[], models=[], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) - for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): + for j, cluster in enumerate( + thermal_problem_builder.get_milp_heuristic_components() + ): nb_on_1 = pd.DataFrame( np.transpose( np.ceil( @@ -114,10 +116,12 @@ def test_fast_heuristic() -> None: port_types=[], models=[], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) - for j, cluster in enumerate(["G" + str(i) for i in range(1, 7)]): + for j, cluster in enumerate( + thermal_problem_builder.get_milp_heuristic_components() + ): pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 52919486..cfab3a07 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -49,7 +49,7 @@ def test_milp_version() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=2, - list_scenario=list(range(scenarios)), + number_scenario=scenarios, ) parameters = pywraplp.MPSolverParameters() @@ -73,7 +73,7 @@ def test_milp_version() -> None: week=week, scenario=scenario, dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], + list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values(resolution_step.output) @@ -114,7 +114,7 @@ def test_accurate_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=2, - list_scenario=list(range(scenarios)), + number_scenario=scenarios, ) for scenario in range(scenarios): @@ -131,7 +131,7 @@ def test_accurate_heuristic() -> None: resolution_step_1.output, week, scenario, None ) - for g in ["G1", "G2", "G3"]: + for g in thermal_problem_builder.get_milp_heuristic_components(): # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_accurate_heuristic( @@ -160,7 +160,7 @@ def test_accurate_heuristic() -> None: week=week, scenario=scenario, dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], + list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values(resolution_step_2.output) @@ -204,7 +204,7 @@ def test_fast_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, ], number_week=2, - list_scenario=list(range(scenarios)), + number_scenario=scenarios, ) for scenario in range(scenarios): @@ -221,7 +221,7 @@ def test_fast_heuristic() -> None: resolution_step_1.output, week, scenario ) - for g in ["G1", "G2", "G3"]: # + for g in thermal_problem_builder.get_milp_heuristic_components(): # resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_fast_heuristic( thermal_cluster=g, @@ -249,7 +249,7 @@ def test_fast_heuristic() -> None: week=week, scenario=scenario, dir_path="data/thermal_heuristic_three_clusters", - list_cluster=["G1", "G2", "G3"], + list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values( diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 69f0ec15..1591895e 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -48,7 +48,7 @@ def test_milp_version() -> None: BINDING_CONSTRAINT, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( @@ -65,7 +65,7 @@ def test_milp_version() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_two_clusters_with_bc", - list_cluster=["G1", "G2"], + list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -90,7 +90,7 @@ def test_lp_version() -> None: BINDING_CONSTRAINT, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( @@ -107,7 +107,7 @@ def test_lp_version() -> None: week=0, scenario=0, dir_path="data/thermal_heuristic_two_clusters_with_bc", - list_cluster=["G1", "G2"], + list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -135,7 +135,7 @@ def test_accurate_heuristic() -> None: BINDING_CONSTRAINT, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) # First optimization @@ -151,7 +151,7 @@ def test_accurate_heuristic() -> None: resolution_step_1.output, 0, 0, None ) - for g in ["G1", "G2"]: + for g in thermal_problem_builder.get_milp_heuristic_components(): for time_step in range(thermal_problem_builder.number_hours): assert thermal_problem_builder.database.get_value( @@ -205,7 +205,7 @@ def test_fast_heuristic() -> None: BINDING_CONSTRAINT, ], number_week=1, - list_scenario=list(range(1)), + number_scenario=1, ) # First optimization @@ -220,7 +220,7 @@ def test_fast_heuristic() -> None: resolution_step_1.output, 0, 0 ) - for g in ["G1", "G2"]: + for g in thermal_problem_builder.get_milp_heuristic_components(): # Solve heuristic problem resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_fast_heuristic( From 2915a1960ec5105d59645ae21749549a28c281d8 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 1 Aug 2024 17:19:05 +0200 Subject: [PATCH 54/93] Exhibit models --- src/andromede/thermal_heuristic/model.py | 9 +-- src/andromede/thermal_heuristic/problem.py | 80 ++----------------- ...l_heuristic_fast_min_down_not_respected.py | 21 +++-- .../test_thermal_heuristic_one_cluster.py | 35 +++++--- .../test_thermal_heuristic_six_clusters.py | 23 ++++-- .../test_thermal_heuristic_three_clusters.py | 24 ++++-- ..._thermal_heuristic_two_clusters_with_bc.py | 28 +++++-- 7 files changed, 102 insertions(+), 118 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 9ed9767c..791d41d2 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -23,7 +23,6 @@ from andromede.expression.indexing_structure import IndexingStructure from andromede.model import ( Model, - ModelPort, Variable, float_parameter, float_variable, @@ -167,12 +166,12 @@ def __init__(self, initial_model: Model) -> None: class HeuristicFastModelBuilder: - def __init__(self, Q: int, delta: int): + def __init__(self, number_hours: int, delta: int): BLOCK_MODEL_FAST_HEURISTIC = model( id="BLOCK_FAST", - parameters=self.get_parameters(Q, delta), - variables=self.get_variables(Q, delta), - constraints=self.get_constraints(Q, delta), + parameters=self.get_parameters(number_hours // delta, delta), + variables=self.get_variables(number_hours // delta, delta), + constraints=self.get_constraints(number_hours // delta, delta), objective_operational_contribution=self.get_objective_operational_contribution( delta ), diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index ff365211..7999d830 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -50,26 +50,10 @@ from andromede.thermal_heuristic.workflow import ResolutionStep -def library_thermal_problem( - port_types: Iterable[PortType], - models: List[Model], - lp_relaxation: bool, - fast: bool, - initial_thermal_model: Model, -) -> Library: - thermal_model = edit_thermal_model(lp_relaxation, fast, initial_thermal_model) - lib = library( - port_types=port_types, - models=models + [thermal_model], - ) - return lib - - class ThermalProblemBuilder: def __init__( self, number_hours: int, - lp_relaxation: bool, fast: bool, data_dir: Path, initial_thermal_model: Model, @@ -78,8 +62,9 @@ def __init__( number_week: int, number_scenario: int, ) -> None: - lib = library_thermal_problem( - port_types, models, lp_relaxation, fast, initial_thermal_model + lib = library( + port_types=port_types, + models=models, ) self.number_week = number_week self.number_scenario = number_scenario @@ -209,17 +194,11 @@ def update_database_fast_after_heuristic( scenario, ) - def get_resolution_step_accurate_heuristic( - self, - week: int, - scenario: int, - cluster_id: str, + def get_resolution_step_heuristic( + self, week: int, scenario: int, cluster_id: str, model: Model ) -> ResolutionStep: - thermal_model_builder = HeuristicAccurateModelBuilder( - self.initial_thermal_model - ) - cluster = create_component(model=thermal_model_builder.model, id=cluster_id) + cluster = create_component(model=model, id=cluster_id) network = Network("test") network.add_component(cluster) @@ -235,12 +214,7 @@ def get_resolution_step_accurate_heuristic( return resolution_step - def get_resolution_step_fast_heuristic( - self, - thermal_cluster: str, - week: int, - scenario: int, - ) -> ResolutionStep: + def compute_delta(self, thermal_cluster: str) -> int: delta = int( max( self.database.get_value( @@ -251,21 +225,7 @@ def get_resolution_step_fast_heuristic( ), ) ) - - network = self.get_network_fast_heuristic( - delta, self.number_hours // delta, thermal_cluster - ) - - resolution_step = ResolutionStep( - network=network, - database=self.database, - timesteps=list( - range(week * self.number_hours, (week + 1) * self.number_hours) - ), - scenarios=[scenario], - ) - - return resolution_step + return delta def complete_database_for_fast_heuristic( self, database: DataBase, list_cluster_id: list[str], number_hours: int @@ -321,18 +281,6 @@ def complete_database_for_fast_heuristic( ), ) - def get_network_fast_heuristic( - self, delta: int, number_blocks: int, cluster_id: str - ) -> Network: - block = create_component( - model=HeuristicFastModelBuilder(number_blocks, delta=delta).model, - id=cluster_id, - ) - - network = Network("test") - network.add_component(block) - return network - def get_database( self, data_dir: Path, @@ -462,15 +410,3 @@ def get_input_components(compo_file: Path) -> InputComponents: with compo_file.open() as c: components_file = parse_yaml_components(c) return components_file - - -def edit_thermal_model( - lp_relaxation: bool, fast: bool, initial_thermal_model: Model -) -> Model: - if fast: - thermal_model = FastModelBuilder(initial_thermal_model).model - elif lp_relaxation: - thermal_model = AccurateModelBuilder(initial_thermal_model).model - else: - thermal_model = initial_thermal_model - return thermal_model diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 6393c675..c925c954 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -22,6 +22,11 @@ from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.model import ( + FastModelBuilder, + HeuristicFastModelBuilder, +) + def test_fast_heuristic() -> None: """ @@ -33,13 +38,12 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_fast_min_down_not_respected", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[], - models=[], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], number_week=1, number_scenario=1, ) @@ -68,12 +72,13 @@ def test_fast_heuristic() -> None: ) # Solve heuristic problem - resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster=cluster, - week=week, - scenario=scenario, - ) + resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( + cluster_id=cluster, + week=week, + scenario=scenario, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(cluster) + ).model, ) status = resolution_step_heuristic.solve() diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 233588a2..3bea098f 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -27,6 +27,13 @@ from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) + def test_milp_version() -> None: """ @@ -56,12 +63,12 @@ def test_milp_version() -> None: """ thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + THERMAL_CLUSTER_MODEL_MILP, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -123,12 +130,12 @@ def test_lp_version() -> None: """ thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -169,12 +176,12 @@ def test_accurate_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -210,8 +217,11 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_accurate_heuristic( - week=0, scenario=0, cluster_id=cluster + thermal_problem_builder.get_resolution_step_heuristic( + week=0, + scenario=0, + cluster_id=cluster, + model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) status = resolution_step_accurate_heuristic.solve() @@ -282,12 +292,12 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -311,12 +321,13 @@ def test_fast_heuristic() -> None: resolution_step_1.output, 0, 0 ) # Solve heuristic problem - resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster=cluster, - week=0, - scenario=0, - ) + resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( + cluster_id=cluster, + week=0, + scenario=0, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(cluster) + ).model, ) resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 230e5d99..1ad109af 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -22,6 +22,13 @@ from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) + def test_accurate_heuristic() -> None: """ @@ -34,12 +41,11 @@ def test_accurate_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[], - models=[], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], number_week=1, number_scenario=1, ) @@ -71,10 +77,11 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_accurate_heuristic( + thermal_problem_builder.get_resolution_step_heuristic( week=week, scenario=scenario, cluster_id=cluster, + model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) status = resolution_step_accurate_heuristic.solve(parameters) @@ -109,12 +116,11 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[], - models=[], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], number_week=1, number_scenario=1, ) @@ -145,10 +151,13 @@ def test_fast_heuristic() -> None: # Solve heuristic problem resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster=cluster, + thermal_problem_builder.get_resolution_step_heuristic( + cluster_id=cluster, week=week, scenario=scenario, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(cluster) + ).model, ) ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index cfab3a07..be8c7774 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -25,6 +25,12 @@ from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.problem import ThermalProblemBuilder from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) def test_milp_version() -> None: @@ -37,12 +43,12 @@ def test_milp_version() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + THERMAL_CLUSTER_MODEL_MILP, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -102,12 +108,12 @@ def test_accurate_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -134,10 +140,13 @@ def test_accurate_heuristic() -> None: for g in thermal_problem_builder.get_milp_heuristic_components(): # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_accurate_heuristic( + thermal_problem_builder.get_resolution_step_heuristic( week=week, scenario=scenario, cluster_id=g, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_MODEL_MILP + ).model, ) ) status = resolution_step_accurate_heuristic.solve(parameters) @@ -192,12 +201,12 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -223,10 +232,13 @@ def test_fast_heuristic() -> None: for g in thermal_problem_builder.get_milp_heuristic_components(): # resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster=g, + thermal_problem_builder.get_resolution_step_heuristic( + cluster_id=g, week=week, scenario=scenario, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(g) + ).model, ) ) status = resolution_step_heuristic.solve() diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 1591895e..710c40e3 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -29,18 +29,24 @@ THERMAL_CLUSTER_MODEL_MILP, BINDING_CONSTRAINT, ) +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) def test_milp_version() -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=False, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + THERMAL_CLUSTER_MODEL_MILP, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -77,12 +83,12 @@ def test_lp_version() -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -122,12 +128,12 @@ def test_accurate_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=168, - lp_relaxation=True, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -160,8 +166,11 @@ def test_accurate_heuristic() -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_accurate_heuristic( - week=0, scenario=0, cluster_id=g + thermal_problem_builder.get_resolution_step_heuristic( + week=0, + scenario=0, + cluster_id=g, + model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) status = resolution_step_accurate_heuristic.solve() @@ -192,12 +201,12 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( number_hours=number_hours, - lp_relaxation=True, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, port_types=[BALANCE_PORT_TYPE], models=[ + FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, @@ -223,10 +232,13 @@ def test_fast_heuristic() -> None: for g in thermal_problem_builder.get_milp_heuristic_components(): # Solve heuristic problem resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_fast_heuristic( - thermal_cluster=g, + thermal_problem_builder.get_resolution_step_heuristic( + cluster_id=g, week=0, scenario=0, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(g) + ).model, ) ) resolution_step_heuristic.solve() From 866344495b044277c12e2e5da4fb7d08d50e84f5 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 11:10:55 +0200 Subject: [PATCH 55/93] Remove unused imports --- src/andromede/thermal_heuristic/data.py | 1 - src/andromede/thermal_heuristic/model.py | 3 +- src/andromede/thermal_heuristic/problem.py | 8 +----- src/andromede/thermal_heuristic/workflow.py | 31 --------------------- 4 files changed, 2 insertions(+), 41 deletions(-) diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 6a5867ca..3648995e 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -18,7 +18,6 @@ import pytest from andromede.simulation import OutputValues -from andromede.simulation.optimization import OptimizationProblem def get_max_unit_for_min_down_time( diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 791d41d2..68e3fba2 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -10,7 +10,7 @@ # # This file is part of the Antares project. -from typing import List, Optional +from typing import List from andromede.expression import ( ExpressionNode, @@ -29,7 +29,6 @@ model, ) from andromede.model.constraint import Constraint -from andromede.model.model import PortFieldDefinition from andromede.model.parameter import Parameter, float_parameter, int_parameter from andromede.model.variable import ValueType, float_variable, int_variable diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 7999d830..340104e1 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -12,7 +12,7 @@ from math import ceil from pathlib import Path -from typing import Dict, Iterable, List, Optional +from typing import List, Optional import numpy as np import pandas as pd @@ -41,12 +41,6 @@ get_max_unit, get_max_unit_for_min_down_time, ) -from andromede.thermal_heuristic.model import ( - AccurateModelBuilder, - FastModelBuilder, - HeuristicAccurateModelBuilder, - HeuristicFastModelBuilder, -) from andromede.thermal_heuristic.workflow import ResolutionStep diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 68253acf..d5c3597a 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -10,48 +10,17 @@ # # This file is part of the Antares project. -from pathlib import Path -from typing import Dict, Iterable, List, Optional - -import numpy as np import ortools.linear_solver.pywraplp as pywraplp -import pandas as pd -from andromede.model import Model, PortType -from andromede.model.library import Library, library from andromede.simulation import ( BlockBorderManagement, OutputValues, TimeBlock, build_problem, ) -from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( - ConstantData, DataBase, Network, - TimeIndex, - TimeScenarioSeriesData, - TimeSeriesData, - create_component, -) -from andromede.study.data import AbstractDataStructure -from andromede.study.parsing import InputComponents, parse_yaml_components -from andromede.study.resolve_components import ( - build_data_base, - build_network, - resolve_components_and_cnx, -) -from andromede.thermal_heuristic.data import ( - get_max_failures, - get_max_unit, - get_max_unit_for_min_down_time, -) -from andromede.thermal_heuristic.model import ( - AccurateModelBuilder, - FastModelBuilder, - HeuristicAccurateModelBuilder, - HeuristicFastModelBuilder, ) From 945c58dc10042ded6217f68f2c6f9d335700dd8f Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 12:34:23 +0200 Subject: [PATCH 56/93] New class for time scenario parameters --- src/andromede/thermal_heuristic/problem.py | 235 +++++++++--------- .../time_scenario_parameter.py | 20 ++ ...l_heuristic_fast_min_down_not_respected.py | 13 +- .../test_thermal_heuristic_one_cluster.py | 37 ++- .../test_thermal_heuristic_six_clusters.py | 21 +- .../test_thermal_heuristic_three_clusters.py | 57 ++--- ..._thermal_heuristic_two_clusters_with_bc.py | 41 ++- 7 files changed, 219 insertions(+), 205 deletions(-) create mode 100644 src/andromede/thermal_heuristic/time_scenario_parameter.py diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 340104e1..6697e681 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -42,42 +42,37 @@ get_max_unit_for_min_down_time, ) from andromede.thermal_heuristic.workflow import ResolutionStep +from andromede.thermal_heuristic.time_scenario_parameter import ( + TimeScenarioHourParameter, +) class ThermalProblemBuilder: def __init__( self, - number_hours: int, fast: bool, data_dir: Path, - initial_thermal_model: Model, + id_thermal_cluster_model: str, port_types: List[PortType], models: List[Model], - number_week: int, - number_scenario: int, + time_scenario_hour_parameter: TimeScenarioHourParameter, ) -> None: lib = library( port_types=port_types, models=models, ) - self.number_week = number_week - self.number_scenario = number_scenario + self.time_scenario_hour_parameter = time_scenario_hour_parameter self.network = get_network(data_dir / "components.yml", lib) - self.number_hours = number_hours - self.initial_thermal_model = initial_thermal_model - self.database = self.get_database( - data_dir, - "components.yml", - number_hours, - fast, - timesteps=number_hours * number_week, - scenarios=number_scenario, - ) + self.id_thermal_cluster_model = id_thermal_cluster_model + self.database = self.get_database(data_dir, "components.yml", fast) def get_main_resolution_step(self, week: int, scenario: int) -> ResolutionStep: main_resolution_step = ResolutionStep( timesteps=list( - range(week * self.number_hours, (week + 1) * self.number_hours) + range( + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, + ) ), scenarios=[scenario], database=self.database, @@ -98,13 +93,19 @@ def update_database_accurate( for cluster in list_cluster_id: self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "nb_units_min"), - self.number_hours * self.number_week, - self.number_scenario, + self.time_scenario_hour_parameter.hour + * self.time_scenario_hour_parameter.week, + self.time_scenario_hour_parameter.scenario, ) nb_on = output.component(cluster).var("nb_on").value[0] # type:ignore for i, t in enumerate( - list(range(week * self.number_hours, (week + 1) * self.number_hours)) + list( + range( + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, + ) + ) ): self.database.edit_value( ComponentParameterIndex(cluster, "nb_units_min"), @@ -125,15 +126,16 @@ def update_database_fast_before_heuristic( self.database.add_data(cluster, "n_guide", ConstantData(0)) self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "n_guide"), - self.number_hours * self.number_week, - self.number_scenario, + self.time_scenario_hour_parameter.hour + * self.time_scenario_hour_parameter.week, + self.time_scenario_hour_parameter.scenario, ) for i, t in enumerate( list( range( - week * self.number_hours, - (week + 1) * self.number_hours, + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, ) ) ): @@ -161,25 +163,34 @@ def update_database_fast_after_heuristic( self.database.get_value( ComponentParameterIndex(cluster, "max_generating"), t, scenario ) - for t in range(week * self.number_hours, (week + 1) * self.number_hours) + for t in range( + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, + ) ] self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "min_generating"), - self.number_hours * self.number_week, - self.number_scenario, + self.time_scenario_hour_parameter.hour + * self.time_scenario_hour_parameter.week, + self.time_scenario_hour_parameter.scenario, ) min_gen = np.minimum( np.array( output.component(cluster).var("n").value[0] # type:ignore - ).reshape((self.number_hours, 1)) + ).reshape((self.time_scenario_hour_parameter.hour, 1)) * pmin, - np.array(pdispo).reshape((self.number_hours, 1)), - ).reshape(self.number_hours) + np.array(pdispo).reshape((self.time_scenario_hour_parameter.hour, 1)), + ).reshape(self.time_scenario_hour_parameter.hour) for i, t in enumerate( - list(range(week * self.number_hours, (week + 1) * self.number_hours)) + list( + range( + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, + ) + ) ): self.database.edit_value( ComponentParameterIndex(cluster, "min_generating"), @@ -189,17 +200,20 @@ def update_database_fast_after_heuristic( ) def get_resolution_step_heuristic( - self, week: int, scenario: int, cluster_id: str, model: Model + self, week: int, scenario: int, id: str, model: Model ) -> ResolutionStep: - cluster = create_component(model=model, id=cluster_id) + cluster = create_component(model=model, id=id) network = Network("test") network.add_component(cluster) resolution_step = ResolutionStep( timesteps=list( - range(week * self.number_hours, (week + 1) * self.number_hours) + range( + week * self.time_scenario_hour_parameter.hour, + (week + 1) * self.time_scenario_hour_parameter.hour, + ) ), scenarios=[scenario], database=self.database, @@ -222,25 +236,16 @@ def compute_delta(self, thermal_cluster: str) -> int: return delta def complete_database_for_fast_heuristic( - self, database: DataBase, list_cluster_id: list[str], number_hours: int + self, database: DataBase, list_cluster_id: list[str] ) -> None: for cluster_id in list_cluster_id: - delta = int( - max( - database.get_value( - ComponentParameterIndex(cluster_id, "d_min_up"), 0, 0 - ), - database.get_value( - ComponentParameterIndex(cluster_id, "d_min_down"), 0, 0 - ), - ) - ) + delta = self.compute_delta(cluster_id) n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) database.add_data(cluster_id, "delta", ConstantData(delta)) for h in range(delta): - start_ajust = self.number_hours - delta + h + start_ajust = self.time_scenario_hour_parameter.hour - delta + h database.add_data( cluster_id, f"alpha_ajust_{h}", @@ -248,15 +253,21 @@ def complete_database_for_fast_heuristic( { TimeIndex(t): ( 1 - if (t % self.number_hours >= start_ajust) - or (t % self.number_hours < h) + if ( + t % self.time_scenario_hour_parameter.hour + >= start_ajust + ) + or (t % self.time_scenario_hour_parameter.hour < h) else 0 ) - for t in range(self.number_hours * self.number_week) + for t in range( + self.time_scenario_hour_parameter.hour + * self.time_scenario_hour_parameter.week + ) } ), ) - for k in range(number_hours // delta): + for k in range(self.time_scenario_hour_parameter.hour // delta): start_k = k * delta + h end_k = min(start_ajust, (k + 1) * delta + h) database.add_data( @@ -266,11 +277,20 @@ def complete_database_for_fast_heuristic( { TimeIndex(t): ( 1 - if (t % self.number_hours >= start_k) - and (t % self.number_hours < end_k) + if ( + t % self.time_scenario_hour_parameter.hour + >= start_k + ) + and ( + t % self.time_scenario_hour_parameter.hour + < end_k + ) else 0 ) - for t in range(self.number_hours * self.number_week) + for t in range( + self.time_scenario_hour_parameter.hour + * self.time_scenario_hour_parameter.week + ) } ), ) @@ -279,25 +299,17 @@ def get_database( self, data_dir: Path, yml_file: str, - hours_in_week: int, fast: bool, - timesteps: int, - scenarios: int, ) -> DataBase: components_file = get_input_components(data_dir / yml_file) database = build_data_base(components_file, data_dir) - complete_database_with_cluster_parameters( - database, - list_cluster_id=self.get_milp_heuristic_components(), - hours_in_week=hours_in_week, - timesteps=timesteps, - scenarios=scenarios, - ) + self.complete_database_with_cluster_parameters(database) if fast: self.complete_database_for_fast_heuristic( - database, self.get_milp_heuristic_components(), hours_in_week + database, + self.get_milp_heuristic_components(), ) return database @@ -306,66 +318,59 @@ def get_milp_heuristic_components(self) -> list[str]: return [ c.id for c in self.network.components - if c.model.id == self.initial_thermal_model.id + if c.model.id == self.id_thermal_cluster_model ] + def complete_database_with_cluster_parameters(self, database: DataBase) -> None: + for cluster_id in self.get_milp_heuristic_components(): + if type(database.get_data(cluster_id, "max_generating")) is ConstantData: + database.add_data( + cluster_id, + "max_failure", + ConstantData(0), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + database.get_data(cluster_id, "nb_units_max"), + ) -def complete_database_with_cluster_parameters( - database: DataBase, - list_cluster_id: List[str], - hours_in_week: int, - timesteps: int, - scenarios: int, -) -> None: - for cluster_id in list_cluster_id: - if type(database.get_data(cluster_id, "max_generating")) is ConstantData: - database.add_data( - cluster_id, - "max_failure", - ConstantData(0), - ) - database.add_data( - cluster_id, - "nb_units_max_min_down_time", - database.get_data(cluster_id, "nb_units_max"), - ) - - else: - ( - max_units, - max_failures, - nb_units_max_min_down_time, - ) = compute_cluster_parameters( - hours_in_week, database, cluster_id, timesteps, scenarios - ) - database.add_data( - cluster_id, - "nb_units_max", - TimeScenarioSeriesData(max_units), - ) - database.add_data( - cluster_id, - "max_failure", - TimeScenarioSeriesData(max_failures), - ) - database.add_data( - cluster_id, - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time), - ) + else: + ( + max_units, + max_failures, + nb_units_max_min_down_time, + ) = compute_cluster_parameters( + database, + cluster_id, + self.time_scenario_hour_parameter, + ) + database.add_data( + cluster_id, + "nb_units_max", + TimeScenarioSeriesData(max_units), + ) + database.add_data( + cluster_id, + "max_failure", + TimeScenarioSeriesData(max_failures), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time), + ) def compute_cluster_parameters( - hours_in_week: int, database: DataBase, cluster_id: str, - timesteps: int, - scenarios: int, + time_scenario_hour_parameter: TimeScenarioHourParameter, ) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster_id, "max_generating"), - timesteps=timesteps, - scenarios=scenarios, + timesteps=time_scenario_hour_parameter.hour * time_scenario_hour_parameter.week, + scenarios=time_scenario_hour_parameter.scenario, ) max_units = get_max_unit( database.get_value(ComponentParameterIndex(cluster_id, "p_max"), 0, 0), @@ -374,7 +379,7 @@ def compute_cluster_parameters( cluster_id, "max_generating" ).time_scenario_series, # type:ignore ) - max_failures = get_max_failures(max_units, hours_in_week) + max_failures = get_max_failures(max_units, time_scenario_hour_parameter.hour) nb_units_max_min_down_time = get_max_unit_for_min_down_time( int( max( @@ -387,7 +392,7 @@ def compute_cluster_parameters( ) ), max_units, - hours_in_week, + time_scenario_hour_parameter.hour, ) return max_units, max_failures, nb_units_max_min_down_time diff --git a/src/andromede/thermal_heuristic/time_scenario_parameter.py b/src/andromede/thermal_heuristic/time_scenario_parameter.py new file mode 100644 index 00000000..4b925f7f --- /dev/null +++ b/src/andromede/thermal_heuristic/time_scenario_parameter.py @@ -0,0 +1,20 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from dataclasses import dataclass + + +@dataclass +class TimeScenarioHourParameter: + week: int + scenario: int + hour: int diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index c925c954..4701149a 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -19,7 +19,10 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.thermal_heuristic.model import ( @@ -37,15 +40,13 @@ def test_fast_heuristic() -> None: week = 0 thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_fast_min_down_not_respected", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] @@ -73,7 +74,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( - cluster_id=cluster, + id=cluster, week=week, scenario=scenario, model=HeuristicFastModelBuilder( diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 3bea098f..11f8bf21 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -24,7 +24,10 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.thermal_heuristic.model import ( @@ -62,10 +65,9 @@ def test_milp_version() -> None: = 16 805 387 """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ THERMAL_CLUSTER_MODEL_MILP, @@ -74,8 +76,7 @@ def test_milp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] @@ -129,10 +130,9 @@ def test_lp_version() -> None: = 16 802 840,55 """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -141,8 +141,7 @@ def test_lp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] @@ -175,10 +174,9 @@ def test_accurate_heuristic() -> None: """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -187,8 +185,7 @@ def test_accurate_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] @@ -205,7 +202,7 @@ def test_accurate_heuristic() -> None: thermal_problem_builder.update_database_accurate( resolution_step_1.output, 0, 0, None ) - for time_step in range(thermal_problem_builder.number_hours): + for time_step in range(thermal_problem_builder.time_scenario_hour_parameter.hour): assert ( thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 @@ -220,7 +217,7 @@ def test_accurate_heuristic() -> None: thermal_problem_builder.get_resolution_step_heuristic( week=0, scenario=0, - cluster_id=cluster, + id=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -231,7 +228,7 @@ def test_accurate_heuristic() -> None: resolution_step_accurate_heuristic.output, 0, 0, None ) - for time_step in range(thermal_problem_builder.number_hours): + for time_step in range(thermal_problem_builder.time_scenario_hour_parameter.hour): assert ( thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 @@ -291,10 +288,9 @@ def test_fast_heuristic() -> None: number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -303,8 +299,7 @@ def test_fast_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] @@ -322,7 +317,7 @@ def test_fast_heuristic() -> None: ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( - cluster_id=cluster, + id=cluster, week=0, scenario=0, model=HeuristicFastModelBuilder( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 1ad109af..a5b4e259 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -19,7 +19,10 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.thermal_heuristic.model import ( @@ -40,14 +43,12 @@ def test_accurate_heuristic() -> None: week = 0 thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) parameters = pywraplp.MPSolverParameters() @@ -80,7 +81,7 @@ def test_accurate_heuristic() -> None: thermal_problem_builder.get_resolution_step_heuristic( week=week, scenario=scenario, - cluster_id=cluster, + id=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -115,14 +116,12 @@ def test_fast_heuristic() -> None: week = 0 thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) for j, cluster in enumerate( @@ -152,7 +151,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - cluster_id=cluster, + id=cluster, week=week, scenario=scenario, model=HeuristicFastModelBuilder( diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index be8c7774..face78d9 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -23,7 +23,10 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -35,17 +38,14 @@ def test_milp_version() -> None: """ """ - number_hours = 168 - scenarios = 2 output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 ) thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ THERMAL_CLUSTER_MODEL_MILP, @@ -54,8 +54,7 @@ def test_milp_version() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=2, - number_scenario=scenarios, + time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) parameters = pywraplp.MPSolverParameters() @@ -63,8 +62,10 @@ def test_milp_version() -> None: parameters.SetIntegerParam(parameters.SCALING, 0) parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) - for scenario in range(scenarios): - for week in range(2): + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): resolution_step = thermal_problem_builder.get_main_resolution_step( week=week, scenario=scenario, @@ -99,18 +100,14 @@ def test_accurate_heuristic() -> None: idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - number_hours = 168 - scenarios = 2 - parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -119,12 +116,13 @@ def test_accurate_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=2, - number_scenario=scenarios, + time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) - for scenario in range(scenarios): - for week in range(2): + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=week, @@ -143,7 +141,7 @@ def test_accurate_heuristic() -> None: thermal_problem_builder.get_resolution_step_heuristic( week=week, scenario=scenario, - cluster_id=g, + id=g, model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP ).model, @@ -191,19 +189,14 @@ def test_fast_heuristic() -> None: idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - number_hours = 168 - scenarios = 2 - weeks = 2 - parameters = pywraplp.MPSolverParameters() parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) parameters.SetIntegerParam(parameters.SCALING, 0) thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -212,12 +205,13 @@ def test_fast_heuristic() -> None: SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ], - number_week=2, - number_scenario=scenarios, + time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) - for scenario in range(scenarios): - for week in range(weeks): + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week=week, @@ -233,11 +227,12 @@ def test_fast_heuristic() -> None: for g in thermal_problem_builder.get_milp_heuristic_components(): # resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - cluster_id=g, + id=g, week=week, scenario=scenario, model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(g) + thermal_problem_builder.time_scenario_hour_parameter.hour, + delta=thermal_problem_builder.compute_delta(g), ).model, ) ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 710c40e3..5bda9d8c 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -24,7 +24,10 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ThermalProblemBuilder +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) from tests.functional.libs.lib_thermal_heuristic import ( THERMAL_CLUSTER_MODEL_MILP, BINDING_CONSTRAINT, @@ -40,10 +43,9 @@ def test_milp_version() -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ THERMAL_CLUSTER_MODEL_MILP, @@ -53,8 +55,7 @@ def test_milp_version() -> None: UNSUPPLIED_ENERGY_MODEL, BINDING_CONSTRAINT, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( @@ -82,10 +83,9 @@ def test_milp_version() -> None: def test_lp_version() -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -95,8 +95,7 @@ def test_lp_version() -> None: UNSUPPLIED_ENERGY_MODEL, BINDING_CONSTRAINT, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( @@ -127,10 +126,9 @@ def test_accurate_heuristic() -> None: """ thermal_problem_builder = ThermalProblemBuilder( - number_hours=168, fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -140,8 +138,7 @@ def test_accurate_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, BINDING_CONSTRAINT, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) # First optimization @@ -159,7 +156,9 @@ def test_accurate_heuristic() -> None: for g in thermal_problem_builder.get_milp_heuristic_components(): - for time_step in range(thermal_problem_builder.number_hours): + for time_step in range( + thermal_problem_builder.time_scenario_hour_parameter.hour + ): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) @@ -169,7 +168,7 @@ def test_accurate_heuristic() -> None: thermal_problem_builder.get_resolution_step_heuristic( week=0, scenario=0, - cluster_id=g, + id=g, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -180,7 +179,9 @@ def test_accurate_heuristic() -> None: resolution_step_accurate_heuristic.output, 0, 0, [g] ) - for time_step in range(thermal_problem_builder.number_hours): + for time_step in range( + thermal_problem_builder.time_scenario_hour_parameter.hour + ): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) @@ -200,10 +201,9 @@ def test_fast_heuristic() -> None: number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( - number_hours=number_hours, fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", - initial_thermal_model=THERMAL_CLUSTER_MODEL_MILP, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, @@ -213,8 +213,7 @@ def test_fast_heuristic() -> None: UNSUPPLIED_ENERGY_MODEL, BINDING_CONSTRAINT, ], - number_week=1, - number_scenario=1, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) # First optimization @@ -233,7 +232,7 @@ def test_fast_heuristic() -> None: # Solve heuristic problem resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - cluster_id=g, + id=g, week=0, scenario=0, model=HeuristicFastModelBuilder( From 8a42060c128ec9a3e808003f3fe0ba3549d683b8 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:20:59 +0200 Subject: [PATCH 57/93] Refactor solve --- src/andromede/thermal_heuristic/workflow.py | 4 +- ...l_heuristic_fast_min_down_not_respected.py | 4 +- .../test_thermal_heuristic_one_cluster.py | 21 +++----- .../test_thermal_heuristic_six_clusters.py | 22 ++++---- .../test_thermal_heuristic_three_clusters.py | 50 +++++++------------ ..._thermal_heuristic_two_clusters_with_bc.py | 21 +++----- 6 files changed, 49 insertions(+), 73 deletions(-) diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index d5c3597a..b40ccc79 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -48,13 +48,13 @@ def __init__( def solve( self, solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), - ) -> int: + ) -> None: status = self.problem.solver.Solve(solver_parameters) self.output = OutputValues(self.problem) self.objective = self.problem.solver.Objective().Value() - return status + assert status == pywraplp.Solver.OPTIMAL class ConnectionBetweenResolutionSteps: diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 4701149a..4811582b 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -82,8 +82,8 @@ def test_fast_heuristic() -> None: ).model, ) - status = resolution_step_heuristic.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_heuristic.solve() + thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week, scenario, [cluster] ) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 11f8bf21..cfe689ea 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -85,9 +85,8 @@ def test_milp_version() -> None: week=0, scenario=0, ) - status = main_resolution_step.solve() + main_resolution_step.solve() - assert status == pywraplp.Solver.OPTIMAL assert main_resolution_step.objective == 16805387 expected_output = ExpectedOutput( @@ -150,9 +149,8 @@ def test_lp_version() -> None: week=0, scenario=0, ) - status = main_resolution_step.solve() + main_resolution_step.solve() - assert status == pywraplp.Solver.OPTIMAL assert main_resolution_step.objective == pytest.approx(16802840.55) expected_output = ExpectedOutput( @@ -195,8 +193,7 @@ def test_accurate_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_1.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( @@ -221,8 +218,7 @@ def test_accurate_heuristic() -> None: model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) - status = resolution_step_accurate_heuristic.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, 0, 0, None @@ -243,8 +239,7 @@ def test_accurate_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_2.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_2.solve() assert resolution_step_2.objective == 16805387 expected_output = ExpectedOutput( @@ -309,8 +304,7 @@ def test_fast_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_1.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, 0, 0 @@ -344,8 +338,7 @@ def test_fast_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_2.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_2.solve() assert resolution_step_2.objective == pytest.approx(16850000) expected_output = ExpectedOutput( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index a5b4e259..740fe29c 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -33,7 +33,15 @@ ) -def test_accurate_heuristic() -> None: +@pytest.fixture +def solver_parameters() -> pywraplp.MPSolverParameters: + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + return parameters + + +def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -51,10 +59,6 @@ def test_accurate_heuristic() -> None: time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - for j, cluster in enumerate( thermal_problem_builder.get_milp_heuristic_components() ): @@ -85,9 +89,7 @@ def test_accurate_heuristic() -> None: model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) - status = resolution_step_accurate_heuristic.solve(parameters) - - assert status == pywraplp.Solver.OPTIMAL + resolution_step_accurate_heuristic.solve(solver_parameters) nb_on_heuristic = np.transpose( np.ceil( @@ -160,8 +162,8 @@ def test_fast_heuristic() -> None: ) ) - status = resolution_step_heuristic.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_heuristic.solve() + thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week, scenario, [cluster] ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index face78d9..8fc731f3 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -36,7 +36,16 @@ ) -def test_milp_version() -> None: +@pytest.fixture +def solver_parameters() -> pywraplp.MPSolverParameters: + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) + return parameters + + +def test_milp_version(solver_parameters: pywraplp.MPSolverParameters) -> None: """ """ output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 @@ -57,11 +66,6 @@ def test_milp_version() -> None: time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) - for scenario in range( thermal_problem_builder.time_scenario_hour_parameter.scenario ): @@ -71,9 +75,7 @@ def test_milp_version() -> None: scenario=scenario, ) - status = resolution_step.solve(parameters) - - assert status == pywraplp.Solver.OPTIMAL + resolution_step.solve(solver_parameters) expected_output = ExpectedOutput( mode="milp", @@ -91,7 +93,7 @@ def test_milp_version() -> None: ) -def test_accurate_heuristic() -> None: +def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -100,10 +102,6 @@ def test_accurate_heuristic() -> None: idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", @@ -128,8 +126,7 @@ def test_accurate_heuristic() -> None: week=week, scenario=scenario, ) - status = resolution_step_1.solve(parameters) - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_accurate( resolution_step_1.output, week, scenario, None @@ -147,8 +144,7 @@ def test_accurate_heuristic() -> None: ).model, ) ) - status = resolution_step_accurate_heuristic.solve(parameters) - assert status == pywraplp.Solver.OPTIMAL + resolution_step_accurate_heuristic.solve(solver_parameters) thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, week, scenario, [g] @@ -159,8 +155,7 @@ def test_accurate_heuristic() -> None: week=week, scenario=scenario, ) - status = resolution_step_2.solve(parameters) - assert status == pywraplp.Solver.OPTIMAL + resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="accurate", @@ -181,7 +176,7 @@ def test_accurate_heuristic() -> None: ) -def test_fast_heuristic() -> None: +def test_fast_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: """ Solve the same problem as before with the heuristic fast of Antares """ @@ -189,10 +184,6 @@ def test_fast_heuristic() -> None: idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - thermal_problem_builder = ThermalProblemBuilder( fast=True, data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", @@ -217,8 +208,7 @@ def test_fast_heuristic() -> None: week=week, scenario=scenario, ) - status = resolution_step_1.solve(parameters) - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, week, scenario @@ -236,8 +226,7 @@ def test_fast_heuristic() -> None: ).model, ) ) - status = resolution_step_heuristic.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week, scenario, [g] @@ -248,8 +237,7 @@ def test_fast_heuristic() -> None: week=week, scenario=scenario, ) - status = resolution_step_2.solve(parameters) - assert status == pywraplp.Solver.OPTIMAL + resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="fast", diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 5bda9d8c..c3a2cdba 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -62,9 +62,8 @@ def test_milp_version() -> None: week=0, scenario=0, ) - status = main_resolution_step.solve() + main_resolution_step.solve() - assert status == pywraplp.Solver.OPTIMAL assert main_resolution_step.objective == 16822864 expected_output = ExpectedOutput( @@ -102,9 +101,8 @@ def test_lp_version() -> None: week=0, scenario=0, ) - status = main_resolution_step.solve() + main_resolution_step.solve() - assert status == pywraplp.Solver.OPTIMAL assert main_resolution_step.objective == pytest.approx(16802840.55) expected_output = ExpectedOutput( @@ -146,8 +144,7 @@ def test_accurate_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_1.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( @@ -172,8 +169,7 @@ def test_accurate_heuristic() -> None: model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) - status = resolution_step_accurate_heuristic.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, 0, 0, [g] @@ -191,8 +187,7 @@ def test_accurate_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_2.solve() - assert status == pywraplp.Solver.INFEASIBLE + resolution_step_2.solve() def test_fast_heuristic() -> None: @@ -221,8 +216,7 @@ def test_fast_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_1.solve() - assert status == pywraplp.Solver.OPTIMAL + resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, 0, 0 @@ -259,5 +253,4 @@ def test_fast_heuristic() -> None: week=0, scenario=0, ) - status = resolution_step_2.solve() - assert status == pywraplp.Solver.INFEASIBLE + resolution_step_2.solve() From c88263cd6d9839ff0025edc30aef1c6133394e1d Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:23:42 +0200 Subject: [PATCH 58/93] Sort imports --- src/andromede/thermal_heuristic/model.py | 8 +------- src/andromede/thermal_heuristic/problem.py | 2 +- src/andromede/thermal_heuristic/workflow.py | 5 +---- ...ermal_heuristic_fast_min_down_not_respected.py | 10 ++++------ .../test_thermal_heuristic_one_cluster.py | 12 +++++------- .../test_thermal_heuristic_six_clusters.py | 11 +++++------ .../test_thermal_heuristic_three_clusters.py | 10 +++++----- ...test_thermal_heuristic_two_clusters_with_bc.py | 15 +++++++-------- 8 files changed, 29 insertions(+), 44 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 68e3fba2..bd061c8c 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -21,13 +21,7 @@ visit, ) from andromede.expression.indexing_structure import IndexingStructure -from andromede.model import ( - Model, - Variable, - float_parameter, - float_variable, - model, -) +from andromede.model import Model, Variable, float_parameter, float_variable, model from andromede.model.constraint import Constraint from andromede.model.parameter import Parameter, float_parameter, int_parameter from andromede.model.variable import ValueType, float_variable, int_variable diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 6697e681..e8d3bc62 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -41,10 +41,10 @@ get_max_unit, get_max_unit_for_min_down_time, ) -from andromede.thermal_heuristic.workflow import ResolutionStep from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, ) +from andromede.thermal_heuristic.workflow import ResolutionStep class ThermalProblemBuilder: diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index b40ccc79..5311685a 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -18,10 +18,7 @@ TimeBlock, build_problem, ) -from andromede.study import ( - DataBase, - Network, -) +from andromede.study import DataBase, Network class ResolutionStep: diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 4811582b..192392b1 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -13,23 +13,21 @@ from pathlib import Path import numpy as np -import ortools.linear_solver.pywraplp as pywraplp import pandas as pd import pytest from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.model import ( + FastModelBuilder, + HeuristicFastModelBuilder, +) from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.thermal_heuristic.model import ( - FastModelBuilder, - HeuristicFastModelBuilder, -) - def test_fast_heuristic() -> None: """ diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index cfe689ea..6e83a978 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -12,7 +12,6 @@ from pathlib import Path -import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import ( @@ -24,18 +23,17 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, - TimeScenarioHourParameter, -) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP - from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, ) +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP def test_milp_version() -> None: diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 740fe29c..41cda1a0 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -19,18 +19,17 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, - TimeScenarioHourParameter, -) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP - from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, ) +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 8fc731f3..d2dfcbfe 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -23,17 +23,17 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes -from andromede.thermal_heuristic.problem import ( - ThermalProblemBuilder, - TimeScenarioHourParameter, -) -from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, ) +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index c3a2cdba..96012529 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -12,7 +12,6 @@ from pathlib import Path -import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import ( @@ -24,19 +23,19 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, +) from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, ) from tests.functional.libs.lib_thermal_heuristic import ( - THERMAL_CLUSTER_MODEL_MILP, BINDING_CONSTRAINT, -) -from andromede.thermal_heuristic.model import ( - AccurateModelBuilder, - FastModelBuilder, - HeuristicAccurateModelBuilder, - HeuristicFastModelBuilder, + THERMAL_CLUSTER_MODEL_MILP, ) From 3fbfa5d194159e3a1002f5755ba7f66abcffba90 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:24:32 +0200 Subject: [PATCH 59/93] Formating --- src/andromede/thermal_heuristic/problem.py | 1 - tests/functional/test_thermal_heuristic_two_clusters_with_bc.py | 1 - 2 files changed, 2 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index e8d3bc62..d436dba4 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -202,7 +202,6 @@ def update_database_fast_after_heuristic( def get_resolution_step_heuristic( self, week: int, scenario: int, id: str, model: Model ) -> ResolutionStep: - cluster = create_component(model=model, id=id) network = Network("test") diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 96012529..107e11d7 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -151,7 +151,6 @@ def test_accurate_heuristic() -> None: ) for g in thermal_problem_builder.get_milp_heuristic_components(): - for time_step in range( thermal_problem_builder.time_scenario_hour_parameter.hour ): From 8a0fe989795530f36c8d8fb4b9c16c781211e2dd Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:33:17 +0200 Subject: [PATCH 60/93] Refactor data_path --- ...l_heuristic_fast_min_down_not_respected.py | 10 +++++-- .../test_thermal_heuristic_one_cluster.py | 29 +++++++++++-------- .../test_thermal_heuristic_six_clusters.py | 15 +++++++--- .../test_thermal_heuristic_three_clusters.py | 29 +++++++++++++------ ..._thermal_heuristic_two_clusters_with_bc.py | 25 +++++++++------- 5 files changed, 70 insertions(+), 38 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 192392b1..1e49745d 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -29,7 +29,12 @@ from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -def test_fast_heuristic() -> None: +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_fast_min_down_not_respected" + + +def test_fast_heuristic(data_path: str) -> None: """ Solve the same problem as before with the heuristic fast of Antares """ @@ -39,8 +44,7 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( fast=True, - data_dir=Path(__file__).parent - / "data/thermal_heuristic_fast_min_down_not_respected", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 6e83a978..358bc589 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -36,7 +36,12 @@ from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -def test_milp_version() -> None: +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_one_cluster" + + +def test_milp_version(data_path: str) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -64,7 +69,7 @@ def test_milp_version() -> None: """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -91,7 +96,7 @@ def test_milp_version() -> None: mode="milp", week=0, scenario=0, - dir_path="data/thermal_heuristic_one_cluster", + dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 @@ -100,7 +105,7 @@ def test_milp_version() -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version() -> None: +def test_lp_version(data_path: str) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -128,7 +133,7 @@ def test_lp_version() -> None: """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -155,7 +160,7 @@ def test_lp_version() -> None: mode="lp", week=0, scenario=0, - dir_path="data/thermal_heuristic_one_cluster", + dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 @@ -164,14 +169,14 @@ def test_lp_version() -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic() -> None: +def test_accurate_heuristic(data_path: str) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -244,7 +249,7 @@ def test_accurate_heuristic() -> None: mode="accurate", week=0, scenario=0, - dir_path="data/thermal_heuristic_one_cluster", + dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 @@ -253,7 +258,7 @@ def test_accurate_heuristic() -> None: expected_output.check_output_values(resolution_step_2.output) -def test_fast_heuristic() -> None: +def test_fast_heuristic(data_path: str) -> None: """ Solve the same problem as before with the heuristic fast of Antares Model on 168 time steps with one thermal generation and one demand on a single node. @@ -282,7 +287,7 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( fast=True, - data_dir=Path(__file__).parent / "data/thermal_heuristic_one_cluster", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -343,7 +348,7 @@ def test_fast_heuristic() -> None: mode="fast", week=0, scenario=0, - dir_path="data/thermal_heuristic_one_cluster", + dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 41cda1a0..838cc014 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -40,7 +40,14 @@ def solver_parameters() -> pywraplp.MPSolverParameters: return parameters -def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_six_clusters" + + +def test_accurate_heuristic( + solver_parameters: pywraplp.MPSolverParameters, data_path: str +) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -51,7 +58,7 @@ def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> N thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], @@ -108,7 +115,7 @@ def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> N ] -def test_fast_heuristic() -> None: +def test_fast_heuristic(data_path: str) -> None: """ Solve the same problem as before with the heuristic fast of Antares """ @@ -118,7 +125,7 @@ def test_fast_heuristic() -> None: thermal_problem_builder = ThermalProblemBuilder( fast=True, - data_dir=Path(__file__).parent / "data/thermal_heuristic_six_clusters", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index d2dfcbfe..cf4a1843 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -45,7 +45,14 @@ def solver_parameters() -> pywraplp.MPSolverParameters: return parameters -def test_milp_version(solver_parameters: pywraplp.MPSolverParameters) -> None: +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_three_clusters" + + +def test_milp_version( + solver_parameters: pywraplp.MPSolverParameters, data_path: str +) -> None: """ """ output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 @@ -53,7 +60,7 @@ def test_milp_version(solver_parameters: pywraplp.MPSolverParameters) -> None: thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -81,7 +88,7 @@ def test_milp_version(solver_parameters: pywraplp.MPSolverParameters) -> None: mode="milp", week=week, scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", + dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) @@ -93,7 +100,9 @@ def test_milp_version(solver_parameters: pywraplp.MPSolverParameters) -> None: ) -def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: +def test_accurate_heuristic( + solver_parameters: pywraplp.MPSolverParameters, data_path: str +) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -104,7 +113,7 @@ def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> N thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -161,7 +170,7 @@ def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> N mode="accurate", week=week, scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", + dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) @@ -176,7 +185,9 @@ def test_accurate_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> N ) -def test_fast_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: +def test_fast_heuristic( + solver_parameters: pywraplp.MPSolverParameters, data_path: str +) -> None: """ Solve the same problem as before with the heuristic fast of Antares """ @@ -186,7 +197,7 @@ def test_fast_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: thermal_problem_builder = ThermalProblemBuilder( fast=True, - data_dir=Path(__file__).parent / "data/thermal_heuristic_three_clusters", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -243,7 +254,7 @@ def test_fast_heuristic(solver_parameters: pywraplp.MPSolverParameters) -> None: mode="fast", week=week, scenario=scenario, - dir_path="data/thermal_heuristic_three_clusters", + dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 107e11d7..579e0289 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -39,11 +39,16 @@ ) -def test_milp_version() -> None: +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_two_clusters_with_bc" + + +def test_milp_version(data_path: str) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -69,7 +74,7 @@ def test_milp_version() -> None: mode="milp", week=0, scenario=0, - dir_path="data/thermal_heuristic_two_clusters_with_bc", + dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 @@ -78,11 +83,11 @@ def test_milp_version() -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version() -> None: +def test_lp_version(data_path: str) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -108,7 +113,7 @@ def test_lp_version() -> None: mode="lp", week=0, scenario=0, - dir_path="data/thermal_heuristic_two_clusters_with_bc", + dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 @@ -117,14 +122,14 @@ def test_lp_version() -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic() -> None: +def test_accurate_heuristic(data_path: str) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ thermal_problem_builder = ThermalProblemBuilder( fast=False, - data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ @@ -188,14 +193,14 @@ def test_accurate_heuristic() -> None: resolution_step_2.solve() -def test_fast_heuristic() -> None: +def test_fast_heuristic(data_path: str) -> None: """ """ number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( fast=True, - data_dir=Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc", + data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[ From dec3bd5a571fa54db5a593aad87ff217bed8cf51 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:37:09 +0200 Subject: [PATCH 61/93] Fix test --- src/andromede/thermal_heuristic/workflow.py | 3 ++- .../test_thermal_heuristic_two_clusters_with_bc.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 5311685a..cbfed4b6 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -45,13 +45,14 @@ def __init__( def solve( self, solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), + expected_status: str = pywraplp.Solver.OPTIMAL, ) -> None: status = self.problem.solver.Solve(solver_parameters) self.output = OutputValues(self.problem) self.objective = self.problem.solver.Objective().Value() - assert status == pywraplp.Solver.OPTIMAL + assert status == expected_status class ConnectionBetweenResolutionSteps: diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 579e0289..0594fb46 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -12,6 +12,7 @@ from pathlib import Path +import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import ( @@ -190,7 +191,7 @@ def test_accurate_heuristic(data_path: str) -> None: week=0, scenario=0, ) - resolution_step_2.solve() + resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) def test_fast_heuristic(data_path: str) -> None: @@ -256,4 +257,4 @@ def test_fast_heuristic(data_path: str) -> None: week=0, scenario=0, ) - resolution_step_2.solve() + resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) From 8ed1d479da938441bffc81979ab07bb4b5c92b31 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:47:27 +0200 Subject: [PATCH 62/93] Refactor models --- .../test_thermal_heuristic_one_cluster.py | 46 +++++---------- .../test_thermal_heuristic_three_clusters.py | 36 ++++-------- ..._thermal_heuristic_two_clusters_with_bc.py | 57 +++++++------------ 3 files changed, 47 insertions(+), 92 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 358bc589..44a75173 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -24,6 +24,7 @@ from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( + Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, @@ -41,7 +42,12 @@ def data_path() -> str: return "data/thermal_heuristic_one_cluster" -def test_milp_version(data_path: str) -> None: +@pytest.fixture +def models() -> list[Model]: + return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] + + +def test_milp_version(data_path: str, models: list[Model]) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -72,13 +78,7 @@ def test_milp_version(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - THERMAL_CLUSTER_MODEL_MILP, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[THERMAL_CLUSTER_MODEL_MILP] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -105,7 +105,7 @@ def test_milp_version(data_path: str) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version(data_path: str) -> None: +def test_lp_version(data_path: str, models: list[Model]) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -136,13 +136,7 @@ def test_lp_version(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -169,7 +163,7 @@ def test_lp_version(data_path: str) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic(data_path: str) -> None: +def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -179,13 +173,7 @@ def test_accurate_heuristic(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -258,7 +246,7 @@ def test_accurate_heuristic(data_path: str) -> None: expected_output.check_output_values(resolution_step_2.output) -def test_fast_heuristic(data_path: str) -> None: +def test_fast_heuristic(data_path: str, models: list[Model]) -> None: """ Solve the same problem as before with the heuristic fast of Antares Model on 168 time steps with one thermal generation and one demand on a single node. @@ -290,13 +278,7 @@ def test_fast_heuristic(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index cf4a1843..6c11224c 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -24,6 +24,7 @@ ) from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( + Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, @@ -50,8 +51,13 @@ def data_path() -> str: return "data/thermal_heuristic_three_clusters" +@pytest.fixture +def models() -> list[Model]: + return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] + + def test_milp_version( - solver_parameters: pywraplp.MPSolverParameters, data_path: str + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ """ output_indexes = ExpectedOutputIndexes( @@ -63,13 +69,7 @@ def test_milp_version( data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - THERMAL_CLUSTER_MODEL_MILP, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[THERMAL_CLUSTER_MODEL_MILP] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) @@ -101,7 +101,7 @@ def test_milp_version( def test_accurate_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares @@ -116,13 +116,7 @@ def test_accurate_heuristic( data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) @@ -186,7 +180,7 @@ def test_accurate_heuristic( def test_fast_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ Solve the same problem as before with the heuristic fast of Antares @@ -200,13 +194,7 @@ def test_fast_heuristic( data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - ], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 0594fb46..c44df7cc 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -25,6 +25,7 @@ from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( + Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, @@ -45,21 +46,25 @@ def data_path() -> str: return "data/thermal_heuristic_two_clusters_with_bc" -def test_milp_version(data_path: str) -> None: +@pytest.fixture +def models() -> list[Model]: + return [ + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, + BINDING_CONSTRAINT, + ] + + +def test_milp_version(data_path: str, models: list[Model]) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - THERMAL_CLUSTER_MODEL_MILP, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - BINDING_CONSTRAINT, - ], + models=[THERMAL_CLUSTER_MODEL_MILP] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -84,21 +89,15 @@ def test_milp_version(data_path: str) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version(data_path: str) -> None: +def test_lp_version(data_path: str, models: list[Model]) -> None: """ """ + thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - BINDING_CONSTRAINT, - ], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -123,7 +122,7 @@ def test_lp_version(data_path: str) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic(data_path: str) -> None: +def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ @@ -133,14 +132,7 @@ def test_accurate_heuristic(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - BINDING_CONSTRAINT, - ], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) @@ -194,7 +186,7 @@ def test_accurate_heuristic(data_path: str) -> None: resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) -def test_fast_heuristic(data_path: str) -> None: +def test_fast_heuristic(data_path: str, models: list[Model]) -> None: """ """ number_hours = 168 @@ -204,14 +196,7 @@ def test_fast_heuristic(data_path: str) -> None: data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], - models=[ - FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, - BINDING_CONSTRAINT, - ], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) From 042fc12902b96330a869ff7839e149dc752af2fd Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:51:20 +0200 Subject: [PATCH 63/93] Fix test --- src/andromede/thermal_heuristic/problem.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index d436dba4..a037e4cc 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -221,13 +221,17 @@ def get_resolution_step_heuristic( return resolution_step - def compute_delta(self, thermal_cluster: str) -> int: + def compute_delta( + self, thermal_cluster: str, database: Optional[DataBase] = None + ) -> int: + if database is None: + database = self.database delta = int( max( - self.database.get_value( + database.get_value( ComponentParameterIndex(thermal_cluster, "d_min_up"), 0, 0 ), - self.database.get_value( + database.get_value( ComponentParameterIndex(thermal_cluster, "d_min_down"), 0, 0 ), ) @@ -238,7 +242,7 @@ def complete_database_for_fast_heuristic( self, database: DataBase, list_cluster_id: list[str] ) -> None: for cluster_id in list_cluster_id: - delta = self.compute_delta(cluster_id) + delta = self.compute_delta(cluster_id, database) n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) database.add_data(cluster_id, "delta", ConstantData(delta)) From e099b750a8c53d87dba6299abbd77aaa9edb7a8b Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 16:53:47 +0200 Subject: [PATCH 64/93] Run isort --- tests/functional/test_thermal_heuristic_one_cluster.py | 2 +- tests/functional/test_thermal_heuristic_three_clusters.py | 2 +- tests/functional/test_thermal_heuristic_two_clusters_with_bc.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 44a75173..5ecb1229 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -24,11 +24,11 @@ from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( - Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, + Model, ) from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 6c11224c..b5d445ef 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -24,11 +24,11 @@ ) from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( - Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, + Model, ) from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index c44df7cc..093ebcae 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -25,11 +25,11 @@ from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( - Model, AccurateModelBuilder, FastModelBuilder, HeuristicAccurateModelBuilder, HeuristicFastModelBuilder, + Model, ) from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, From f1f08e858e991e40c98da968acc2e7421caa5e07 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 17:48:37 +0200 Subject: [PATCH 65/93] Week scenario parameters --- src/andromede/thermal_heuristic/data.py | 14 ++-- src/andromede/thermal_heuristic/problem.py | 74 +++++------------ .../time_scenario_parameter.py | 18 +++++ ...l_heuristic_fast_min_down_not_respected.py | 17 ++-- .../test_thermal_heuristic_one_cluster.py | 73 +++++++++-------- .../test_thermal_heuristic_six_clusters.py | 36 +++++---- .../test_thermal_heuristic_three_clusters.py | 42 +++++----- ..._thermal_heuristic_two_clusters_with_bc.py | 81 ++++++++++--------- 8 files changed, 176 insertions(+), 179 deletions(-) diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 3648995e..75f3ba04 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -18,6 +18,7 @@ import pytest from andromede.simulation import OutputValues +from andromede.thermal_heuristic.time_scenario_parameter import WeekScenarioIndex def get_max_unit_for_min_down_time( @@ -78,8 +79,7 @@ class ExpectedOutput: def __init__( self, mode: str, - week: int, - scenario: int, + index: WeekScenarioIndex, dir_path: str, list_cluster: list[str], output_idx: ExpectedOutputIndexes, @@ -88,7 +88,7 @@ def __init__( self.list_cluster = list_cluster self.output_idx = output_idx self.output_cluster, self.output_general = self.read_expected_output( - scenario, dir_path, week + dir_path, index ) def check_output_values(self, output: OutputValues) -> None: @@ -130,10 +130,10 @@ def check_output_cluster( ] def read_expected_output( - self, scenario: int, dir_path: str, week: int + self, dir_path: str, index: WeekScenarioIndex ) -> tuple[list[list[str]], list[list[str]]]: folder_name = ( - "tests/functional/" + dir_path + "/" + self.mode + "/" + str(scenario) + "tests/functional/" + dir_path + "/" + self.mode + "/" + str(index.scenario) ) expected_output_clusters_file = open( @@ -151,13 +151,13 @@ def read_expected_output( [ line.strip().split("\t") for line in expected_output_clusters[ - 168 * week + 7 : 168 * week + 7 + 168 + 168 * index.week + 7 : 168 * index.week + 7 + 168 ] ], [ line.strip().split("\t") for line in expected_output_general[ - 168 * week + 7 : 168 * week + 7 + 168 + 168 * index.week + 7 : 168 * index.week + 7 + 168 ] ], ) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index a037e4cc..e7471e2f 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -43,6 +43,8 @@ ) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, + timesteps, + WeekScenarioIndex, ) from andromede.thermal_heuristic.workflow import ResolutionStep @@ -66,15 +68,10 @@ def __init__( self.id_thermal_cluster_model = id_thermal_cluster_model self.database = self.get_database(data_dir, "components.yml", fast) - def get_main_resolution_step(self, week: int, scenario: int) -> ResolutionStep: + def get_main_resolution_step(self, index: WeekScenarioIndex) -> ResolutionStep: main_resolution_step = ResolutionStep( - timesteps=list( - range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, - ) - ), - scenarios=[scenario], + timesteps=timesteps(index, self.time_scenario_hour_parameter), + scenarios=[index.scenario], database=self.database, network=self.network, ) @@ -84,8 +81,7 @@ def get_main_resolution_step(self, week: int, scenario: int) -> ResolutionStep: def update_database_accurate( self, output: OutputValues, - week: int, - scenario: int, + index: WeekScenarioIndex, list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: @@ -99,23 +95,16 @@ def update_database_accurate( ) nb_on = output.component(cluster).var("nb_on").value[0] # type:ignore - for i, t in enumerate( - list( - range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, - ) - ) - ): + for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): self.database.edit_value( ComponentParameterIndex(cluster, "nb_units_min"), ceil(round(nb_on[i], 12)), # type:ignore t, - scenario, + index.scenario, ) def update_database_fast_before_heuristic( - self, output: OutputValues, week: int, scenario: int + self, output: OutputValues, index: WeekScenarioIndex ) -> None: for cluster in self.get_milp_heuristic_components(): pmax = self.database.get_value( @@ -131,26 +120,18 @@ def update_database_fast_before_heuristic( self.time_scenario_hour_parameter.scenario, ) - for i, t in enumerate( - list( - range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, - ) - ) - ): + for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): self.database.edit_value( ComponentParameterIndex(cluster, "n_guide"), ceil(round(nb_on_1[i] / pmax, 12)), # type: ignore t, - scenario, + index.scenario, ) def update_database_fast_after_heuristic( self, output: OutputValues, - week: int, - scenario: int, + index: WeekScenarioIndex, list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: @@ -161,12 +142,11 @@ def update_database_fast_after_heuristic( ) pdispo = [ self.database.get_value( - ComponentParameterIndex(cluster, "max_generating"), t, scenario - ) - for t in range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, + ComponentParameterIndex(cluster, "max_generating"), + t, + index.scenario, ) + for t in timesteps(index, self.time_scenario_hour_parameter) ] self.database.convert_to_time_scenario_series_data( @@ -184,23 +164,16 @@ def update_database_fast_after_heuristic( np.array(pdispo).reshape((self.time_scenario_hour_parameter.hour, 1)), ).reshape(self.time_scenario_hour_parameter.hour) - for i, t in enumerate( - list( - range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, - ) - ) - ): + for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): self.database.edit_value( ComponentParameterIndex(cluster, "min_generating"), min_gen[i], t, - scenario, + index.scenario, ) def get_resolution_step_heuristic( - self, week: int, scenario: int, id: str, model: Model + self, index: WeekScenarioIndex, id: str, model: Model ) -> ResolutionStep: cluster = create_component(model=model, id=id) @@ -208,13 +181,8 @@ def get_resolution_step_heuristic( network.add_component(cluster) resolution_step = ResolutionStep( - timesteps=list( - range( - week * self.time_scenario_hour_parameter.hour, - (week + 1) * self.time_scenario_hour_parameter.hour, - ) - ), - scenarios=[scenario], + timesteps=timesteps(index, self.time_scenario_hour_parameter), + scenarios=[index.scenario], database=self.database, network=network, ) diff --git a/src/andromede/thermal_heuristic/time_scenario_parameter.py b/src/andromede/thermal_heuristic/time_scenario_parameter.py index 4b925f7f..a33ec95f 100644 --- a/src/andromede/thermal_heuristic/time_scenario_parameter.py +++ b/src/andromede/thermal_heuristic/time_scenario_parameter.py @@ -18,3 +18,21 @@ class TimeScenarioHourParameter: week: int scenario: int hour: int + + +@dataclass +class WeekScenarioIndex: + week: int + scenario: int + + +def timesteps( + index: WeekScenarioIndex, + parameter: TimeScenarioHourParameter, +) -> list[int]: + return list( + range( + index.week * parameter.hour, + (index.week + 1) * parameter.hour, + ) + ) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 1e49745d..b869b189 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -25,6 +25,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, + WeekScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -39,8 +40,7 @@ def test_fast_heuristic(data_path: str) -> None: Solve the same problem as before with the heuristic fast of Antares """ number_hours = 168 - scenario = 0 - week = 0 + week_scenario_index = WeekScenarioIndex(0, 0) thermal_problem_builder = ThermalProblemBuilder( fast=True, @@ -66,8 +66,8 @@ def test_fast_heuristic(data_path: str) -> None: 12, ) ), - index=list(range(week * number_hours, (week + 1) * number_hours)), - columns=[scenario], + index=list(range(number_hours)), + columns=[week_scenario_index.scenario], ) thermal_problem_builder.database.add_data( @@ -77,8 +77,7 @@ def test_fast_heuristic(data_path: str) -> None: # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( id=cluster, - week=week, - scenario=scenario, + index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(cluster) ).model, @@ -87,7 +86,7 @@ def test_fast_heuristic(data_path: str) -> None: resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week, scenario, [cluster] + resolution_step_heuristic.output, week_scenario_index, [cluster] ) expected_output = np.loadtxt( @@ -95,5 +94,7 @@ def test_fast_heuristic(data_path: str) -> None: ) for t in range(number_hours): assert thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), t, scenario + ComponentParameterIndex(cluster, "min_generating"), + t, + week_scenario_index.scenario, ) == pytest.approx(expected_output[t]) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 5ecb1229..61651c50 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -33,6 +33,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, + WeekScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -47,7 +48,14 @@ def models() -> list[Model]: return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] -def test_milp_version(data_path: str, models: list[Model]) -> None: +@pytest.fixture +def week_scenario_index() -> WeekScenarioIndex: + return WeekScenarioIndex(0, 0) + + +def test_milp_version( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -85,8 +93,7 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: cluster = thermal_problem_builder.get_milp_heuristic_components()[0] main_resolution_step = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) main_resolution_step.solve() @@ -94,8 +101,7 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: expected_output = ExpectedOutput( mode="milp", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( @@ -105,7 +111,9 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version(data_path: str, models: list[Model]) -> None: +def test_lp_version( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW @@ -143,8 +151,7 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: cluster = thermal_problem_builder.get_milp_heuristic_components()[0] main_resolution_step = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) main_resolution_step.solve() @@ -152,8 +159,7 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: expected_output = ExpectedOutput( mode="lp", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( @@ -163,34 +169,36 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: +def test_accurate_heuristic( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ + number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) cluster = thermal_problem_builder.get_milp_heuristic_components()[0] # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( - resolution_step_1.output, 0, 0, None + resolution_step_1.output, week_scenario_index, None ) - for time_step in range(thermal_problem_builder.time_scenario_hour_parameter.hour): + for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 @@ -203,8 +211,7 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - week=0, - scenario=0, + week_scenario_index, id=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) @@ -212,10 +219,10 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, 0, 0, None + resolution_step_accurate_heuristic.output, week_scenario_index, None ) - for time_step in range(thermal_problem_builder.time_scenario_hour_parameter.hour): + for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 @@ -227,16 +234,14 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_2.solve() assert resolution_step_2.objective == 16805387 expected_output = ExpectedOutput( mode="accurate", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( @@ -246,7 +251,9 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: expected_output.check_output_values(resolution_step_2.output) -def test_fast_heuristic(data_path: str, models: list[Model]) -> None: +def test_fast_heuristic( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: """ Solve the same problem as before with the heuristic fast of Antares Model on 168 time steps with one thermal generation and one demand on a single node. @@ -286,26 +293,24 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, 0, 0 + resolution_step_1.output, week_scenario_index ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( id=cluster, - week=0, - scenario=0, + index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(cluster) ).model, ) resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, 0, 0, None + resolution_step_heuristic.output, week_scenario_index, None ) for time_step in range(number_hours): @@ -320,16 +325,14 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_2.solve() assert resolution_step_2.objective == pytest.approx(16850000) expected_output = ExpectedOutput( mode="fast", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=[cluster], output_idx=ExpectedOutputIndexes( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 838cc014..35149ca2 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -28,6 +28,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, + WeekScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -45,16 +46,21 @@ def data_path() -> str: return "data/thermal_heuristic_six_clusters" +@pytest.fixture +def week_scenario_index() -> WeekScenarioIndex: + return WeekScenarioIndex(0, 0) + + def test_accurate_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str + solver_parameters: pywraplp.MPSolverParameters, + data_path: str, + week_scenario_index: WeekScenarioIndex, ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ number_hours = 168 - scenario = 0 - week = 0 thermal_problem_builder = ThermalProblemBuilder( fast=False, @@ -79,8 +85,8 @@ def test_accurate_heuristic( ) ) ), - index=list(range(week * number_hours, (week + 1) * number_hours)), - columns=[scenario], + index=list(range(number_hours)), + columns=[week_scenario_index.scenario], ) thermal_problem_builder.database.add_data( cluster, "nb_units_min", TimeScenarioSeriesData(nb_on_1) @@ -89,8 +95,7 @@ def test_accurate_heuristic( # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - week=week, - scenario=scenario, + index=week_scenario_index, id=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) @@ -115,13 +120,11 @@ def test_accurate_heuristic( ] -def test_fast_heuristic(data_path: str) -> None: +def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) -> None: """ Solve the same problem as before with the heuristic fast of Antares """ number_hours = 168 - scenario = 0 - week = 0 thermal_problem_builder = ThermalProblemBuilder( fast=True, @@ -148,8 +151,8 @@ def test_fast_heuristic(data_path: str) -> None: 12, ) ), - index=list(range(week * number_hours, (week + 1) * number_hours)), - columns=[scenario], + index=list(range(number_hours)), + columns=[week_scenario_index.scenario], ) thermal_problem_builder.database.add_data( @@ -160,8 +163,7 @@ def test_fast_heuristic(data_path: str) -> None: resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( id=cluster, - week=week, - scenario=scenario, + index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(cluster) ).model, @@ -171,7 +173,7 @@ def test_fast_heuristic(data_path: str) -> None: resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week, scenario, [cluster] + resolution_step_heuristic.output, week_scenario_index, [cluster] ) expected_output = np.loadtxt( @@ -179,5 +181,7 @@ def test_fast_heuristic(data_path: str) -> None: ) for t in range(number_hours): assert thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), t, scenario + ComponentParameterIndex(cluster, "min_generating"), + t, + week_scenario_index.scenario, ) == pytest.approx(expected_output[t]) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index b5d445ef..cbbde00b 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -33,6 +33,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, + WeekScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -77,17 +78,16 @@ def test_milp_version( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.get_main_resolution_step( - week=week, - scenario=scenario, + week_scenario_index ) resolution_step.solve(solver_parameters) expected_output = ExpectedOutput( mode="milp", - week=week, - scenario=scenario, + index=week_scenario_index, dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, @@ -124,23 +124,22 @@ def test_accurate_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=week, - scenario=scenario, + week_scenario_index ) resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_accurate( - resolution_step_1.output, week, scenario, None + resolution_step_1.output, week_scenario_index, None ) for g in thermal_problem_builder.get_milp_heuristic_components(): # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - week=week, - scenario=scenario, + week_scenario_index, id=g, model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP @@ -150,20 +149,18 @@ def test_accurate_heuristic( resolution_step_accurate_heuristic.solve(solver_parameters) thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, week, scenario, [g] + resolution_step_accurate_heuristic.output, week_scenario_index, [g] ) # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=week, - scenario=scenario, + week_scenario_index ) resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="accurate", - week=week, - scenario=scenario, + index=week_scenario_index, dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, @@ -202,23 +199,22 @@ def test_fast_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=week, - scenario=scenario, + week_scenario_index ) resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, week, scenario + resolution_step_1.output, week_scenario_index ) for g in thermal_problem_builder.get_milp_heuristic_components(): # resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( id=g, - week=week, - scenario=scenario, + index=week_scenario_index, model=HeuristicFastModelBuilder( thermal_problem_builder.time_scenario_hour_parameter.hour, delta=thermal_problem_builder.compute_delta(g), @@ -228,20 +224,18 @@ def test_fast_heuristic( resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week, scenario, [g] + resolution_step_heuristic.output, week_scenario_index, [g] ) # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=week, - scenario=scenario, + week_scenario_index ) resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="fast", - week=week, - scenario=scenario, + index=week_scenario_index, dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=output_indexes, diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 093ebcae..948a8f56 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -34,6 +34,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, + WeekScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import ( BINDING_CONSTRAINT, @@ -57,7 +58,16 @@ def models() -> list[Model]: ] -def test_milp_version(data_path: str, models: list[Model]) -> None: +@pytest.fixture +def week_scenario_index() -> WeekScenarioIndex: + return WeekScenarioIndex(0, 0) + + +def test_milp_version( + data_path: str, + models: list[Model], + week_scenario_index: WeekScenarioIndex, +) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( fast=False, @@ -69,8 +79,7 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) main_resolution_step.solve() @@ -78,8 +87,7 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: expected_output = ExpectedOutput( mode="milp", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( @@ -89,7 +97,11 @@ def test_milp_version(data_path: str, models: list[Model]) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_lp_version(data_path: str, models: list[Model]) -> None: +def test_lp_version( + data_path: str, + models: list[Model], + week_scenario_index: WeekScenarioIndex, +) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( @@ -102,8 +114,7 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: ) main_resolution_step = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) main_resolution_step.solve() @@ -111,8 +122,7 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: expected_output = ExpectedOutput( mode="lp", - week=0, - scenario=0, + index=week_scenario_index, dir_path=data_path, list_cluster=thermal_problem_builder.get_milp_heuristic_components(), output_idx=ExpectedOutputIndexes( @@ -122,36 +132,38 @@ def test_lp_version(data_path: str, models: list[Model]) -> None: expected_output.check_output_values(main_resolution_step.output) -def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: +def test_accurate_heuristic( + data_path: str, + models: list[Model], + week_scenario_index: WeekScenarioIndex, +) -> None: """ Solve the same problem as before with the heuristic accurate of Antares """ + number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( - resolution_step_1.output, 0, 0, None + resolution_step_1.output, week_scenario_index, None ) for g in thermal_problem_builder.get_milp_heuristic_components(): - for time_step in range( - thermal_problem_builder.time_scenario_hour_parameter.hour - ): + for time_step in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) @@ -159,8 +171,7 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( - week=0, - scenario=0, + week_scenario_index, id=g, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) @@ -168,25 +179,26 @@ def test_accurate_heuristic(data_path: str, models: list[Model]) -> None: resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, 0, 0, [g] + resolution_step_accurate_heuristic.output, week_scenario_index, [g] ) - for time_step in range( - thermal_problem_builder.time_scenario_hour_parameter.hour - ): + for time_step in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) -def test_fast_heuristic(data_path: str, models: list[Model]) -> None: +def test_fast_heuristic( + data_path: str, + models: list[Model], + week_scenario_index: WeekScenarioIndex, +) -> None: """ """ number_hours = 168 @@ -197,18 +209,17 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, 0, 0 + resolution_step_1.output, week_scenario_index ) for g in thermal_problem_builder.get_milp_heuristic_components(): @@ -216,8 +227,7 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: resolution_step_heuristic = ( thermal_problem_builder.get_resolution_step_heuristic( id=g, - week=0, - scenario=0, + index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(g) ).model, @@ -225,7 +235,7 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: ) resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, 0, 0, [g] + resolution_step_heuristic.output, week_scenario_index, [g] ) for time_step in range(number_hours): @@ -239,7 +249,6 @@ def test_fast_heuristic(data_path: str, models: list[Model]) -> None: # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week=0, - scenario=0, + week_scenario_index ) resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) From d5f1535d1a421ca4ef7bfdba8049935c55392bc5 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 2 Aug 2024 18:01:56 +0200 Subject: [PATCH 66/93] Refactor solve --- src/andromede/thermal_heuristic/problem.py | 18 ++++++++++++++++-- ...l_heuristic_fast_min_down_not_respected.py | 2 -- .../test_thermal_heuristic_one_cluster.py | 8 -------- .../test_thermal_heuristic_six_clusters.py | 4 +--- .../test_thermal_heuristic_three_clusters.py | 19 ++++++------------- ..._thermal_heuristic_two_clusters_with_bc.py | 12 ++---------- 6 files changed, 25 insertions(+), 38 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index e7471e2f..a9be2c0e 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -13,6 +13,7 @@ from math import ceil from pathlib import Path from typing import List, Optional +import ortools.linear_solver.pywraplp as pywraplp import numpy as np import pandas as pd @@ -68,7 +69,12 @@ def __init__( self.id_thermal_cluster_model = id_thermal_cluster_model self.database = self.get_database(data_dir, "components.yml", fast) - def get_main_resolution_step(self, index: WeekScenarioIndex) -> ResolutionStep: + def get_main_resolution_step( + self, + index: WeekScenarioIndex, + solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), + expected_status: str = pywraplp.Solver.OPTIMAL, + ) -> ResolutionStep: main_resolution_step = ResolutionStep( timesteps=timesteps(index, self.time_scenario_hour_parameter), scenarios=[index.scenario], @@ -76,6 +82,8 @@ def get_main_resolution_step(self, index: WeekScenarioIndex) -> ResolutionStep: network=self.network, ) + main_resolution_step.solve(solver_parameters, expected_status) + return main_resolution_step def update_database_accurate( @@ -173,7 +181,12 @@ def update_database_fast_after_heuristic( ) def get_resolution_step_heuristic( - self, index: WeekScenarioIndex, id: str, model: Model + self, + index: WeekScenarioIndex, + id: str, + model: Model, + solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), + expected_status: str = pywraplp.Solver.OPTIMAL, ) -> ResolutionStep: cluster = create_component(model=model, id=id) @@ -187,6 +200,7 @@ def get_resolution_step_heuristic( network=network, ) + resolution_step.solve(solver_parameters, expected_status) return resolution_step def compute_delta( diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index b869b189..3f2811bc 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -83,8 +83,6 @@ def test_fast_heuristic(data_path: str) -> None: ).model, ) - resolution_step_heuristic.solve() - thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, [cluster] ) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 61651c50..8d481fb3 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -95,7 +95,6 @@ def test_milp_version( main_resolution_step = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - main_resolution_step.solve() assert main_resolution_step.objective == 16805387 @@ -153,7 +152,6 @@ def test_lp_version( main_resolution_step = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - main_resolution_step.solve() assert main_resolution_step.objective == pytest.approx(16802840.55) @@ -192,7 +190,6 @@ def test_accurate_heuristic( resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( @@ -216,7 +213,6 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) - resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, week_scenario_index, None @@ -236,7 +232,6 @@ def test_accurate_heuristic( resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_2.solve() assert resolution_step_2.objective == 16805387 expected_output = ExpectedOutput( @@ -295,7 +290,6 @@ def test_fast_heuristic( resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, week_scenario_index @@ -308,7 +302,6 @@ def test_fast_heuristic( number_hours, delta=thermal_problem_builder.compute_delta(cluster) ).model, ) - resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, None ) @@ -327,7 +320,6 @@ def test_fast_heuristic( resolution_step_2 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_2.solve() assert resolution_step_2.objective == pytest.approx(16850000) expected_output = ExpectedOutput( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 35149ca2..26c096d8 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -98,9 +98,9 @@ def test_accurate_heuristic( index=week_scenario_index, id=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, + solver_parameters=solver_parameters, ) ) - resolution_step_accurate_heuristic.solve(solver_parameters) nb_on_heuristic = np.transpose( np.ceil( @@ -170,8 +170,6 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) ) ) - resolution_step_heuristic.solve() - thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, [cluster] ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index cbbde00b..8a78b32a 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -80,11 +80,9 @@ def test_milp_version( for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): week_scenario_index = WeekScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, solver_parameters=solver_parameters ) - resolution_step.solve(solver_parameters) - expected_output = ExpectedOutput( mode="milp", index=week_scenario_index, @@ -127,9 +125,8 @@ def test_accurate_heuristic( week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, solver_parameters=solver_parameters ) - resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_accurate( resolution_step_1.output, week_scenario_index, None @@ -144,9 +141,9 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP ).model, + solver_parameters=solver_parameters, ) ) - resolution_step_accurate_heuristic.solve(solver_parameters) thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, week_scenario_index, [g] @@ -154,9 +151,8 @@ def test_accurate_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, solver_parameters=solver_parameters ) - resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="accurate", @@ -202,9 +198,8 @@ def test_fast_heuristic( week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, solver_parameters=solver_parameters ) - resolution_step_1.solve(solver_parameters) thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, week_scenario_index @@ -221,7 +216,6 @@ def test_fast_heuristic( ).model, ) ) - resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, [g] @@ -229,9 +223,8 @@ def test_fast_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, solver_parameters=solver_parameters ) - resolution_step_2.solve(solver_parameters) expected_output = ExpectedOutput( mode="fast", diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 948a8f56..90193b84 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -81,7 +81,6 @@ def test_milp_version( main_resolution_step = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - main_resolution_step.solve() assert main_resolution_step.objective == 16822864 @@ -116,7 +115,6 @@ def test_lp_version( main_resolution_step = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - main_resolution_step.solve() assert main_resolution_step.objective == pytest.approx(16802840.55) @@ -155,7 +153,6 @@ def test_accurate_heuristic( resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_1.solve() # Get number of on units and round it to integer thermal_problem_builder.update_database_accurate( @@ -176,7 +173,6 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) - resolution_step_accurate_heuristic.solve() thermal_problem_builder.update_database_accurate( resolution_step_accurate_heuristic.output, week_scenario_index, [g] @@ -189,9 +185,8 @@ def test_accurate_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, expected_status=pywraplp.Solver.INFEASIBLE ) - resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) def test_fast_heuristic( @@ -216,7 +211,6 @@ def test_fast_heuristic( resolution_step_1 = thermal_problem_builder.get_main_resolution_step( week_scenario_index ) - resolution_step_1.solve() thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, week_scenario_index @@ -233,7 +227,6 @@ def test_fast_heuristic( ).model, ) ) - resolution_step_heuristic.solve() thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, [g] ) @@ -249,6 +242,5 @@ def test_fast_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index + week_scenario_index, expected_status=pywraplp.Solver.INFEASIBLE ) - resolution_step_2.solve(expected_status=pywraplp.Solver.INFEASIBLE) From 296f5323c0493f5cfcb2e0c124c3c3fd8ffb0362 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 5 Aug 2024 10:48:26 +0200 Subject: [PATCH 67/93] Rename functions --- src/andromede/thermal_heuristic/problem.py | 32 ++++++------- src/andromede/thermal_heuristic/workflow.py | 27 +++++------ ...l_heuristic_fast_min_down_not_respected.py | 6 +-- .../test_thermal_heuristic_one_cluster.py | 28 +++++------ .../test_thermal_heuristic_six_clusters.py | 29 +++++------- .../test_thermal_heuristic_three_clusters.py | 46 +++++++++++-------- ..._thermal_heuristic_two_clusters_with_bc.py | 45 +++++++++--------- 7 files changed, 104 insertions(+), 109 deletions(-) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index a9be2c0e..d61e3c38 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -47,7 +47,7 @@ timesteps, WeekScenarioIndex, ) -from andromede.thermal_heuristic.workflow import ResolutionStep +from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters class ThermalProblemBuilder: @@ -69,11 +69,10 @@ def __init__( self.id_thermal_cluster_model = id_thermal_cluster_model self.database = self.get_database(data_dir, "components.yml", fast) - def get_main_resolution_step( + def main_resolution_step( self, index: WeekScenarioIndex, - solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), - expected_status: str = pywraplp.Solver.OPTIMAL, + solving_parameters: SolvingParameters = SolvingParameters(), ) -> ResolutionStep: main_resolution_step = ResolutionStep( timesteps=timesteps(index, self.time_scenario_hour_parameter), @@ -82,7 +81,7 @@ def get_main_resolution_step( network=self.network, ) - main_resolution_step.solve(solver_parameters, expected_status) + main_resolution_step.solve(solving_parameters) return main_resolution_step @@ -93,7 +92,7 @@ def update_database_accurate( list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: - list_cluster_id = self.get_milp_heuristic_components() + list_cluster_id = self.heuristic_components() for cluster in list_cluster_id: self.database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster, "nb_units_min"), @@ -114,7 +113,7 @@ def update_database_accurate( def update_database_fast_before_heuristic( self, output: OutputValues, index: WeekScenarioIndex ) -> None: - for cluster in self.get_milp_heuristic_components(): + for cluster in self.heuristic_components(): pmax = self.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) @@ -143,7 +142,7 @@ def update_database_fast_after_heuristic( list_cluster_id: Optional[list[str]], ) -> None: if list_cluster_id is None: - list_cluster_id = self.get_milp_heuristic_components() + list_cluster_id = self.heuristic_components() for cluster in list_cluster_id: pmin = self.database.get_value( ComponentParameterIndex(cluster, "p_min"), 0, 0 @@ -180,15 +179,14 @@ def update_database_fast_after_heuristic( index.scenario, ) - def get_resolution_step_heuristic( + def heuristic_resolution_step( self, index: WeekScenarioIndex, - id: str, + id_component: str, model: Model, - solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), - expected_status: str = pywraplp.Solver.OPTIMAL, + solving_parameters: SolvingParameters = SolvingParameters(), ) -> ResolutionStep: - cluster = create_component(model=model, id=id) + cluster = create_component(model=model, id=id_component) network = Network("test") network.add_component(cluster) @@ -200,7 +198,7 @@ def get_resolution_step_heuristic( network=network, ) - resolution_step.solve(solver_parameters, expected_status) + resolution_step.solve(solving_parameters) return resolution_step def compute_delta( @@ -294,12 +292,12 @@ def get_database( if fast: self.complete_database_for_fast_heuristic( database, - self.get_milp_heuristic_components(), + self.heuristic_components(), ) return database - def get_milp_heuristic_components(self) -> list[str]: + def heuristic_components(self) -> list[str]: return [ c.id for c in self.network.components @@ -307,7 +305,7 @@ def get_milp_heuristic_components(self) -> list[str]: ] def complete_database_with_cluster_parameters(self, database: DataBase) -> None: - for cluster_id in self.get_milp_heuristic_components(): + for cluster_id in self.heuristic_components(): if type(database.get_data(cluster_id, "max_generating")) is ConstantData: database.add_data( cluster_id, diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index cbfed4b6..9120abd2 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -20,6 +20,14 @@ ) from andromede.study import DataBase, Network +from dataclasses import dataclass + + +@dataclass +class SolvingParameters: + solver_parameters: pywraplp.MPSolverParameters = (pywraplp.MPSolverParameters(),) + expected_status: str = pywraplp.Solver.OPTIMAL + class ResolutionStep: def __init__( @@ -29,8 +37,6 @@ def __init__( database: DataBase, network: Network, ) -> None: - self.timesteps = timesteps - self.scenarios = scenarios problem = build_problem( network, @@ -44,22 +50,11 @@ def __init__( def solve( self, - solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters(), - expected_status: str = pywraplp.Solver.OPTIMAL, + solving_parameters: SolvingParameters, ) -> None: - status = self.problem.solver.Solve(solver_parameters) + self.status = self.problem.solver.Solve(solving_parameters.solver_parameters) self.output = OutputValues(self.problem) self.objective = self.problem.solver.Objective().Value() - assert status == expected_status - - -class ConnectionBetweenResolutionSteps: - def __init__(self) -> None: - pass - - -class Workflow: - def __init__(self) -> None: - pass + assert self.status == solving_parameters.expected_status diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 3f2811bc..f9cc9819 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -51,7 +51,7 @@ def test_fast_heuristic(data_path: str) -> None: time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + cluster = thermal_problem_builder.heuristic_components()[0] pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 @@ -75,8 +75,8 @@ def test_fast_heuristic(data_path: str) -> None: ) # Solve heuristic problem - resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( - id=cluster, + resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( + id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(cluster) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 8d481fb3..42ece971 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -90,9 +90,9 @@ def test_milp_version( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) - cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + cluster = thermal_problem_builder.heuristic_components()[0] - main_resolution_step = thermal_problem_builder.get_main_resolution_step( + main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -147,9 +147,9 @@ def test_lp_version( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) - cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + cluster = thermal_problem_builder.heuristic_components()[0] - main_resolution_step = thermal_problem_builder.get_main_resolution_step( + main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -184,10 +184,10 @@ def test_accurate_heuristic( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + cluster = thermal_problem_builder.heuristic_components()[0] # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -207,9 +207,9 @@ def test_accurate_heuristic( # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( + thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id=cluster, + id_component=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -229,7 +229,7 @@ def test_accurate_heuristic( ) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( + resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) assert resolution_step_2.objective == 16805387 @@ -284,10 +284,10 @@ def test_fast_heuristic( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) - cluster = thermal_problem_builder.get_milp_heuristic_components()[0] + cluster = thermal_problem_builder.heuristic_components()[0] # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -295,8 +295,8 @@ def test_fast_heuristic( resolution_step_1.output, week_scenario_index ) # Solve heuristic problem - resolution_step_heuristic = thermal_problem_builder.get_resolution_step_heuristic( - id=cluster, + resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( + id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, delta=thermal_problem_builder.compute_delta(cluster) @@ -317,7 +317,7 @@ def test_fast_heuristic( ) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( + resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) assert resolution_step_2.objective == pytest.approx(16850000) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 26c096d8..3e5d4130 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -29,6 +29,7 @@ ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, + SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -71,9 +72,7 @@ def test_accurate_heuristic( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - for j, cluster in enumerate( - thermal_problem_builder.get_milp_heuristic_components() - ): + for j, cluster in enumerate(thermal_problem_builder.heuristic_components()): nb_on_1 = pd.DataFrame( np.transpose( np.ceil( @@ -94,11 +93,11 @@ def test_accurate_heuristic( # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( + thermal_problem_builder.heuristic_resolution_step( index=week_scenario_index, - id=cluster, + id_component=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - solver_parameters=solver_parameters, + solving_parameters=SolvingParameters(solver_parameters), ) ) @@ -135,9 +134,7 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - for j, cluster in enumerate( - thermal_problem_builder.get_milp_heuristic_components() - ): + for j, cluster in enumerate(thermal_problem_builder.heuristic_components()): pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) @@ -160,14 +157,12 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) ) # Solve heuristic problem - resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( - id=cluster, - index=week_scenario_index, - model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(cluster) - ).model, - ) + resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( + id_component=cluster, + index=week_scenario_index, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(cluster) + ).model, ) thermal_problem_builder.update_database_fast_after_heuristic( diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 8a78b32a..9afe4388 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -34,6 +34,7 @@ ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, + SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -79,15 +80,16 @@ def test_milp_version( ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): week_scenario_index = WeekScenarioIndex(week, scenario) - resolution_step = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, solver_parameters=solver_parameters + resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), ) expected_output = ExpectedOutput( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.get_milp_heuristic_components(), + list_cluster=thermal_problem_builder.heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values(resolution_step.output) @@ -124,24 +126,25 @@ def test_accurate_heuristic( for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, solver_parameters=solver_parameters + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), ) thermal_problem_builder.update_database_accurate( resolution_step_1.output, week_scenario_index, None ) - for g in thermal_problem_builder.get_milp_heuristic_components(): + for g in thermal_problem_builder.heuristic_components(): # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( + thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id=g, + id_component=g, model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP ).model, - solver_parameters=solver_parameters, + solving_parameters=SolvingParameters(solver_parameters), ) ) @@ -150,15 +153,16 @@ def test_accurate_heuristic( ) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, solver_parameters=solver_parameters + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), ) expected_output = ExpectedOutput( mode="accurate", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.get_milp_heuristic_components(), + list_cluster=thermal_problem_builder.heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values(resolution_step_2.output) @@ -197,18 +201,19 @@ def test_fast_heuristic( for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): week_scenario_index = WeekScenarioIndex(week, scenario) # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, solver_parameters=solver_parameters + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), ) thermal_problem_builder.update_database_fast_before_heuristic( resolution_step_1.output, week_scenario_index ) - for g in thermal_problem_builder.get_milp_heuristic_components(): # + for g in thermal_problem_builder.heuristic_components(): # resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( - id=g, + thermal_problem_builder.heuristic_resolution_step( + id_component=g, index=week_scenario_index, model=HeuristicFastModelBuilder( thermal_problem_builder.time_scenario_hour_parameter.hour, @@ -222,15 +227,16 @@ def test_fast_heuristic( ) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, solver_parameters=solver_parameters + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), ) expected_output = ExpectedOutput( mode="fast", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.get_milp_heuristic_components(), + list_cluster=thermal_problem_builder.heuristic_components(), output_idx=output_indexes, ) expected_output.check_output_values( diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 90193b84..735102ac 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -35,6 +35,7 @@ ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, + SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import ( BINDING_CONSTRAINT, @@ -78,7 +79,7 @@ def test_milp_version( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) - main_resolution_step = thermal_problem_builder.get_main_resolution_step( + main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -88,7 +89,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.get_milp_heuristic_components(), + list_cluster=thermal_problem_builder.heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -112,7 +113,7 @@ def test_lp_version( time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), ) - main_resolution_step = thermal_problem_builder.get_main_resolution_step( + main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -122,7 +123,7 @@ def test_lp_version( mode="lp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.get_milp_heuristic_components(), + list_cluster=thermal_problem_builder.heuristic_components(), output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -150,7 +151,7 @@ def test_accurate_heuristic( ) # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -159,7 +160,7 @@ def test_accurate_heuristic( resolution_step_1.output, week_scenario_index, None ) - for g in thermal_problem_builder.get_milp_heuristic_components(): + for g in thermal_problem_builder.heuristic_components(): for time_step in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 @@ -167,9 +168,9 @@ def test_accurate_heuristic( # Solve heuristic problem resolution_step_accurate_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( + thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id=g, + id_component=g, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -184,8 +185,9 @@ def test_accurate_heuristic( ) == (2 if time_step != 12 and g == "G1" else (3 if g == "G1" else 0)) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, expected_status=pywraplp.Solver.INFEASIBLE + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + SolvingParameters(expected_status=pywraplp.Solver.INFEASIBLE), ) @@ -208,7 +210,7 @@ def test_fast_heuristic( ) # First optimization - resolution_step_1 = thermal_problem_builder.get_main_resolution_step( + resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) @@ -216,16 +218,14 @@ def test_fast_heuristic( resolution_step_1.output, week_scenario_index ) - for g in thermal_problem_builder.get_milp_heuristic_components(): + for g in thermal_problem_builder.heuristic_components(): # Solve heuristic problem - resolution_step_heuristic = ( - thermal_problem_builder.get_resolution_step_heuristic( - id=g, - index=week_scenario_index, - model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(g) - ).model, - ) + resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( + id_component=g, + index=week_scenario_index, + model=HeuristicFastModelBuilder( + number_hours, delta=thermal_problem_builder.compute_delta(g) + ).model, ) thermal_problem_builder.update_database_fast_after_heuristic( resolution_step_heuristic.output, week_scenario_index, [g] @@ -241,6 +241,7 @@ def test_fast_heuristic( ) # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.get_main_resolution_step( - week_scenario_index, expected_status=pywraplp.Solver.INFEASIBLE + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + SolvingParameters(expected_status=pywraplp.Solver.INFEASIBLE), ) From cb14787c5cbd2b8637cc8d49f04eaaa0b2e50545 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 5 Aug 2024 11:20:34 +0200 Subject: [PATCH 68/93] Refactor cluster parameters --- .../thermal_heuristic/cluster_parameter.py | 180 +++++++++++++++++ src/andromede/thermal_heuristic/problem.py | 190 ++---------------- ...l_heuristic_fast_min_down_not_respected.py | 4 +- .../test_thermal_heuristic_one_cluster.py | 4 +- .../test_thermal_heuristic_six_clusters.py | 5 +- .../test_thermal_heuristic_three_clusters.py | 4 +- ..._thermal_heuristic_two_clusters_with_bc.py | 4 +- 7 files changed, 213 insertions(+), 178 deletions(-) create mode 100644 src/andromede/thermal_heuristic/cluster_parameter.py diff --git a/src/andromede/thermal_heuristic/cluster_parameter.py b/src/andromede/thermal_heuristic/cluster_parameter.py new file mode 100644 index 00000000..73305216 --- /dev/null +++ b/src/andromede/thermal_heuristic/cluster_parameter.py @@ -0,0 +1,180 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + + +import pandas as pd + +from andromede.study import ( + ConstantData, + DataBase, + TimeIndex, + TimeScenarioSeriesData, + TimeSeriesData, +) +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.data import ( + get_max_failures, + get_max_unit, + get_max_unit_for_min_down_time, +) +from andromede.thermal_heuristic.time_scenario_parameter import ( + TimeScenarioHourParameter, +) + + +def compute_delta(thermal_cluster: str, database: DataBase) -> int: + delta = int( + max( + database.get_value( + ComponentParameterIndex(thermal_cluster, "d_min_up"), 0, 0 + ), + database.get_value( + ComponentParameterIndex(thermal_cluster, "d_min_down"), 0, 0 + ), + ) + ) + return delta + + +def complete_database_for_fast_heuristic( + database: DataBase, + list_cluster_id: list[str], + time_scenario_hour_parameter: TimeScenarioHourParameter, +) -> None: + for cluster_id in list_cluster_id: + delta = compute_delta(cluster_id, database) + n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() + database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) + database.add_data(cluster_id, "delta", ConstantData(delta)) + + for h in range(delta): + start_ajust = time_scenario_hour_parameter.hour - delta + h + database.add_data( + cluster_id, + f"alpha_ajust_{h}", + TimeSeriesData( + { + TimeIndex(t): ( + 1 + if (t % time_scenario_hour_parameter.hour >= start_ajust) + or (t % time_scenario_hour_parameter.hour < h) + else 0 + ) + for t in range( + time_scenario_hour_parameter.hour + * time_scenario_hour_parameter.week + ) + } + ), + ) + for k in range(time_scenario_hour_parameter.hour // delta): + start_k = k * delta + h + end_k = min(start_ajust, (k + 1) * delta + h) + database.add_data( + cluster_id, + f"alpha_{k}_{h}", + TimeSeriesData( + { + TimeIndex(t): ( + 1 + if (t % time_scenario_hour_parameter.hour >= start_k) + and (t % time_scenario_hour_parameter.hour < end_k) + else 0 + ) + for t in range( + time_scenario_hour_parameter.hour + * time_scenario_hour_parameter.week + ) + } + ), + ) + + +def complete_database_with_cluster_parameters( + database: DataBase, + list_cluster: list[str], + time_scenario_hour_parameter: TimeScenarioHourParameter, +) -> None: + for cluster_id in list_cluster: + if type(database.get_data(cluster_id, "max_generating")) is ConstantData: + database.add_data( + cluster_id, + "max_failure", + ConstantData(0), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + database.get_data(cluster_id, "nb_units_max"), + ) + + else: + ( + max_units, + max_failures, + nb_units_max_min_down_time, + ) = compute_cluster_parameters( + database, + cluster_id, + time_scenario_hour_parameter, + ) + database.add_data( + cluster_id, + "nb_units_max", + TimeScenarioSeriesData(max_units), + ) + database.add_data( + cluster_id, + "max_failure", + TimeScenarioSeriesData(max_failures), + ) + database.add_data( + cluster_id, + "nb_units_max_min_down_time", + TimeScenarioSeriesData(nb_units_max_min_down_time), + ) + + +def compute_cluster_parameters( + database: DataBase, + cluster_id: str, + time_scenario_hour_parameter: TimeScenarioHourParameter, +) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: + database.convert_to_time_scenario_series_data( + ComponentParameterIndex(cluster_id, "max_generating"), + timesteps=time_scenario_hour_parameter.hour * time_scenario_hour_parameter.week, + scenarios=time_scenario_hour_parameter.scenario, + ) + max_units = get_max_unit( + database.get_value(ComponentParameterIndex(cluster_id, "p_max"), 0, 0), + database.get_value(ComponentParameterIndex(cluster_id, "nb_units_max"), 0, 0), + database.get_data( + cluster_id, "max_generating" + ).time_scenario_series, # type:ignore + ) + max_failures = get_max_failures(max_units, time_scenario_hour_parameter.hour) + nb_units_max_min_down_time = get_max_unit_for_min_down_time( + int( + max( + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_up"), 0, 0 + ), + database.get_value( + ComponentParameterIndex(cluster_id, "d_min_down"), 0, 0 + ), + ) + ), + max_units, + time_scenario_hour_parameter.hour, + ) + + return max_units, max_failures, nb_units_max_min_down_time diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index d61e3c38..ccef78f7 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -13,10 +13,8 @@ from math import ceil from pathlib import Path from typing import List, Optional -import ortools.linear_solver.pywraplp as pywraplp import numpy as np -import pandas as pd from andromede.model import Model, PortType from andromede.model.library import Library, library @@ -25,9 +23,6 @@ ConstantData, DataBase, Network, - TimeIndex, - TimeScenarioSeriesData, - TimeSeriesData, create_component, ) from andromede.study.data import ComponentParameterIndex @@ -37,11 +32,6 @@ build_network, resolve_components_and_cnx, ) -from andromede.thermal_heuristic.data import ( - get_max_failures, - get_max_unit, - get_max_unit_for_min_down_time, -) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, timesteps, @@ -49,6 +39,11 @@ ) from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters +from andromede.thermal_heuristic.cluster_parameter import ( + complete_database_for_fast_heuristic, + complete_database_with_cluster_parameters, +) + class ThermalProblemBuilder: def __init__( @@ -65,9 +60,11 @@ def __init__( models=models, ) self.time_scenario_hour_parameter = time_scenario_hour_parameter - self.network = get_network(data_dir / "components.yml", lib) self.id_thermal_cluster_model = id_thermal_cluster_model - self.database = self.get_database(data_dir, "components.yml", fast) + + input_components = get_input_components(data_dir / "components.yml") + self.network = get_network(input_components, lib) + self.database = self.get_database(input_components, data_dir, fast) def main_resolution_step( self, @@ -201,98 +198,22 @@ def heuristic_resolution_step( resolution_step.solve(solving_parameters) return resolution_step - def compute_delta( - self, thermal_cluster: str, database: Optional[DataBase] = None - ) -> int: - if database is None: - database = self.database - delta = int( - max( - database.get_value( - ComponentParameterIndex(thermal_cluster, "d_min_up"), 0, 0 - ), - database.get_value( - ComponentParameterIndex(thermal_cluster, "d_min_down"), 0, 0 - ), - ) - ) - return delta - - def complete_database_for_fast_heuristic( - self, database: DataBase, list_cluster_id: list[str] - ) -> None: - for cluster_id in list_cluster_id: - delta = self.compute_delta(cluster_id, database) - n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() - database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) - database.add_data(cluster_id, "delta", ConstantData(delta)) - - for h in range(delta): - start_ajust = self.time_scenario_hour_parameter.hour - delta + h - database.add_data( - cluster_id, - f"alpha_ajust_{h}", - TimeSeriesData( - { - TimeIndex(t): ( - 1 - if ( - t % self.time_scenario_hour_parameter.hour - >= start_ajust - ) - or (t % self.time_scenario_hour_parameter.hour < h) - else 0 - ) - for t in range( - self.time_scenario_hour_parameter.hour - * self.time_scenario_hour_parameter.week - ) - } - ), - ) - for k in range(self.time_scenario_hour_parameter.hour // delta): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) - database.add_data( - cluster_id, - f"alpha_{k}_{h}", - TimeSeriesData( - { - TimeIndex(t): ( - 1 - if ( - t % self.time_scenario_hour_parameter.hour - >= start_k - ) - and ( - t % self.time_scenario_hour_parameter.hour - < end_k - ) - else 0 - ) - for t in range( - self.time_scenario_hour_parameter.hour - * self.time_scenario_hour_parameter.week - ) - } - ), - ) - def get_database( self, + components_file: InputComponents, data_dir: Path, - yml_file: str, fast: bool, ) -> DataBase: - components_file = get_input_components(data_dir / yml_file) + database = build_data_base(components_file, data_dir) - self.complete_database_with_cluster_parameters(database) + complete_database_with_cluster_parameters( + database, self.heuristic_components(), self.time_scenario_hour_parameter + ) if fast: - self.complete_database_for_fast_heuristic( - database, - self.heuristic_components(), + complete_database_for_fast_heuristic( + database, self.heuristic_components(), self.time_scenario_hour_parameter ) return database @@ -304,85 +225,8 @@ def heuristic_components(self) -> list[str]: if c.model.id == self.id_thermal_cluster_model ] - def complete_database_with_cluster_parameters(self, database: DataBase) -> None: - for cluster_id in self.heuristic_components(): - if type(database.get_data(cluster_id, "max_generating")) is ConstantData: - database.add_data( - cluster_id, - "max_failure", - ConstantData(0), - ) - database.add_data( - cluster_id, - "nb_units_max_min_down_time", - database.get_data(cluster_id, "nb_units_max"), - ) - - else: - ( - max_units, - max_failures, - nb_units_max_min_down_time, - ) = compute_cluster_parameters( - database, - cluster_id, - self.time_scenario_hour_parameter, - ) - database.add_data( - cluster_id, - "nb_units_max", - TimeScenarioSeriesData(max_units), - ) - database.add_data( - cluster_id, - "max_failure", - TimeScenarioSeriesData(max_failures), - ) - database.add_data( - cluster_id, - "nb_units_max_min_down_time", - TimeScenarioSeriesData(nb_units_max_min_down_time), - ) - - -def compute_cluster_parameters( - database: DataBase, - cluster_id: str, - time_scenario_hour_parameter: TimeScenarioHourParameter, -) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: - database.convert_to_time_scenario_series_data( - ComponentParameterIndex(cluster_id, "max_generating"), - timesteps=time_scenario_hour_parameter.hour * time_scenario_hour_parameter.week, - scenarios=time_scenario_hour_parameter.scenario, - ) - max_units = get_max_unit( - database.get_value(ComponentParameterIndex(cluster_id, "p_max"), 0, 0), - database.get_value(ComponentParameterIndex(cluster_id, "nb_units_max"), 0, 0), - database.get_data( - cluster_id, "max_generating" - ).time_scenario_series, # type:ignore - ) - max_failures = get_max_failures(max_units, time_scenario_hour_parameter.hour) - nb_units_max_min_down_time = get_max_unit_for_min_down_time( - int( - max( - database.get_value( - ComponentParameterIndex(cluster_id, "d_min_up"), 0, 0 - ), - database.get_value( - ComponentParameterIndex(cluster_id, "d_min_down"), 0, 0 - ), - ) - ), - max_units, - time_scenario_hour_parameter.hour, - ) - - return max_units, max_failures, nb_units_max_min_down_time - -def get_network(compo_file: Path, lib: Library) -> Network: - components_file = get_input_components(compo_file) +def get_network(components_file: InputComponents, lib: Library) -> Network: components_input = resolve_components_and_cnx(components_file, lib) network = build_network(components_input) return network diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index f9cc9819..7cd00b6d 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -29,6 +29,8 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.cluster_parameter import compute_delta + @pytest.fixture def data_path() -> str: @@ -79,7 +81,7 @@ def test_fast_heuristic(data_path: str) -> None: id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(cluster) + number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) ).model, ) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 42ece971..a245cdaa 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -37,6 +37,8 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.cluster_parameter import compute_delta + @pytest.fixture def data_path() -> str: @@ -299,7 +301,7 @@ def test_fast_heuristic( id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(cluster) + number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) ).model, ) thermal_problem_builder.update_database_fast_after_heuristic( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 3e5d4130..4e6b4f1a 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -33,6 +33,8 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.cluster_parameter import compute_delta + @pytest.fixture def solver_parameters() -> pywraplp.MPSolverParameters: @@ -161,7 +163,8 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(cluster) + number_hours, + delta=compute_delta(cluster, thermal_problem_builder.database), ).model, ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 9afe4388..bc115c03 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -38,6 +38,8 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +from andromede.thermal_heuristic.cluster_parameter import compute_delta + @pytest.fixture def solver_parameters() -> pywraplp.MPSolverParameters: @@ -217,7 +219,7 @@ def test_fast_heuristic( index=week_scenario_index, model=HeuristicFastModelBuilder( thermal_problem_builder.time_scenario_hour_parameter.hour, - delta=thermal_problem_builder.compute_delta(g), + delta=compute_delta(g, thermal_problem_builder.database), ).model, ) ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 735102ac..e9fbd010 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -42,6 +42,8 @@ THERMAL_CLUSTER_MODEL_MILP, ) +from andromede.thermal_heuristic.cluster_parameter import compute_delta + @pytest.fixture def data_path() -> str: @@ -224,7 +226,7 @@ def test_fast_heuristic( id_component=g, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=thermal_problem_builder.compute_delta(g) + number_hours, delta=compute_delta(g, thermal_problem_builder.database) ).model, ) thermal_problem_builder.update_database_fast_after_heuristic( From 1d2f622fa4ce8c7e64df80482daf855d18fffb40 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 5 Aug 2024 12:24:43 +0200 Subject: [PATCH 69/93] Correct error --- src/andromede/thermal_heuristic/workflow.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 9120abd2..ea1641de 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -25,7 +25,7 @@ @dataclass class SolvingParameters: - solver_parameters: pywraplp.MPSolverParameters = (pywraplp.MPSolverParameters(),) + solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters() expected_status: str = pywraplp.Solver.OPTIMAL From c2abe5a00e1917390d658dfa06fa60c431c79546 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 5 Aug 2024 12:44:26 +0200 Subject: [PATCH 70/93] Refactor update --- .../thermal_heuristic/cluster_parameter.py | 19 +++ src/andromede/thermal_heuristic/problem.py | 118 +++++------------- src/andromede/thermal_heuristic/workflow.py | 5 +- ...l_heuristic_fast_min_down_not_respected.py | 13 +- .../test_thermal_heuristic_one_cluster.py | 42 +++++-- .../test_thermal_heuristic_six_clusters.py | 15 ++- .../test_thermal_heuristic_three_clusters.py | 44 +++++-- ..._thermal_heuristic_two_clusters_with_bc.py | 44 +++++-- 8 files changed, 170 insertions(+), 130 deletions(-) diff --git a/src/andromede/thermal_heuristic/cluster_parameter.py b/src/andromede/thermal_heuristic/cluster_parameter.py index 73305216..5b7ff753 100644 --- a/src/andromede/thermal_heuristic/cluster_parameter.py +++ b/src/andromede/thermal_heuristic/cluster_parameter.py @@ -28,6 +28,8 @@ ) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, + WeekScenarioIndex, + timesteps, ) @@ -178,3 +180,20 @@ def compute_cluster_parameters( ) return max_units, max_failures, nb_units_max_min_down_time + + +def get_parameter( + database: DataBase, + name: str, + component: str, + index: WeekScenarioIndex, + time_scenario_hour_parameter: TimeScenarioHourParameter, +) -> list[float]: + return [ + database.get_value( + ComponentParameterIndex(component, name), + t, + index.scenario, + ) + for t in timesteps(index, time_scenario_hour_parameter) + ] diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index ccef78f7..326ea38b 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -12,19 +12,14 @@ from math import ceil from pathlib import Path -from typing import List, Optional +from typing import Callable, List, Optional import numpy as np from andromede.model import Model, PortType from andromede.model.library import Library, library from andromede.simulation import OutputValues -from andromede.study import ( - ConstantData, - DataBase, - Network, - create_component, -) +from andromede.study import ConstantData, DataBase, Network, create_component from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents, parse_yaml_components from andromede.study.resolve_components import ( @@ -32,18 +27,18 @@ build_network, resolve_components_and_cnx, ) +from andromede.thermal_heuristic.cluster_parameter import ( + complete_database_for_fast_heuristic, + complete_database_with_cluster_parameters, + get_parameter, +) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, - timesteps, WeekScenarioIndex, + timesteps, ) from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters -from andromede.thermal_heuristic.cluster_parameter import ( - complete_database_for_fast_heuristic, - complete_database_with_cluster_parameters, -) - class ThermalProblemBuilder: def __init__( @@ -82,96 +77,48 @@ def main_resolution_step( return main_resolution_step - def update_database_accurate( + def update_database_heuristic( self, output: OutputValues, index: WeekScenarioIndex, list_cluster_id: Optional[list[str]], + param_to_update: str, + var_to_read: str, + fn_to_apply: Callable, + param_needed_to_compute: Optional[list[str]] = None, ) -> None: if list_cluster_id is None: list_cluster_id = self.heuristic_components() for cluster in list_cluster_id: + if ( + ComponentParameterIndex(cluster, param_to_update) + not in self.database.__dict__.keys() + ): + self.database.add_data(cluster, param_to_update, ConstantData(0)) self.database.convert_to_time_scenario_series_data( - ComponentParameterIndex(cluster, "nb_units_min"), - self.time_scenario_hour_parameter.hour - * self.time_scenario_hour_parameter.week, - self.time_scenario_hour_parameter.scenario, - ) - nb_on = output.component(cluster).var("nb_on").value[0] # type:ignore - - for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): - self.database.edit_value( - ComponentParameterIndex(cluster, "nb_units_min"), - ceil(round(nb_on[i], 12)), # type:ignore - t, - index.scenario, - ) - - def update_database_fast_before_heuristic( - self, output: OutputValues, index: WeekScenarioIndex - ) -> None: - for cluster in self.heuristic_components(): - pmax = self.database.get_value( - ComponentParameterIndex(cluster, "p_max"), 0, 0 - ) - nb_on_1 = output.component(cluster).var("generation").value[0] # type: ignore - - self.database.add_data(cluster, "n_guide", ConstantData(0)) - self.database.convert_to_time_scenario_series_data( - ComponentParameterIndex(cluster, "n_guide"), + ComponentParameterIndex(cluster, param_to_update), self.time_scenario_hour_parameter.hour * self.time_scenario_hour_parameter.week, self.time_scenario_hour_parameter.scenario, ) - for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): - self.database.edit_value( - ComponentParameterIndex(cluster, "n_guide"), - ceil(round(nb_on_1[i] / pmax, 12)), # type: ignore - t, - index.scenario, - ) - - def update_database_fast_after_heuristic( - self, - output: OutputValues, - index: WeekScenarioIndex, - list_cluster_id: Optional[list[str]], - ) -> None: - if list_cluster_id is None: - list_cluster_id = self.heuristic_components() - for cluster in list_cluster_id: - pmin = self.database.get_value( - ComponentParameterIndex(cluster, "p_min"), 0, 0 - ) - pdispo = [ - self.database.get_value( - ComponentParameterIndex(cluster, "max_generating"), - t, - index.scenario, - ) - for t in timesteps(index, self.time_scenario_hour_parameter) - ] - - self.database.convert_to_time_scenario_series_data( - ComponentParameterIndex(cluster, "min_generating"), - self.time_scenario_hour_parameter.hour - * self.time_scenario_hour_parameter.week, - self.time_scenario_hour_parameter.scenario, - ) + sol = output.component(cluster).var(var_to_read).value[0] # type:ignore - min_gen = np.minimum( - np.array( - output.component(cluster).var("n").value[0] # type:ignore - ).reshape((self.time_scenario_hour_parameter.hour, 1)) - * pmin, - np.array(pdispo).reshape((self.time_scenario_hour_parameter.hour, 1)), - ).reshape(self.time_scenario_hour_parameter.hour) + param = {} + if param_needed_to_compute is not None: + for p in param_needed_to_compute: + param[p] = get_parameter( + self.database, + p, + cluster, + index, + self.time_scenario_hour_parameter, + ) for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): self.database.edit_value( - ComponentParameterIndex(cluster, "min_generating"), - min_gen[i], + ComponentParameterIndex(cluster, param_to_update), + fn_to_apply(sol[i], *[p[i] for p in param.values()]), # type:ignore t, index.scenario, ) @@ -204,7 +151,6 @@ def get_database( data_dir: Path, fast: bool, ) -> DataBase: - database = build_data_base(components_file, data_dir) complete_database_with_cluster_parameters( diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index ea1641de..509e322c 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -10,6 +10,8 @@ # # This file is part of the Antares project. +from dataclasses import dataclass + import ortools.linear_solver.pywraplp as pywraplp from andromede.simulation import ( @@ -20,8 +22,6 @@ ) from andromede.study import DataBase, Network -from dataclasses import dataclass - @dataclass class SolvingParameters: @@ -37,7 +37,6 @@ def __init__( database: DataBase, network: Network, ) -> None: - problem = build_problem( network, database, diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 7cd00b6d..eee3665f 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -18,6 +18,7 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.cluster_parameter import compute_delta from andromede.thermal_heuristic.model import ( FastModelBuilder, HeuristicFastModelBuilder, @@ -29,8 +30,6 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.thermal_heuristic.cluster_parameter import compute_delta - @pytest.fixture def data_path() -> str: @@ -85,8 +84,14 @@ def test_fast_heuristic(data_path: str) -> None: ).model, ) - thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week_scenario_index, [cluster] + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + [cluster], + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], ) expected_output = np.loadtxt( diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index a245cdaa..4c385970 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -10,6 +10,7 @@ # # This file is part of the Antares project. +from math import ceil from pathlib import Path import pytest @@ -22,6 +23,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.cluster_parameter import compute_delta from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -37,8 +39,6 @@ ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.thermal_heuristic.cluster_parameter import compute_delta - @pytest.fixture def data_path() -> str: @@ -194,8 +194,13 @@ def test_accurate_heuristic( ) # Get number of on units and round it to integer - thermal_problem_builder.update_database_accurate( - resolution_step_1.output, week_scenario_index, None + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) for time_step in range(number_hours): assert ( @@ -216,8 +221,13 @@ def test_accurate_heuristic( ) ) - thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, week_scenario_index, None + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) for time_step in range(number_hours): @@ -293,8 +303,14 @@ def test_fast_heuristic( week_scenario_index ) - thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, week_scenario_index + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + list_cluster_id=None, + var_to_read="generation", + param_to_update="n_guide", + fn_to_apply=lambda x, y: ceil(round(x / y, 12)), + param_needed_to_compute=["p_max"], ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( @@ -304,8 +320,14 @@ def test_fast_heuristic( number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) ).model, ) - thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week_scenario_index, None + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + None, + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], ) for time_step in range(number_hours): diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 4e6b4f1a..c3ecc367 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -19,6 +19,7 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.cluster_parameter import compute_delta from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -26,15 +27,13 @@ HeuristicFastModelBuilder, ) from andromede.thermal_heuristic.problem import ( + SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, - SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.thermal_heuristic.cluster_parameter import compute_delta - @pytest.fixture def solver_parameters() -> pywraplp.MPSolverParameters: @@ -168,8 +167,14 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) ).model, ) - thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week_scenario_index, [cluster] + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + [cluster], + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], ) expected_output = np.loadtxt( diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index bc115c03..d0f706cf 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -10,6 +10,7 @@ # # This file is part of the Antares project. +from math import ceil from pathlib import Path import ortools.linear_solver.pywraplp as pywraplp @@ -22,6 +23,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.thermal_heuristic.cluster_parameter import compute_delta from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -31,15 +33,13 @@ Model, ) from andromede.thermal_heuristic.problem import ( + SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, - SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -from andromede.thermal_heuristic.cluster_parameter import compute_delta - @pytest.fixture def solver_parameters() -> pywraplp.MPSolverParameters: @@ -133,8 +133,13 @@ def test_accurate_heuristic( solving_parameters=SolvingParameters(solver_parameters), ) - thermal_problem_builder.update_database_accurate( - resolution_step_1.output, week_scenario_index, None + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) for g in thermal_problem_builder.heuristic_components(): @@ -150,8 +155,13 @@ def test_accurate_heuristic( ) ) - thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, week_scenario_index, [g] + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + [g], + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) # Second optimization with lower bound modified @@ -208,8 +218,14 @@ def test_fast_heuristic( solving_parameters=SolvingParameters(solver_parameters), ) - thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, week_scenario_index + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + list_cluster_id=None, + var_to_read="generation", + param_to_update="n_guide", + fn_to_apply=lambda x, y: ceil(round(x / y, 12)), + param_needed_to_compute=["p_max"], ) for g in thermal_problem_builder.heuristic_components(): # @@ -224,8 +240,14 @@ def test_fast_heuristic( ) ) - thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week_scenario_index, [g] + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + [g], + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], ) # Second optimization with lower bound modified diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index e9fbd010..2e9a8d09 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -10,6 +10,7 @@ # # This file is part of the Antares project. +from math import ceil from pathlib import Path import ortools.linear_solver.pywraplp as pywraplp @@ -23,6 +24,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.cluster_parameter import compute_delta from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -32,18 +34,16 @@ Model, ) from andromede.thermal_heuristic.problem import ( + SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, WeekScenarioIndex, - SolvingParameters, ) from tests.functional.libs.lib_thermal_heuristic import ( BINDING_CONSTRAINT, THERMAL_CLUSTER_MODEL_MILP, ) -from andromede.thermal_heuristic.cluster_parameter import compute_delta - @pytest.fixture def data_path() -> str: @@ -158,8 +158,13 @@ def test_accurate_heuristic( ) # Get number of on units and round it to integer - thermal_problem_builder.update_database_accurate( - resolution_step_1.output, week_scenario_index, None + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) for g in thermal_problem_builder.heuristic_components(): @@ -177,8 +182,13 @@ def test_accurate_heuristic( ) ) - thermal_problem_builder.update_database_accurate( - resolution_step_accurate_heuristic.output, week_scenario_index, [g] + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + [g], + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), ) for time_step in range(number_hours): @@ -216,8 +226,14 @@ def test_fast_heuristic( week_scenario_index ) - thermal_problem_builder.update_database_fast_before_heuristic( - resolution_step_1.output, week_scenario_index + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + list_cluster_id=None, + var_to_read="generation", + param_to_update="n_guide", + fn_to_apply=lambda x, y: ceil(round(x / y, 12)), + param_needed_to_compute=["p_max"], ) for g in thermal_problem_builder.heuristic_components(): @@ -229,8 +245,14 @@ def test_fast_heuristic( number_hours, delta=compute_delta(g, thermal_problem_builder.database) ).model, ) - thermal_problem_builder.update_database_fast_after_heuristic( - resolution_step_heuristic.output, week_scenario_index, [g] + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + [g], + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], ) for time_step in range(number_hours): From 9a4ddbeae860b7c31b0bec10f40de8b8490eca19 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 7 Aug 2024 18:02:35 +0200 Subject: [PATCH 71/93] New test --- src/andromede/thermal_heuristic/data.py | 5 +- .../accurate/0/details-hourly.txt | 175 ++++++++++++ .../accurate/0/values-hourly.txt | 175 ++++++++++++ .../components.yml | 151 ++++++++++ .../demand-ts.txt | 168 +++++++++++ .../fast/0/details-hourly.txt | 175 ++++++++++++ .../fast/0/values-hourly.txt | 175 ++++++++++++ .../milp/0/details-hourly.txt | 175 ++++++++++++ .../milp/0/values-hourly.txt | 175 ++++++++++++ ...thermal_heuristic_two_clusters_low_load.py | 269 ++++++++++++++++++ 10 files changed, 1642 insertions(+), 1 deletion(-) create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/components.yml create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/demand-ts.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/values-hourly.txt create mode 100644 tests/functional/test_thermal_heuristic_two_clusters_low_load.py diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 75f3ba04..e9f38dd8 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -122,7 +122,10 @@ def check_output_cluster( cluster_id: str, ) -> None: assert output.component(cluster_id).var("generation").value == [ - [pytest.approx(float(line[idx_generation])) for line in self.output_cluster] + [ + pytest.approx(float(line[idx_generation]), abs=1e-6) + for line in self.output_cluster + ] ] if self.mode != "fast": assert output.component(cluster_id).var("nb_on").value == [ diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/details-hourly.txt new file mode 100644 index 00000000..58edbfdf --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 6 1 168 + +Area hourly Th1 Th3 Th1 Th3 Th1 Th3 + MWh MWh NP Cost - Euro NP Cost - Euro NODU NODU + index day month hour + 1 01 FEB 00:00 21600 0 360 0 36 0 + 2 01 FEB 01:00 21600 0 360 0 36 0 + 3 01 FEB 02:00 21600 0 360 0 36 0 + 4 01 FEB 03:00 22127 0 360 0 36 0 + 5 01 FEB 04:00 23903 0 360 0 36 0 + 6 01 FEB 05:00 23800 0 360 0 36 0 + 7 01 FEB 06:00 29152 0 360 0 36 0 + 8 01 FEB 07:00 28840 0 360 0 36 0 + 9 01 FEB 08:00 30246 0 360 0 36 0 + 10 01 FEB 09:00 29912 0 360 0 36 0 + 11 01 FEB 10:00 27437 0 360 0 36 0 + 12 01 FEB 11:00 31543 0 360 0 36 0 + 13 01 FEB 12:00 32400 6277 360 160 36 8 + 14 01 FEB 13:00 32400 4285 360 60 36 6 + 15 01 FEB 14:00 31115 0 350 0 35 0 + 16 01 FEB 15:00 22643 0 260 0 26 0 + 17 01 FEB 16:00 17874 0 220 0 22 0 + 18 01 FEB 17:00 18589 0 220 0 22 0 + 19 01 FEB 18:00 19041 0 220 0 22 0 + 20 01 FEB 19:00 16725 0 190 0 19 0 + 21 01 FEB 20:00 12498 0 140 0 14 0 + 22 01 FEB 21:00 11493 0 130 0 13 0 + 23 01 FEB 22:00 11256 0 130 0 13 0 + 24 01 FEB 23:00 6724 0 80 0 8 0 + 25 02 FEB 00:00 600 0 10 0 1 0 + 26 02 FEB 01:00 600 0 10 0 1 0 + 27 02 FEB 02:00 600 0 10 0 1 0 + 28 02 FEB 03:00 600 0 10 0 1 0 + 29 02 FEB 04:00 600 0 10 0 1 0 + 30 02 FEB 05:00 600 0 10 0 1 0 + 31 02 FEB 06:00 721 0 10 0 1 0 + 32 02 FEB 07:00 1200 0 25020 0 2 0 + 33 02 FEB 08:00 1517 0 20 0 2 0 + 34 02 FEB 09:00 2673 0 25030 0 3 0 + 35 02 FEB 10:00 3280 0 25040 0 4 0 + 36 02 FEB 11:00 8042 0 125090 0 9 0 + 37 02 FEB 12:00 13147 0 150150 0 15 1 + 38 02 FEB 13:00 12872 0 150 0 15 0 + 39 02 FEB 14:00 9425 0 150 0 15 0 + 40 02 FEB 15:00 9000 0 150 0 15 0 + 41 02 FEB 16:00 9000 0 150 0 15 0 + 42 02 FEB 17:00 9800 0 150 0 15 0 + 43 02 FEB 18:00 11457 0 150 0 15 0 + 44 02 FEB 19:00 11380 0 150 0 15 0 + 45 02 FEB 20:00 12093 0 150 0 15 0 + 46 02 FEB 21:00 12033 0 150 0 15 0 + 47 02 FEB 22:00 14753 0 50170 0 17 0 + 48 02 FEB 23:00 11061 0 170 0 17 0 + 49 03 FEB 00:00 11667 0 170 0 17 0 + 50 03 FEB 01:00 12827 0 170 0 17 0 + 51 03 FEB 02:00 10929 0 170 0 17 0 + 52 03 FEB 03:00 10209 0 170 0 17 0 + 53 03 FEB 04:00 10200 0 170 0 17 0 + 54 03 FEB 05:00 12172 0 170 0 17 0 + 55 03 FEB 06:00 17738 0 75200 0 20 0 + 56 03 FEB 07:00 19634 0 50220 0 22 1 + 57 03 FEB 08:00 19800 37 220 20 22 1 + 58 03 FEB 09:00 17800 0 220 0 22 0 + 59 03 FEB 10:00 13403 0 220 0 22 0 + 60 03 FEB 11:00 16393 0 220 0 22 0 + 61 03 FEB 12:00 19334 0 220 0 22 0 + 62 03 FEB 13:00 17565 0 220 0 22 0 + 63 03 FEB 14:00 14124 0 220 0 22 0 + 64 03 FEB 15:00 14137 0 220 0 22 0 + 65 03 FEB 16:00 13316 0 220 0 22 0 + 66 03 FEB 17:00 16819 0 220 0 22 0 + 67 03 FEB 18:00 19358 0 220 0 22 0 + 68 03 FEB 19:00 15619 0 180 0 18 0 + 69 03 FEB 20:00 9638 0 110 0 11 0 + 70 03 FEB 21:00 5564 0 70 0 7 0 + 71 03 FEB 22:00 5242 0 60 0 6 0 + 72 03 FEB 23:00 1687 0 20 0 2 0 + 73 04 FEB 00:00 1200 0 20 0 2 0 + 74 04 FEB 01:00 600 0 10 0 1 0 + 75 04 FEB 02:00 600 0 10 0 1 0 + 76 04 FEB 03:00 600 0 10 0 1 0 + 77 04 FEB 04:00 600 0 10 0 1 0 + 78 04 FEB 05:00 1743 0 25020 0 2 0 + 79 04 FEB 06:00 9673 0 225110 0 11 0 + 80 04 FEB 07:00 13595 0 125160 0 16 0 + 81 04 FEB 08:00 13627 0 160 0 16 0 + 82 04 FEB 09:00 13017 0 160 0 16 0 + 83 04 FEB 10:00 11365 0 160 0 16 0 + 84 04 FEB 11:00 16806 0 75190 0 19 0 + 85 04 FEB 12:00 18000 3925 25200 100 20 5 + 86 04 FEB 13:00 18000 2016 200 30 20 3 + 87 04 FEB 14:00 16679 0 200 0 20 0 + 88 04 FEB 15:00 14606 0 200 0 20 0 + 89 04 FEB 16:00 13176 0 200 0 20 0 + 90 04 FEB 17:00 15619 0 200 0 20 0 + 91 04 FEB 18:00 17136 0 200 0 20 0 + 92 04 FEB 19:00 14818 0 170 0 17 0 + 93 04 FEB 20:00 11174 0 130 0 13 0 + 94 04 FEB 21:00 8535 0 100 0 10 0 + 95 04 FEB 22:00 7899 0 90 0 9 0 + 96 04 FEB 23:00 4224 0 50 0 5 0 + 97 05 FEB 00:00 2209 0 30 0 3 0 + 98 05 FEB 01:00 1200 0 20 0 2 0 + 99 05 FEB 02:00 1200 0 20 0 2 0 + 100 05 FEB 03:00 1200 0 20 0 2 0 + 101 05 FEB 04:00 1200 0 20 0 2 0 + 102 05 FEB 05:00 1200 0 20 0 2 0 + 103 05 FEB 06:00 7893 0 175090 0 9 0 + 104 05 FEB 07:00 13074 0 150150 0 15 0 + 105 05 FEB 08:00 13826 0 25160 0 16 0 + 106 05 FEB 09:00 14467 0 25170 0 17 0 + 107 05 FEB 10:00 12450 0 170 0 17 0 + 108 05 FEB 11:00 21118 0 175240 0 24 0 + 109 05 FEB 12:00 26935 0 150300 0 30 0 + 110 05 FEB 13:00 26345 0 300 0 30 0 + 111 05 FEB 14:00 24368 0 300 0 30 0 + 112 05 FEB 15:00 22581 0 300 0 30 0 + 113 05 FEB 16:00 24429 0 300 0 30 0 + 114 05 FEB 17:00 28800 2331 50320 60 32 3 + 115 05 FEB 18:00 28800 2614 320 50 32 4 + 116 05 FEB 19:00 28160 0 320 0 32 0 + 117 05 FEB 20:00 24430 0 280 0 28 0 + 118 05 FEB 21:00 22302 0 270 0 27 0 + 119 05 FEB 22:00 23479 0 270 0 27 0 + 120 05 FEB 23:00 20638 0 230 0 23 0 + 121 06 FEB 00:00 11278 0 160 0 16 0 + 122 06 FEB 01:00 9600 0 160 0 16 0 + 123 06 FEB 02:00 9600 0 160 0 16 0 + 124 06 FEB 03:00 9600 0 160 0 16 0 + 125 06 FEB 04:00 9600 0 160 0 16 0 + 126 06 FEB 05:00 12925 0 160 0 16 0 + 127 06 FEB 06:00 21222 0 200240 0 24 0 + 128 06 FEB 07:00 28128 0 200320 0 32 0 + 129 06 FEB 08:00 29724 0 50340 0 34 0 + 130 06 FEB 09:00 29975 0 340 0 34 0 + 131 06 FEB 10:00 24316 0 340 0 34 0 + 132 06 FEB 11:00 27662 0 340 0 34 0 + 133 06 FEB 12:00 32183 0 50360 0 36 0 + 134 06 FEB 13:00 30524 0 360 0 36 0 + 135 06 FEB 14:00 30265 0 360 0 36 0 + 136 06 FEB 15:00 31729 0 360 0 36 0 + 137 06 FEB 16:00 35121 0 100400 0 40 0 + 138 06 FEB 17:00 40762 0 150460 0 46 0 + 139 06 FEB 18:00 44185 0 100500 0 50 0 + 140 06 FEB 19:00 45000 67 500 20 50 1 + 141 06 FEB 20:00 41891 0 500 0 50 0 + 142 06 FEB 21:00 41048 0 500 0 50 0 + 143 06 FEB 22:00 41509 0 500 0 50 0 + 144 06 FEB 23:00 39384 0 500 0 50 0 + 145 07 FEB 00:00 34533 0 500 0 50 0 + 146 07 FEB 01:00 34661 0 500 0 50 0 + 147 07 FEB 02:00 33049 0 500 0 50 0 + 148 07 FEB 03:00 31777 0 500 0 50 0 + 149 07 FEB 04:00 31616 0 500 0 50 0 + 150 07 FEB 05:00 31693 0 500 0 50 0 + 151 07 FEB 06:00 38073 0 500 0 50 0 + 152 07 FEB 07:00 39023 0 500 0 50 0 + 153 07 FEB 08:00 38405 0 500 0 50 0 + 154 07 FEB 09:00 36189 0 500 0 50 0 + 155 07 FEB 10:00 30393 0 500 0 50 0 + 156 07 FEB 11:00 35535 0 500 0 50 0 + 157 07 FEB 12:00 42843 0 500 0 50 0 + 158 07 FEB 13:00 43891 0 500 0 50 0 + 159 07 FEB 14:00 42826 0 500 0 50 0 + 160 07 FEB 15:00 43974 0 500 0 50 0 + 161 07 FEB 16:00 45000 1937 500 40 50 2 + 162 07 FEB 17:00 45000 5358 500 100 50 6 + 163 07 FEB 18:00 45000 5539 500 60 50 6 + 164 07 FEB 19:00 45000 3045 500 40 50 4 + 165 07 FEB 20:00 42494 0 480 0 48 0 + 166 07 FEB 21:00 38634 0 440 0 44 0 + 167 07 FEB 22:00 39132 0 440 0 44 0 + 168 07 FEB 23:00 36502 0 410 0 41 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/values-hourly.txt new file mode 100644 index 00000000..50107ccf --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/accurate/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 8 1 168 + +Area hourly OV. COST OP. COST MRG. PRICE LOAD NUCLEAR GAS UNSP. ENRG SPIL. ENRG + Euro Euro Euro MWh MWh MWh MWh MWh + index day month hour + 1 01 FEB 00:00 218171 216360 -1.00 19789 21600 0 0 1811 + 2 01 FEB 01:00 217523 216360 -1.00 20437 21600 0 0 1163 + 3 01 FEB 02:00 217863 216360 -1.00 20097 21600 0 0 1503 + 4 01 FEB 03:00 221630 221630 10.00 22127 22127 0 0 0 + 5 01 FEB 04:00 239390 239390 10.00 23903 23903 0 0 0 + 6 01 FEB 05:00 238360 238360 10.00 23800 23800 0 0 0 + 7 01 FEB 06:00 291880 291880 10.00 29152 29152 0 0 0 + 8 01 FEB 07:00 288760 288760 10.00 28840 28840 0 0 0 + 9 01 FEB 08:00 302820 302820 10.00 30246 30246 0 0 0 + 10 01 FEB 09:00 299480 299480 10.00 29912 29912 0 0 0 + 11 01 FEB 10:00 274730 274730 10.00 27437 27437 0 0 0 + 12 01 FEB 11:00 315790 315790 10.00 31543 31543 0 0 0 + 13 01 FEB 12:00 450060 450060 20.00 38677 32400 6277 0 0 + 14 01 FEB 13:00 410120 410120 20.00 36685 32400 4285 0 0 + 15 01 FEB 14:00 311500 311500 10.00 31115 31115 0 0 0 + 16 01 FEB 15:00 226690 226690 10.00 22643 22643 0 0 0 + 17 01 FEB 16:00 178960 178960 10.00 17874 17874 0 0 0 + 18 01 FEB 17:00 186110 186110 10.00 18589 18589 0 0 0 + 19 01 FEB 18:00 190630 190630 10.00 19041 19041 0 0 0 + 20 01 FEB 19:00 167440 167440 10.00 16725 16725 0 0 0 + 21 01 FEB 20:00 125120 125120 10.00 12498 12498 0 0 0 + 22 01 FEB 21:00 115060 115060 10.00 11493 11493 0 0 0 + 23 01 FEB 22:00 112690 112690 10.00 11256 11256 0 0 0 + 24 01 FEB 23:00 67320 67320 10.00 6724 6724 0 0 0 + 25 02 FEB 00:00 6301 6010 -1.00 309 600 0 0 291 + 26 02 FEB 01:00 6483 6010 -1.00 127 600 0 0 473 + 27 02 FEB 02:00 6608 6010 -1.00 2 600 0 0 598 + 28 02 FEB 03:00 6516 6010 -1.00 94 600 0 0 506 + 29 02 FEB 04:00 6149 6010 -1.00 461 600 0 0 139 + 30 02 FEB 05:00 6093 6010 -1.00 517 600 0 0 83 + 31 02 FEB 06:00 7220 7220 10.00 721 721 0 0 0 + 32 02 FEB 07:00 37239 37020 -1.00 981 1200 0 0 219 + 33 02 FEB 08:00 15190 15190 10.00 1517 1517 0 0 0 + 34 02 FEB 09:00 51760 51760 10.00 2673 2673 0 0 0 + 35 02 FEB 10:00 57840 57840 10.00 3280 3280 0 0 0 + 36 02 FEB 11:00 205510 205510 10.00 8042 8042 0 0 0 + 37 02 FEB 12:00 281620 281620 10.00 13147 13147 0 0 0 + 38 02 FEB 13:00 128870 128870 10.00 12872 12872 0 0 0 + 39 02 FEB 14:00 94400 94400 10.00 9425 9425 0 0 0 + 40 02 FEB 15:00 92880 90150 -1.00 6270 9000 0 0 2730 + 41 02 FEB 16:00 93123 90150 -1.00 6027 9000 0 0 2973 + 42 02 FEB 17:00 98150 98150 10.00 9800 9800 0 0 0 + 43 02 FEB 18:00 114720 114720 10.00 11457 11457 0 0 0 + 44 02 FEB 19:00 113950 113950 10.00 11380 11380 0 0 0 + 45 02 FEB 20:00 121080 121080 10.00 12093 12093 0 0 0 + 46 02 FEB 21:00 120480 120480 10.00 12033 12033 0 0 0 + 47 02 FEB 22:00 197700 197700 10.00 14753 14753 0 0 0 + 48 02 FEB 23:00 110780 110780 10.00 11061 11061 0 0 0 + 49 03 FEB 00:00 116840 116840 10.00 11667 11667 0 0 0 + 50 03 FEB 01:00 128440 128440 10.00 12827 12827 0 0 0 + 51 03 FEB 02:00 109460 109460 10.00 10929 10929 0 0 0 + 52 03 FEB 03:00 102260 102260 10.00 10209 10209 0 0 0 + 53 03 FEB 04:00 102728 102170 -1.00 9642 10200 0 0 558 + 54 03 FEB 05:00 121890 121890 10.00 12172 12172 0 0 0 + 55 03 FEB 06:00 252580 252580 10.00 17738 17738 0 0 0 + 56 03 FEB 07:00 246560 246560 10.00 19634 19634 0 0 0 + 57 03 FEB 08:00 198980 198980 20.00 19837 19800 37 0 0 + 58 03 FEB 09:00 178220 178220 10.00 17800 17800 0 0 0 + 59 03 FEB 10:00 134250 134250 10.00 13403 13403 0 0 0 + 60 03 FEB 11:00 164150 164150 10.00 16393 16393 0 0 0 + 61 03 FEB 12:00 193560 193560 10.00 19334 19334 0 0 0 + 62 03 FEB 13:00 175870 175870 10.00 17565 17565 0 0 0 + 63 03 FEB 14:00 141460 141460 10.00 14124 14124 0 0 0 + 64 03 FEB 15:00 141590 141590 10.00 14137 14137 0 0 0 + 65 03 FEB 16:00 133380 133380 10.00 13316 13316 0 0 0 + 66 03 FEB 17:00 168410 168410 10.00 16819 16819 0 0 0 + 67 03 FEB 18:00 193800 193800 10.00 19358 19358 0 0 0 + 68 03 FEB 19:00 156370 156370 10.00 15619 15619 0 0 0 + 69 03 FEB 20:00 96490 96490 10.00 9638 9638 0 0 0 + 70 03 FEB 21:00 55710 55710 10.00 5564 5564 0 0 0 + 71 03 FEB 22:00 52480 52480 10.00 5242 5242 0 0 0 + 72 03 FEB 23:00 16890 16890 10.00 1687 1687 0 0 0 + 73 04 FEB 00:00 12262 12020 -1.00 958 1200 0 0 242 + 74 04 FEB 01:00 6166 6010 -1.00 444 600 0 0 156 + 75 04 FEB 02:00 6512 6010 -1.00 98 600 0 0 502 + 76 04 FEB 03:00 6378 6010 -1.00 232 600 0 0 368 + 77 04 FEB 04:00 6179 6010 -1.00 431 600 0 0 169 + 78 04 FEB 05:00 42450 42450 10.00 1743 1743 0 0 0 + 79 04 FEB 06:00 321840 321840 10.00 9673 9673 0 0 0 + 80 04 FEB 07:00 261110 261110 10.00 13595 13595 0 0 0 + 81 04 FEB 08:00 136430 136430 10.00 13627 13627 0 0 0 + 82 04 FEB 09:00 130330 130330 10.00 13017 13017 0 0 0 + 83 04 FEB 10:00 113810 113810 10.00 11365 11365 0 0 0 + 84 04 FEB 11:00 243250 243250 10.00 16806 16806 0 0 0 + 85 04 FEB 12:00 283800 283800 20.00 21925 18000 3925 0 0 + 86 04 FEB 13:00 220550 220550 20.00 20016 18000 2016 0 0 + 87 04 FEB 14:00 166990 166990 10.00 16679 16679 0 0 0 + 88 04 FEB 15:00 146260 146260 10.00 14606 14606 0 0 0 + 89 04 FEB 16:00 131960 131960 10.00 13176 13176 0 0 0 + 90 04 FEB 17:00 156390 156390 10.00 15619 15619 0 0 0 + 91 04 FEB 18:00 171560 171560 10.00 17136 17136 0 0 0 + 92 04 FEB 19:00 148350 148350 10.00 14818 14818 0 0 0 + 93 04 FEB 20:00 111870 111870 10.00 11174 11174 0 0 0 + 94 04 FEB 21:00 85450 85450 10.00 8535 8535 0 0 0 + 95 04 FEB 22:00 79080 79080 10.00 7899 7899 0 0 0 + 96 04 FEB 23:00 42290 42290 10.00 4224 4224 0 0 0 + 97 05 FEB 00:00 22120 22120 10.00 2209 2209 0 0 0 + 98 05 FEB 01:00 12409 12020 -1.00 811 1200 0 0 389 + 99 05 FEB 02:00 12823 12020 -1.00 397 1200 0 0 803 + 100 05 FEB 03:00 12330 12020 -1.00 890 1200 0 0 310 + 101 05 FEB 04:00 12431 12020 -1.00 789 1200 0 0 411 + 102 05 FEB 05:00 12598 12020 -1.00 622 1200 0 0 578 + 103 05 FEB 06:00 254020 254020 10.00 7893 7893 0 0 0 + 104 05 FEB 07:00 280890 280890 10.00 13074 13074 0 0 0 + 105 05 FEB 08:00 163420 163420 10.00 13826 13826 0 0 0 + 106 05 FEB 09:00 169840 169840 10.00 14467 14467 0 0 0 + 107 05 FEB 10:00 124670 124670 10.00 12450 12450 0 0 0 + 108 05 FEB 11:00 386420 386420 10.00 21118 21118 0 0 0 + 109 05 FEB 12:00 419650 419650 10.00 26935 26935 0 0 0 + 110 05 FEB 13:00 263750 263750 10.00 26345 26345 0 0 0 + 111 05 FEB 14:00 243980 243980 10.00 24368 24368 0 0 0 + 112 05 FEB 15:00 226110 226110 10.00 22581 22581 0 0 0 + 113 05 FEB 16:00 244590 244590 10.00 24429 24429 0 0 0 + 114 05 FEB 17:00 385000 385000 20.00 31131 28800 2331 0 0 + 115 05 FEB 18:00 340650 340650 20.00 31414 28800 2614 0 0 + 116 05 FEB 19:00 281920 281920 10.00 28160 28160 0 0 0 + 117 05 FEB 20:00 244580 244580 10.00 24430 24430 0 0 0 + 118 05 FEB 21:00 223290 223290 10.00 22302 22302 0 0 0 + 119 05 FEB 22:00 235060 235060 10.00 23479 23479 0 0 0 + 120 05 FEB 23:00 206610 206610 10.00 20638 20638 0 0 0 + 121 06 FEB 00:00 112940 112940 10.00 11278 11278 0 0 0 + 122 06 FEB 01:00 96215 96160 -1.00 9545 9600 0 0 55 + 123 06 FEB 02:00 98640 96160 -1.00 7120 9600 0 0 2480 + 124 06 FEB 03:00 98575 96160 -1.00 7185 9600 0 0 2415 + 125 06 FEB 04:00 96426 96160 -1.00 9334 9600 0 0 266 + 126 06 FEB 05:00 129410 129410 10.00 12925 12925 0 0 0 + 127 06 FEB 06:00 412460 412460 10.00 21222 21222 0 0 0 + 128 06 FEB 07:00 481600 481600 10.00 28128 28128 0 0 0 + 129 06 FEB 08:00 347580 347580 10.00 29724 29724 0 0 0 + 130 06 FEB 09:00 300090 300090 10.00 29975 29975 0 0 0 + 131 06 FEB 10:00 243500 243500 10.00 24316 24316 0 0 0 + 132 06 FEB 11:00 276960 276960 10.00 27662 27662 0 0 0 + 133 06 FEB 12:00 372190 372190 10.00 32183 32183 0 0 0 + 134 06 FEB 13:00 305600 305600 10.00 30524 30524 0 0 0 + 135 06 FEB 14:00 303010 303010 10.00 30265 30265 0 0 0 + 136 06 FEB 15:00 317650 317650 10.00 31729 31729 0 0 0 + 137 06 FEB 16:00 451610 451610 10.00 35121 35121 0 0 0 + 138 06 FEB 17:00 558080 558080 10.00 40762 40762 0 0 0 + 139 06 FEB 18:00 542350 542350 10.00 44185 44185 0 0 0 + 140 06 FEB 19:00 451860 451860 20.00 45067 45000 67 0 0 + 141 06 FEB 20:00 419410 419410 10.00 41891 41891 0 0 0 + 142 06 FEB 21:00 410980 410980 10.00 41048 41048 0 0 0 + 143 06 FEB 22:00 415590 415590 10.00 41509 41509 0 0 0 + 144 06 FEB 23:00 394340 394340 10.00 39384 39384 0 0 0 + 145 07 FEB 00:00 345830 345830 10.00 34533 34533 0 0 0 + 146 07 FEB 01:00 347110 347110 10.00 34661 34661 0 0 0 + 147 07 FEB 02:00 330990 330990 10.00 33049 33049 0 0 0 + 148 07 FEB 03:00 318270 318270 10.00 31777 31777 0 0 0 + 149 07 FEB 04:00 316660 316660 10.00 31616 31616 0 0 0 + 150 07 FEB 05:00 317430 317430 10.00 31693 31693 0 0 0 + 151 07 FEB 06:00 381230 381230 10.00 38073 38073 0 0 0 + 152 07 FEB 07:00 390730 390730 10.00 39023 39023 0 0 0 + 153 07 FEB 08:00 384550 384550 10.00 38405 38405 0 0 0 + 154 07 FEB 09:00 362390 362390 10.00 36189 36189 0 0 0 + 155 07 FEB 10:00 304430 304430 10.00 30393 30393 0 0 0 + 156 07 FEB 11:00 355850 355850 10.00 35535 35535 0 0 0 + 157 07 FEB 12:00 428930 428930 10.00 42843 42843 0 0 0 + 158 07 FEB 13:00 439410 439410 10.00 43891 43891 0 0 0 + 159 07 FEB 14:00 428760 428760 10.00 42826 42826 0 0 0 + 160 07 FEB 15:00 440240 440240 10.00 43974 43974 0 0 0 + 161 07 FEB 16:00 489280 489280 20.00 46937 45000 1937 0 0 + 162 07 FEB 17:00 557760 557760 20.00 50358 45000 5358 0 0 + 163 07 FEB 18:00 561340 561340 20.00 50539 45000 5539 0 0 + 164 07 FEB 19:00 511440 511440 20.00 48045 45000 3045 0 0 + 165 07 FEB 20:00 425420 425420 10.00 42494 42494 0 0 0 + 166 07 FEB 21:00 386780 386780 10.00 38634 38634 0 0 0 + 167 07 FEB 22:00 391760 391760 10.00 39132 39132 0 0 0 + 168 07 FEB 23:00 365430 365430 10.00 36502 36502 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/components.yml b/tests/functional/data/thermal_heuristic_two_clusters_low_load/components.yml new file mode 100644 index 00000000..94fff243 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/components.yml @@ -0,0 +1,151 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + nodes: + - id: N + model: NODE_BALANCE_MODEL + + components: + - id: D + model: FIXED_DEMAND + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: S + model: SPI + parameters: + - name: cost + type: constant + value: 1 + - id: U + model: UNSP + parameters: + - name: cost + type: constant + value: 3000 + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 900 + - name: p_min + type: constant + value: 600 + - name: cost + type: constant + value: 10 + - name: startup_cost + type: constant + value: 25000 + - name: fixed_cost + type: constant + value: 10 + - name: d_min_up + type: constant + value: 8 + - name: d_min_down + type: constant + value: 8 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 50 + - name: max_failure + type: constant + value: 0 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 45000 + - name: nb_units_max_min_down_time + type: constant + value: 50 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 1000 + - name: p_min + type: constant + value: 0 + - name: cost + type: constant + value: 20 + - name: startup_cost + type: constant + value: 10 + - name: fixed_cost + type: constant + value: 10 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 10 + - name: max_failure + type: constant + value: 0 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 10000 + - name: nb_units_max_min_down_time + type: constant + value: 10 + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G1 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G2 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: U + port_2: balance_port + + - component1: N + port_1: balance_port + component2: S + port_2: balance_port + + + + + diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/demand-ts.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/demand-ts.txt new file mode 100644 index 00000000..e34a7039 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/demand-ts.txt @@ -0,0 +1,168 @@ +19789 +20437 +20097 +22127 +23903 +23800 +29152 +28840 +30246 +29912 +27437 +31543 +38677 +36685 +31115 +22643 +17874 +18589 +19041 +16725 +12498 +11493 +11256 +6724 +309 +127 +2 +94 +461 +517 +721 +981 +1517 +2673 +3280 +8042 +13147 +12872 +9425 +6270 +6027 +9800 +11457 +11380 +12093 +12033 +14753 +11061 +11667 +12827 +10929 +10209 +9642 +12172 +17738 +19634 +19837 +17800 +13403 +16393 +19334 +17565 +14124 +14137 +13316 +16819 +19358 +15619 +9638 +5564 +5242 +1687 +958 +444 +98 +232 +431 +1743 +9673 +13595 +13627 +13017 +11365 +16806 +21925 +20016 +16679 +14606 +13176 +15619 +17136 +14818 +11174 +8535 +7899 +4224 +2209 +811 +397 +890 +789 +622 +7893 +13074 +13826 +14467 +12450 +21118 +26935 +26345 +24368 +22581 +24429 +31131 +31414 +28160 +24430 +22302 +23479 +20638 +11278 +9545 +7120 +7185 +9334 +12925 +21222 +28128 +29724 +29975 +24316 +27662 +32183 +30524 +30265 +31729 +35121 +40762 +44185 +45067 +41891 +41048 +41509 +39384 +34533 +34661 +33049 +31777 +31616 +31693 +38073 +39023 +38405 +36189 +30393 +35535 +42843 +43891 +42826 +43974 +46937 +50358 +50539 +48045 +42494 +38634 +39132 +36502 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/details-hourly.txt new file mode 100644 index 00000000..9cceac4f --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 6 1 168 + +Area hourly Th1 Th3 Th1 Th3 Th1 Th3 + MWh MWh NP Cost - Euro NP Cost - Euro NODU NODU + index day month hour + 1 01 FEB 00:00 24600 0 410 0 41 0 + 2 01 FEB 01:00 24600 0 410 0 41 0 + 3 01 FEB 02:00 24600 0 410 0 41 0 + 4 01 FEB 03:00 24600 0 410 0 41 0 + 5 01 FEB 04:00 24600 0 410 0 41 0 + 6 01 FEB 05:00 24600 0 410 0 41 0 + 7 01 FEB 06:00 29152 0 410 0 41 0 + 8 01 FEB 07:00 28840 0 50430 0 43 0 + 9 01 FEB 08:00 30246 0 430 0 43 0 + 10 01 FEB 09:00 29912 0 430 0 43 0 + 11 01 FEB 10:00 27437 0 430 0 43 0 + 12 01 FEB 11:00 31543 0 430 0 43 0 + 13 01 FEB 12:00 38677 0 430 0 43 0 + 14 01 FEB 13:00 36685 0 430 0 43 0 + 15 01 FEB 14:00 31115 0 430 0 43 0 + 16 01 FEB 15:00 22643 0 260 0 26 0 + 17 01 FEB 16:00 17874 0 260 0 26 0 + 18 01 FEB 17:00 18589 0 260 0 26 0 + 19 01 FEB 18:00 19041 0 260 0 26 0 + 20 01 FEB 19:00 16725 0 260 0 26 0 + 21 01 FEB 20:00 15600 0 260 0 26 0 + 22 01 FEB 21:00 15600 0 260 0 26 0 + 23 01 FEB 22:00 15600 0 260 0 26 0 + 24 01 FEB 23:00 6724 0 80 0 8 0 + 25 02 FEB 00:00 4800 0 80 0 8 0 + 26 02 FEB 01:00 4800 0 80 0 8 0 + 27 02 FEB 02:00 4800 0 80 0 8 0 + 28 02 FEB 03:00 4800 0 80 0 8 0 + 29 02 FEB 04:00 4800 0 80 0 8 0 + 30 02 FEB 05:00 4800 0 80 0 8 0 + 31 02 FEB 06:00 4800 0 80 0 8 0 + 32 02 FEB 07:00 9000 0 175150 0 15 0 + 33 02 FEB 08:00 9000 0 150 0 15 0 + 34 02 FEB 09:00 9000 0 150 0 15 0 + 35 02 FEB 10:00 9000 0 150 0 15 0 + 36 02 FEB 11:00 9000 0 150 0 15 0 + 37 02 FEB 12:00 13147 0 150 0 15 0 + 38 02 FEB 13:00 12872 0 150 0 15 0 + 39 02 FEB 14:00 9425 0 150 0 15 0 + 40 02 FEB 15:00 10200 0 50170 0 17 0 + 41 02 FEB 16:00 10200 0 170 0 17 0 + 42 02 FEB 17:00 10200 0 170 0 17 0 + 43 02 FEB 18:00 11457 0 170 0 17 0 + 44 02 FEB 19:00 11380 0 170 0 17 0 + 45 02 FEB 20:00 12093 0 170 0 17 0 + 46 02 FEB 21:00 12033 0 170 0 17 0 + 47 02 FEB 22:00 14753 0 170 0 17 0 + 48 02 FEB 23:00 12000 0 75200 0 20 0 + 49 03 FEB 00:00 12000 0 200 0 20 0 + 50 03 FEB 01:00 12827 0 200 0 20 0 + 51 03 FEB 02:00 12000 0 200 0 20 0 + 52 03 FEB 03:00 12000 0 200 0 20 0 + 53 03 FEB 04:00 12000 0 200 0 20 0 + 54 03 FEB 05:00 12172 0 200 0 20 0 + 55 03 FEB 06:00 17738 0 200 0 20 0 + 56 03 FEB 07:00 19634 0 75230 0 23 0 + 57 03 FEB 08:00 19837 0 230 0 23 0 + 58 03 FEB 09:00 17800 0 230 0 23 0 + 59 03 FEB 10:00 13800 0 230 0 23 0 + 60 03 FEB 11:00 16393 0 230 0 23 0 + 61 03 FEB 12:00 19334 0 230 0 23 0 + 62 03 FEB 13:00 17565 0 230 0 23 0 + 63 03 FEB 14:00 14124 0 230 0 23 0 + 64 03 FEB 15:00 14137 0 220 0 22 0 + 65 03 FEB 16:00 13316 0 220 0 22 0 + 66 03 FEB 17:00 16819 0 220 0 22 0 + 67 03 FEB 18:00 19358 0 220 0 22 0 + 68 03 FEB 19:00 15619 0 220 0 22 0 + 69 03 FEB 20:00 13200 0 220 0 22 0 + 70 03 FEB 21:00 13200 0 220 0 22 0 + 71 03 FEB 22:00 13200 0 220 0 22 0 + 72 03 FEB 23:00 6600 0 110 0 11 0 + 73 04 FEB 00:00 6600 0 110 0 11 0 + 74 04 FEB 01:00 6600 0 110 0 11 0 + 75 04 FEB 02:00 6600 0 110 0 11 0 + 76 04 FEB 03:00 6600 0 110 0 11 0 + 77 04 FEB 04:00 6600 0 110 0 11 0 + 78 04 FEB 05:00 6600 0 110 0 11 0 + 79 04 FEB 06:00 9673 0 110 0 11 0 + 80 04 FEB 07:00 15000 0 350250 0 25 0 + 81 04 FEB 08:00 15000 0 250 0 25 0 + 82 04 FEB 09:00 15000 0 250 0 25 0 + 83 04 FEB 10:00 15000 0 250 0 25 0 + 84 04 FEB 11:00 16806 0 250 0 25 0 + 85 04 FEB 12:00 21925 0 250 0 25 0 + 86 04 FEB 13:00 20016 0 250 0 25 0 + 87 04 FEB 14:00 16679 0 250 0 25 0 + 88 04 FEB 15:00 14606 0 200 0 20 0 + 89 04 FEB 16:00 13176 0 200 0 20 0 + 90 04 FEB 17:00 15619 0 200 0 20 0 + 91 04 FEB 18:00 17136 0 200 0 20 0 + 92 04 FEB 19:00 14818 0 200 0 20 0 + 93 04 FEB 20:00 12000 0 200 0 20 0 + 94 04 FEB 21:00 12000 0 200 0 20 0 + 95 04 FEB 22:00 12000 0 200 0 20 0 + 96 04 FEB 23:00 5400 0 90 0 9 0 + 97 05 FEB 00:00 5400 0 90 0 9 0 + 98 05 FEB 01:00 5400 0 90 0 9 0 + 99 05 FEB 02:00 5400 0 90 0 9 0 + 100 05 FEB 03:00 5400 0 90 0 9 0 + 101 05 FEB 04:00 5400 0 90 0 9 0 + 102 05 FEB 05:00 5400 0 90 0 9 0 + 103 05 FEB 06:00 7893 0 90 0 9 0 + 104 05 FEB 07:00 18000 0 525300 0 30 0 + 105 05 FEB 08:00 18000 0 300 0 30 0 + 106 05 FEB 09:00 18000 0 300 0 30 0 + 107 05 FEB 10:00 18000 0 300 0 30 0 + 108 05 FEB 11:00 21118 0 300 0 30 0 + 109 05 FEB 12:00 26935 0 300 0 30 0 + 110 05 FEB 13:00 26345 0 300 0 30 0 + 111 05 FEB 14:00 24368 0 300 0 30 0 + 112 05 FEB 15:00 22581 0 125350 0 35 0 + 113 05 FEB 16:00 24429 0 350 0 35 0 + 114 05 FEB 17:00 31131 0 350 0 35 0 + 115 05 FEB 18:00 31414 0 350 0 35 0 + 116 05 FEB 19:00 28160 0 350 0 35 0 + 117 05 FEB 20:00 24430 0 350 0 35 0 + 118 05 FEB 21:00 22302 0 350 0 35 0 + 119 05 FEB 22:00 23479 0 350 0 35 0 + 120 05 FEB 23:00 20638 0 240 0 24 0 + 121 06 FEB 00:00 14400 0 240 0 24 0 + 122 06 FEB 01:00 14400 0 240 0 24 0 + 123 06 FEB 02:00 14400 0 240 0 24 0 + 124 06 FEB 03:00 14400 0 240 0 24 0 + 125 06 FEB 04:00 14400 0 240 0 24 0 + 126 06 FEB 05:00 14400 0 240 0 24 0 + 127 06 FEB 06:00 21222 0 240 0 24 0 + 128 06 FEB 07:00 28128 0 300360 0 36 0 + 129 06 FEB 08:00 29724 0 360 0 36 0 + 130 06 FEB 09:00 29975 0 360 0 36 0 + 131 06 FEB 10:00 24316 0 360 0 36 0 + 132 06 FEB 11:00 27662 0 360 0 36 0 + 133 06 FEB 12:00 32183 0 360 0 36 0 + 134 06 FEB 13:00 30524 0 360 0 36 0 + 135 06 FEB 14:00 30265 0 360 0 36 0 + 136 06 FEB 15:00 31729 0 350500 0 50 0 + 137 06 FEB 16:00 35121 0 500 0 50 0 + 138 06 FEB 17:00 40762 0 500 0 50 0 + 139 06 FEB 18:00 44185 0 500 0 50 0 + 140 06 FEB 19:00 45000 67 500 20 50 1 + 141 06 FEB 20:00 41891 0 500 0 50 0 + 142 06 FEB 21:00 41048 0 500 0 50 0 + 143 06 FEB 22:00 41509 0 500 0 50 0 + 144 06 FEB 23:00 39384 0 500 0 50 0 + 145 07 FEB 00:00 34533 0 500 0 50 0 + 146 07 FEB 01:00 34661 0 500 0 50 0 + 147 07 FEB 02:00 33049 0 500 0 50 0 + 148 07 FEB 03:00 31777 0 500 0 50 0 + 149 07 FEB 04:00 31616 0 500 0 50 0 + 150 07 FEB 05:00 31693 0 500 0 50 0 + 151 07 FEB 06:00 38073 0 500 0 50 0 + 152 07 FEB 07:00 39023 0 500 0 50 0 + 153 07 FEB 08:00 38405 0 500 0 50 0 + 154 07 FEB 09:00 36189 0 500 0 50 0 + 155 07 FEB 10:00 30393 0 500 0 50 0 + 156 07 FEB 11:00 35535 0 500 0 50 0 + 157 07 FEB 12:00 42843 0 500 0 50 0 + 158 07 FEB 13:00 43891 0 500 0 50 0 + 159 07 FEB 14:00 42826 0 500 0 50 0 + 160 07 FEB 15:00 43974 0 500 0 50 0 + 161 07 FEB 16:00 45000 1937 500 40 50 2 + 162 07 FEB 17:00 45000 5358 500 100 50 6 + 163 07 FEB 18:00 45000 5539 500 60 50 6 + 164 07 FEB 19:00 45000 3045 500 40 50 4 + 165 07 FEB 20:00 42494 0 500 0 50 0 + 166 07 FEB 21:00 38634 0 500 0 50 0 + 167 07 FEB 22:00 39132 0 500 0 50 0 + 168 07 FEB 23:00 36502 0 410 0 41 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/values-hourly.txt new file mode 100644 index 00000000..6324acda --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/fast/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 8 1 168 + +Area hourly OV. COST OP. COST MRG. PRICE LOAD NUCLEAR GAS UNSP. ENRG SPIL. ENRG + Euro Euro Euro MWh MWh MWh MWh MWh + index day month hour + 1 01 FEB 00:00 251221 246410 -1.00 19789 24600 0 0 4811 + 2 01 FEB 01:00 250573 246410 -1.00 20437 24600 0 0 4163 + 3 01 FEB 02:00 250913 246410 -1.00 20097 24600 0 0 4503 + 4 01 FEB 03:00 248883 246410 -1.00 22127 24600 0 0 2473 + 5 01 FEB 04:00 247107 246410 -1.00 23903 24600 0 0 697 + 6 01 FEB 05:00 247210 246410 -1.00 23800 24600 0 0 800 + 7 01 FEB 06:00 291930 291930 10.00 29152 29152 0 0 0 + 8 01 FEB 07:00 338830 338830 10.00 28840 28840 0 0 0 + 9 01 FEB 08:00 302890 302890 10.00 30246 30246 0 0 0 + 10 01 FEB 09:00 299550 299550 10.00 29912 29912 0 0 0 + 11 01 FEB 10:00 274800 274800 10.00 27437 27437 0 0 0 + 12 01 FEB 11:00 315860 315860 10.00 31543 31543 0 0 0 + 13 01 FEB 12:00 387200 387200 10.00 38677 38677 0 0 0 + 14 01 FEB 13:00 367280 367280 10.00 36685 36685 0 0 0 + 15 01 FEB 14:00 311580 311580 10.00 31115 31115 0 0 0 + 16 01 FEB 15:00 226690 226690 10.00 22643 22643 0 0 0 + 17 01 FEB 16:00 179000 179000 10.00 17874 17874 0 0 0 + 18 01 FEB 17:00 186150 186150 10.00 18589 18589 0 0 0 + 19 01 FEB 18:00 190670 190670 10.00 19041 19041 0 0 0 + 20 01 FEB 19:00 167510 167510 10.00 16725 16725 0 0 0 + 21 01 FEB 20:00 159362 156260 -1.00 12498 15600 0 0 3102 + 22 01 FEB 21:00 160367 156260 -1.00 11493 15600 0 0 4107 + 23 01 FEB 22:00 160604 156260 -1.00 11256 15600 0 0 4344 + 24 01 FEB 23:00 67320 67320 10.00 6724 6724 0 0 0 + 25 02 FEB 00:00 52571 48080 -1.00 309 4800 0 0 4491 + 26 02 FEB 01:00 52753 48080 -1.00 127 4800 0 0 4673 + 27 02 FEB 02:00 52878 48080 -1.00 2 4800 0 0 4798 + 28 02 FEB 03:00 52786 48080 -1.00 94 4800 0 0 4706 + 29 02 FEB 04:00 52419 48080 -1.00 461 4800 0 0 4339 + 30 02 FEB 05:00 52363 48080 -1.00 517 4800 0 0 4283 + 31 02 FEB 06:00 52159 48080 -1.00 721 4800 0 0 4079 + 32 02 FEB 07:00 273169 265150 -1.00 981 9000 0 0 8019 + 33 02 FEB 08:00 97633 90150 -1.00 1517 9000 0 0 7483 + 34 02 FEB 09:00 96477 90150 -1.00 2673 9000 0 0 6327 + 35 02 FEB 10:00 95870 90150 -1.00 3280 9000 0 0 5720 + 36 02 FEB 11:00 91108 90150 -1.00 8042 9000 0 0 958 + 37 02 FEB 12:00 131620 131620 10.00 13147 13147 0 0 0 + 38 02 FEB 13:00 128870 128870 10.00 12872 12872 0 0 0 + 39 02 FEB 14:00 94400 94400 10.00 9425 9425 0 0 0 + 40 02 FEB 15:00 156100 152170 -1.00 6270 10200 0 0 3930 + 41 02 FEB 16:00 106343 102170 -1.00 6027 10200 0 0 4173 + 42 02 FEB 17:00 102570 102170 -1.00 9800 10200 0 0 400 + 43 02 FEB 18:00 114740 114740 10.00 11457 11457 0 0 0 + 44 02 FEB 19:00 113970 113970 10.00 11380 11380 0 0 0 + 45 02 FEB 20:00 121100 121100 10.00 12093 12093 0 0 0 + 46 02 FEB 21:00 120500 120500 10.00 12033 12033 0 0 0 + 47 02 FEB 22:00 147700 147700 10.00 14753 14753 0 0 0 + 48 02 FEB 23:00 196139 195200 -1.00 11061 12000 0 0 939 + 49 03 FEB 00:00 120533 120200 -1.00 11667 12000 0 0 333 + 50 03 FEB 01:00 128470 128470 10.00 12827 12827 0 0 0 + 51 03 FEB 02:00 121271 120200 -1.00 10929 12000 0 0 1071 + 52 03 FEB 03:00 121991 120200 -1.00 10209 12000 0 0 1791 + 53 03 FEB 04:00 122558 120200 -1.00 9642 12000 0 0 2358 + 54 03 FEB 05:00 121920 121920 10.00 12172 12172 0 0 0 + 55 03 FEB 06:00 177580 177580 10.00 17738 17738 0 0 0 + 56 03 FEB 07:00 271570 271570 10.00 19634 19634 0 0 0 + 57 03 FEB 08:00 198600 198600 10.00 19837 19837 0 0 0 + 58 03 FEB 09:00 178230 178230 10.00 17800 17800 0 0 0 + 59 03 FEB 10:00 138627 138230 -1.00 13403 13800 0 0 397 + 60 03 FEB 11:00 164160 164160 10.00 16393 16393 0 0 0 + 61 03 FEB 12:00 193570 193570 10.00 19334 19334 0 0 0 + 62 03 FEB 13:00 175880 175880 10.00 17565 17565 0 0 0 + 63 03 FEB 14:00 141470 141470 10.00 14124 14124 0 0 0 + 64 03 FEB 15:00 141590 141590 10.00 14137 14137 0 0 0 + 65 03 FEB 16:00 133380 133380 10.00 13316 13316 0 0 0 + 66 03 FEB 17:00 168410 168410 10.00 16819 16819 0 0 0 + 67 03 FEB 18:00 193800 193800 10.00 19358 19358 0 0 0 + 68 03 FEB 19:00 156410 156410 10.00 15619 15619 0 0 0 + 69 03 FEB 20:00 135782 132220 -1.00 9638 13200 0 0 3562 + 70 03 FEB 21:00 139856 132220 -1.00 5564 13200 0 0 7636 + 71 03 FEB 22:00 140178 132220 -1.00 5242 13200 0 0 7958 + 72 03 FEB 23:00 71023 66110 -1.00 1687 6600 0 0 4913 + 73 04 FEB 00:00 71752 66110 -1.00 958 6600 0 0 5642 + 74 04 FEB 01:00 72266 66110 -1.00 444 6600 0 0 6156 + 75 04 FEB 02:00 72612 66110 -1.00 98 6600 0 0 6502 + 76 04 FEB 03:00 72478 66110 -1.00 232 6600 0 0 6368 + 77 04 FEB 04:00 72279 66110 -1.00 431 6600 0 0 6169 + 78 04 FEB 05:00 70967 66110 -1.00 1743 6600 0 0 4857 + 79 04 FEB 06:00 96840 96840 10.00 9673 9673 0 0 0 + 80 04 FEB 07:00 501655 500250 -1.00 13595 15000 0 0 1405 + 81 04 FEB 08:00 151623 150250 -1.00 13627 15000 0 0 1373 + 82 04 FEB 09:00 152233 150250 -1.00 13017 15000 0 0 1983 + 83 04 FEB 10:00 153885 150250 -1.00 11365 15000 0 0 3635 + 84 04 FEB 11:00 168310 168310 10.00 16806 16806 0 0 0 + 85 04 FEB 12:00 219500 219500 10.00 21925 21925 0 0 0 + 86 04 FEB 13:00 200410 200410 10.00 20016 20016 0 0 0 + 87 04 FEB 14:00 167040 167040 10.00 16679 16679 0 0 0 + 88 04 FEB 15:00 146260 146260 10.00 14606 14606 0 0 0 + 89 04 FEB 16:00 131960 131960 10.00 13176 13176 0 0 0 + 90 04 FEB 17:00 156390 156390 10.00 15619 15619 0 0 0 + 91 04 FEB 18:00 171560 171560 10.00 17136 17136 0 0 0 + 92 04 FEB 19:00 148380 148380 10.00 14818 14818 0 0 0 + 93 04 FEB 20:00 121026 120200 -1.00 11174 12000 0 0 826 + 94 04 FEB 21:00 123665 120200 -1.00 8535 12000 0 0 3465 + 95 04 FEB 22:00 124301 120200 -1.00 7899 12000 0 0 4101 + 96 04 FEB 23:00 55266 54090 -1.00 4224 5400 0 0 1176 + 97 05 FEB 00:00 57281 54090 -1.00 2209 5400 0 0 3191 + 98 05 FEB 01:00 58679 54090 -1.00 811 5400 0 0 4589 + 99 05 FEB 02:00 59093 54090 -1.00 397 5400 0 0 5003 + 100 05 FEB 03:00 58600 54090 -1.00 890 5400 0 0 4510 + 101 05 FEB 04:00 58701 54090 -1.00 789 5400 0 0 4611 + 102 05 FEB 05:00 58868 54090 -1.00 622 5400 0 0 4778 + 103 05 FEB 06:00 79020 79020 10.00 7893 7893 0 0 0 + 104 05 FEB 07:00 710226 705300 -1.00 13074 18000 0 0 4926 + 105 05 FEB 08:00 184474 180300 -1.00 13826 18000 0 0 4174 + 106 05 FEB 09:00 183833 180300 -1.00 14467 18000 0 0 3533 + 107 05 FEB 10:00 185850 180300 -1.00 12450 18000 0 0 5550 + 108 05 FEB 11:00 211480 211480 10.00 21118 21118 0 0 0 + 109 05 FEB 12:00 269650 269650 10.00 26935 26935 0 0 0 + 110 05 FEB 13:00 263750 263750 10.00 26345 26345 0 0 0 + 111 05 FEB 14:00 243980 243980 10.00 24368 24368 0 0 0 + 112 05 FEB 15:00 351160 351160 10.00 22581 22581 0 0 0 + 113 05 FEB 16:00 244640 244640 10.00 24429 24429 0 0 0 + 114 05 FEB 17:00 311660 311660 10.00 31131 31131 0 0 0 + 115 05 FEB 18:00 314490 314490 10.00 31414 31414 0 0 0 + 116 05 FEB 19:00 281950 281950 10.00 28160 28160 0 0 0 + 117 05 FEB 20:00 244650 244650 10.00 24430 24430 0 0 0 + 118 05 FEB 21:00 223370 223370 10.00 22302 22302 0 0 0 + 119 05 FEB 22:00 235140 235140 10.00 23479 23479 0 0 0 + 120 05 FEB 23:00 206620 206620 10.00 20638 20638 0 0 0 + 121 06 FEB 00:00 147362 144240 -1.00 11278 14400 0 0 3122 + 122 06 FEB 01:00 149095 144240 -1.00 9545 14400 0 0 4855 + 123 06 FEB 02:00 151520 144240 -1.00 7120 14400 0 0 7280 + 124 06 FEB 03:00 151455 144240 -1.00 7185 14400 0 0 7215 + 125 06 FEB 04:00 149306 144240 -1.00 9334 14400 0 0 5066 + 126 06 FEB 05:00 145715 144240 -1.00 12925 14400 0 0 1475 + 127 06 FEB 06:00 212460 212460 10.00 21222 21222 0 0 0 + 128 06 FEB 07:00 581640 581640 10.00 28128 28128 0 0 0 + 129 06 FEB 08:00 297600 297600 10.00 29724 29724 0 0 0 + 130 06 FEB 09:00 300110 300110 10.00 29975 29975 0 0 0 + 131 06 FEB 10:00 243520 243520 10.00 24316 24316 0 0 0 + 132 06 FEB 11:00 276980 276980 10.00 27662 27662 0 0 0 + 133 06 FEB 12:00 322190 322190 10.00 32183 32183 0 0 0 + 134 06 FEB 13:00 305600 305600 10.00 30524 30524 0 0 0 + 135 06 FEB 14:00 303010 303010 10.00 30265 30265 0 0 0 + 136 06 FEB 15:00 667790 667790 10.00 31729 31729 0 0 0 + 137 06 FEB 16:00 351710 351710 10.00 35121 35121 0 0 0 + 138 06 FEB 17:00 408120 408120 10.00 40762 40762 0 0 0 + 139 06 FEB 18:00 442350 442350 10.00 44185 44185 0 0 0 + 140 06 FEB 19:00 451860 451860 20.00 45067 45000 67 0 0 + 141 06 FEB 20:00 419410 419410 10.00 41891 41891 0 0 0 + 142 06 FEB 21:00 410980 410980 10.00 41048 41048 0 0 0 + 143 06 FEB 22:00 415590 415590 10.00 41509 41509 0 0 0 + 144 06 FEB 23:00 394340 394340 10.00 39384 39384 0 0 0 + 145 07 FEB 00:00 345830 345830 10.00 34533 34533 0 0 0 + 146 07 FEB 01:00 347110 347110 10.00 34661 34661 0 0 0 + 147 07 FEB 02:00 330990 330990 10.00 33049 33049 0 0 0 + 148 07 FEB 03:00 318270 318270 10.00 31777 31777 0 0 0 + 149 07 FEB 04:00 316660 316660 10.00 31616 31616 0 0 0 + 150 07 FEB 05:00 317430 317430 10.00 31693 31693 0 0 0 + 151 07 FEB 06:00 381230 381230 10.00 38073 38073 0 0 0 + 152 07 FEB 07:00 390730 390730 10.00 39023 39023 0 0 0 + 153 07 FEB 08:00 384550 384550 10.00 38405 38405 0 0 0 + 154 07 FEB 09:00 362390 362390 10.00 36189 36189 0 0 0 + 155 07 FEB 10:00 304430 304430 10.00 30393 30393 0 0 0 + 156 07 FEB 11:00 355850 355850 10.00 35535 35535 0 0 0 + 157 07 FEB 12:00 428930 428930 10.00 42843 42843 0 0 0 + 158 07 FEB 13:00 439410 439410 10.00 43891 43891 0 0 0 + 159 07 FEB 14:00 428760 428760 10.00 42826 42826 0 0 0 + 160 07 FEB 15:00 440240 440240 10.00 43974 43974 0 0 0 + 161 07 FEB 16:00 489280 489280 20.00 46937 45000 1937 0 0 + 162 07 FEB 17:00 557760 557760 20.00 50358 45000 5358 0 0 + 163 07 FEB 18:00 561340 561340 20.00 50539 45000 5539 0 0 + 164 07 FEB 19:00 511440 511440 20.00 48045 45000 3045 0 0 + 165 07 FEB 20:00 425440 425440 10.00 42494 42494 0 0 0 + 166 07 FEB 21:00 386840 386840 10.00 38634 38634 0 0 0 + 167 07 FEB 22:00 391820 391820 10.00 39132 39132 0 0 0 + 168 07 FEB 23:00 365430 365430 10.00 36502 36502 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/details-hourly.txt new file mode 100644 index 00000000..42fbcae3 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 6 1 168 + +Area hourly Th1 Th3 Th1 Th3 Th1 Th3 + MWh MWh NP Cost - Euro NP Cost - Euro NODU NODU + index day month hour + 1 01 FEB 00:00 21000 0 350 0 35 0 + 2 01 FEB 01:00 21000 0 350 0 35 0 + 3 01 FEB 02:00 21000 0 350 0 35 0 + 4 01 FEB 03:00 22127 0 350 0 35 0 + 5 01 FEB 04:00 23903 0 350 0 35 0 + 6 01 FEB 05:00 23800 0 350 0 35 0 + 7 01 FEB 06:00 29152 0 350 0 35 0 + 8 01 FEB 07:00 28840 0 350 0 35 0 + 9 01 FEB 08:00 30246 0 350 0 35 0 + 10 01 FEB 09:00 29912 0 350 0 35 0 + 11 01 FEB 10:00 27437 0 350 0 35 0 + 12 01 FEB 11:00 31500 43 350 20 35 1 + 13 01 FEB 12:00 31500 7177 350 150 35 8 + 14 01 FEB 13:00 31500 5185 350 60 35 6 + 15 01 FEB 14:00 31115 0 350 0 35 0 + 16 01 FEB 15:00 22643 0 260 0 26 0 + 17 01 FEB 16:00 17874 0 220 0 22 0 + 18 01 FEB 17:00 18589 0 220 0 22 0 + 19 01 FEB 18:00 19041 0 220 0 22 0 + 20 01 FEB 19:00 16725 0 190 0 19 0 + 21 01 FEB 20:00 12498 0 140 0 14 0 + 22 01 FEB 21:00 11493 0 130 0 13 0 + 23 01 FEB 22:00 11256 0 130 0 13 0 + 24 01 FEB 23:00 6724 0 80 0 8 0 + 25 02 FEB 00:00 600 0 10 0 1 0 + 26 02 FEB 01:00 600 0 10 0 1 0 + 27 02 FEB 02:00 600 0 10 0 1 0 + 28 02 FEB 03:00 600 0 10 0 1 0 + 29 02 FEB 04:00 600 0 10 0 1 0 + 30 02 FEB 05:00 600 0 10 0 1 0 + 31 02 FEB 06:00 721 0 10 0 1 0 + 32 02 FEB 07:00 900 81 10 20 1 1 + 33 02 FEB 08:00 1517 0 25020 0 2 0 + 34 02 FEB 09:00 2673 0 25030 0 3 0 + 35 02 FEB 10:00 3280 0 25040 0 4 0 + 36 02 FEB 11:00 8042 0 125090 0 9 0 + 37 02 FEB 12:00 12600 547 125140 20 14 1 + 38 02 FEB 13:00 12600 272 140 10 14 1 + 39 02 FEB 14:00 9425 0 140 0 14 0 + 40 02 FEB 15:00 8400 0 140 0 14 0 + 41 02 FEB 16:00 8400 0 140 0 14 0 + 42 02 FEB 17:00 9800 0 140 0 14 0 + 43 02 FEB 18:00 11457 0 140 0 14 0 + 44 02 FEB 19:00 11380 0 140 0 14 0 + 45 02 FEB 20:00 12093 0 140 0 14 0 + 46 02 FEB 21:00 12033 0 140 0 14 0 + 47 02 FEB 22:00 14400 353 50160 20 16 1 + 48 02 FEB 23:00 11061 0 160 0 16 0 + 49 03 FEB 00:00 11667 0 160 0 16 0 + 50 03 FEB 01:00 12827 0 160 0 16 0 + 51 03 FEB 02:00 10929 0 160 0 16 0 + 52 03 FEB 03:00 10209 0 160 0 16 0 + 53 03 FEB 04:00 9642 0 160 0 16 0 + 54 03 FEB 05:00 12172 0 160 0 16 0 + 55 03 FEB 06:00 17738 0 100200 0 20 0 + 56 03 FEB 07:00 19634 0 50220 0 22 0 + 57 03 FEB 08:00 19800 37 220 20 22 1 + 58 03 FEB 09:00 17800 0 220 0 22 0 + 59 03 FEB 10:00 13403 0 220 0 22 0 + 60 03 FEB 11:00 16393 0 220 0 22 0 + 61 03 FEB 12:00 19334 0 220 0 22 0 + 62 03 FEB 13:00 17565 0 220 0 22 0 + 63 03 FEB 14:00 14124 0 220 0 22 0 + 64 03 FEB 15:00 14137 0 220 0 22 0 + 65 03 FEB 16:00 13316 0 220 0 22 0 + 66 03 FEB 17:00 16819 0 220 0 22 0 + 67 03 FEB 18:00 19358 0 220 0 22 0 + 68 03 FEB 19:00 15619 0 180 0 18 0 + 69 03 FEB 20:00 9638 0 110 0 11 0 + 70 03 FEB 21:00 5564 0 70 0 7 0 + 71 03 FEB 22:00 5242 0 60 0 6 0 + 72 03 FEB 23:00 1687 0 20 0 2 0 + 73 04 FEB 00:00 900 58 10 20 1 1 + 74 04 FEB 01:00 600 0 10 0 1 0 + 75 04 FEB 02:00 600 0 10 0 1 0 + 76 04 FEB 03:00 600 0 10 0 1 0 + 77 04 FEB 04:00 600 0 10 0 1 0 + 78 04 FEB 05:00 1743 0 25020 0 2 0 + 79 04 FEB 06:00 9673 0 225110 0 11 0 + 80 04 FEB 07:00 13595 0 125160 0 16 0 + 81 04 FEB 08:00 13627 0 160 0 16 0 + 82 04 FEB 09:00 13017 0 160 0 16 0 + 83 04 FEB 10:00 11365 0 160 0 16 0 + 84 04 FEB 11:00 16806 0 75190 0 19 0 + 85 04 FEB 12:00 17100 4825 190 100 19 5 + 86 04 FEB 13:00 17100 2916 190 30 19 3 + 87 04 FEB 14:00 16679 0 190 0 19 0 + 88 04 FEB 15:00 14606 0 190 0 19 0 + 89 04 FEB 16:00 13176 0 190 0 19 0 + 90 04 FEB 17:00 15619 0 190 0 19 0 + 91 04 FEB 18:00 17100 36 190 20 19 1 + 92 04 FEB 19:00 14818 0 170 0 17 0 + 93 04 FEB 20:00 11174 0 130 0 13 0 + 94 04 FEB 21:00 8535 0 100 0 10 0 + 95 04 FEB 22:00 7899 0 90 0 9 0 + 96 04 FEB 23:00 4224 0 50 0 5 0 + 97 05 FEB 00:00 2209 0 30 0 3 0 + 98 05 FEB 01:00 811 0 10 0 1 0 + 99 05 FEB 02:00 600 0 10 0 1 0 + 100 05 FEB 03:00 890 0 10 0 1 0 + 101 05 FEB 04:00 789 0 10 0 1 0 + 102 05 FEB 05:00 622 0 10 0 1 0 + 103 05 FEB 06:00 7893 0 200090 0 9 0 + 104 05 FEB 07:00 13074 0 150150 0 15 0 + 105 05 FEB 08:00 13826 0 25160 0 16 0 + 106 05 FEB 09:00 14467 0 25170 0 17 0 + 107 05 FEB 10:00 12450 0 170 0 17 0 + 108 05 FEB 11:00 21118 0 175240 0 24 0 + 109 05 FEB 12:00 26935 0 150300 0 30 0 + 110 05 FEB 13:00 26345 0 300 0 30 0 + 111 05 FEB 14:00 24368 0 300 0 30 0 + 112 05 FEB 15:00 22581 0 300 0 30 0 + 113 05 FEB 16:00 24429 0 300 0 30 0 + 114 05 FEB 17:00 27900 3231 25310 80 31 4 + 115 05 FEB 18:00 27900 3514 310 40 31 4 + 116 05 FEB 19:00 27900 260 310 10 31 1 + 117 05 FEB 20:00 24430 0 280 0 28 0 + 118 05 FEB 21:00 22302 0 270 0 27 0 + 119 05 FEB 22:00 23479 0 270 0 27 0 + 120 05 FEB 23:00 20638 0 230 0 23 0 + 121 06 FEB 00:00 11278 0 160 0 16 0 + 122 06 FEB 01:00 9600 0 160 0 16 0 + 123 06 FEB 02:00 9600 0 160 0 16 0 + 124 06 FEB 03:00 9600 0 160 0 16 0 + 125 06 FEB 04:00 9600 0 160 0 16 0 + 126 06 FEB 05:00 12925 0 160 0 16 0 + 127 06 FEB 06:00 21222 0 200240 0 24 0 + 128 06 FEB 07:00 28128 0 200320 0 32 0 + 129 06 FEB 08:00 29724 0 50340 0 34 0 + 130 06 FEB 09:00 29975 0 340 0 34 0 + 131 06 FEB 10:00 24316 0 340 0 34 0 + 132 06 FEB 11:00 27662 0 340 0 34 0 + 133 06 FEB 12:00 32183 0 50360 0 36 0 + 134 06 FEB 13:00 30524 0 360 0 36 0 + 135 06 FEB 14:00 30265 0 360 0 36 0 + 136 06 FEB 15:00 31729 0 360 0 36 0 + 137 06 FEB 16:00 35121 0 100400 0 40 0 + 138 06 FEB 17:00 40762 0 150460 0 46 0 + 139 06 FEB 18:00 44185 0 100500 0 50 0 + 140 06 FEB 19:00 45000 67 500 20 50 1 + 141 06 FEB 20:00 41891 0 500 0 50 0 + 142 06 FEB 21:00 41048 0 500 0 50 0 + 143 06 FEB 22:00 41509 0 500 0 50 0 + 144 06 FEB 23:00 39384 0 500 0 50 0 + 145 07 FEB 00:00 34533 0 500 0 50 0 + 146 07 FEB 01:00 34661 0 500 0 50 0 + 147 07 FEB 02:00 33049 0 500 0 50 0 + 148 07 FEB 03:00 31777 0 500 0 50 0 + 149 07 FEB 04:00 31616 0 500 0 50 0 + 150 07 FEB 05:00 31693 0 500 0 50 0 + 151 07 FEB 06:00 38073 0 500 0 50 0 + 152 07 FEB 07:00 39023 0 500 0 50 0 + 153 07 FEB 08:00 38405 0 500 0 50 0 + 154 07 FEB 09:00 36189 0 500 0 50 0 + 155 07 FEB 10:00 30393 0 500 0 50 0 + 156 07 FEB 11:00 35535 0 500 0 50 0 + 157 07 FEB 12:00 42843 0 500 0 50 0 + 158 07 FEB 13:00 43891 0 500 0 50 0 + 159 07 FEB 14:00 42826 0 500 0 50 0 + 160 07 FEB 15:00 43974 0 500 0 50 0 + 161 07 FEB 16:00 45000 1937 500 40 50 2 + 162 07 FEB 17:00 45000 5358 500 100 50 6 + 163 07 FEB 18:00 45000 5539 500 60 50 6 + 164 07 FEB 19:00 45000 3045 500 40 50 4 + 165 07 FEB 20:00 42494 0 480 0 48 0 + 166 07 FEB 21:00 38634 0 440 0 44 0 + 167 07 FEB 22:00 39132 0 440 0 44 0 + 168 07 FEB 23:00 36502 0 410 0 41 0 diff --git a/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/values-hourly.txt new file mode 100644 index 00000000..a536106c --- /dev/null +++ b/tests/functional/data/thermal_heuristic_two_clusters_low_load/milp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 7 1 168 + +Area hourly OV. COST OP. COST LOAD NUCLEAR GAS UNSP. ENRG SPIL. ENRG + Euro Euro MWh MWh MWh MWh MWh + index day month hour + 1 01 FEB 00:00 211561 210350 19789 21000 0 0 1211 + 2 01 FEB 01:00 210913 210350 20437 21000 0 0 563 + 3 01 FEB 02:00 211253 210350 20097 21000 0 0 903 + 4 01 FEB 03:00 221620 221620 22127 22127 0 0 0 + 5 01 FEB 04:00 239380 239380 23903 23903 0 0 0 + 6 01 FEB 05:00 238350 238350 23800 23800 0 0 0 + 7 01 FEB 06:00 291870 291870 29152 29152 0 0 0 + 8 01 FEB 07:00 288750 288750 28840 28840 0 0 0 + 9 01 FEB 08:00 302810 302810 30246 30246 0 0 0 + 10 01 FEB 09:00 299470 299470 29912 29912 0 0 0 + 11 01 FEB 10:00 274720 274720 27437 27437 0 0 0 + 12 01 FEB 11:00 316230 316230 31543 31500 43 0 0 + 13 01 FEB 12:00 459040 459040 38677 31500 7177 0 0 + 14 01 FEB 13:00 419110 419110 36685 31500 5185 0 0 + 15 01 FEB 14:00 311500 311500 31115 31115 0 0 0 + 16 01 FEB 15:00 226690 226690 22643 22643 0 0 0 + 17 01 FEB 16:00 178960 178960 17874 17874 0 0 0 + 18 01 FEB 17:00 186110 186110 18589 18589 0 0 0 + 19 01 FEB 18:00 190630 190630 19041 19041 0 0 0 + 20 01 FEB 19:00 167440 167440 16725 16725 0 0 0 + 21 01 FEB 20:00 125120 125120 12498 12498 0 0 0 + 22 01 FEB 21:00 115060 115060 11493 11493 0 0 0 + 23 01 FEB 22:00 112690 112690 11256 11256 0 0 0 + 24 01 FEB 23:00 67320 67320 6724 6724 0 0 0 + 25 02 FEB 00:00 6301 6010 309 600 0 0 291 + 26 02 FEB 01:00 6483 6010 127 600 0 0 473 + 27 02 FEB 02:00 6608 6010 2 600 0 0 598 + 28 02 FEB 03:00 6516 6010 94 600 0 0 506 + 29 02 FEB 04:00 6149 6010 461 600 0 0 139 + 30 02 FEB 05:00 6093 6010 517 600 0 0 83 + 31 02 FEB 06:00 7220 7220 721 721 0 0 0 + 32 02 FEB 07:00 10650 10650 981 900 81 0 0 + 33 02 FEB 08:00 40190 40190 1517 1517 0 0 0 + 34 02 FEB 09:00 51760 51760 2673 2673 0 0 0 + 35 02 FEB 10:00 57840 57840 3280 3280 0 0 0 + 36 02 FEB 11:00 205510 205510 8042 8042 0 0 0 + 37 02 FEB 12:00 262100 262100 13147 12600 547 0 0 + 38 02 FEB 13:00 131590 131590 12872 12600 272 0 0 + 39 02 FEB 14:00 94390 94390 9425 9425 0 0 0 + 40 02 FEB 15:00 86270 84140 6270 8400 0 0 2130 + 41 02 FEB 16:00 86513 84140 6027 8400 0 0 2373 + 42 02 FEB 17:00 98140 98140 9800 9800 0 0 0 + 43 02 FEB 18:00 114710 114710 11457 11457 0 0 0 + 44 02 FEB 19:00 113940 113940 11380 11380 0 0 0 + 45 02 FEB 20:00 121070 121070 12093 12093 0 0 0 + 46 02 FEB 21:00 120470 120470 12033 12033 0 0 0 + 47 02 FEB 22:00 201240 201240 14753 14400 353 0 0 + 48 02 FEB 23:00 110770 110770 11061 11061 0 0 0 + 49 03 FEB 00:00 116830 116830 11667 11667 0 0 0 + 50 03 FEB 01:00 128430 128430 12827 12827 0 0 0 + 51 03 FEB 02:00 109450 109450 10929 10929 0 0 0 + 52 03 FEB 03:00 102250 102250 10209 10209 0 0 0 + 53 03 FEB 04:00 96580 96580 9642 9642 0 0 0 + 54 03 FEB 05:00 121880 121880 12172 12172 0 0 0 + 55 03 FEB 06:00 277580 277580 17738 17738 0 0 0 + 56 03 FEB 07:00 246560 246560 19634 19634 0 0 0 + 57 03 FEB 08:00 198980 198980 19837 19800 37 0 0 + 58 03 FEB 09:00 178220 178220 17800 17800 0 0 0 + 59 03 FEB 10:00 134250 134250 13403 13403 0 0 0 + 60 03 FEB 11:00 164150 164150 16393 16393 0 0 0 + 61 03 FEB 12:00 193560 193560 19334 19334 0 0 0 + 62 03 FEB 13:00 175870 175870 17565 17565 0 0 0 + 63 03 FEB 14:00 141460 141460 14124 14124 0 0 0 + 64 03 FEB 15:00 141590 141590 14137 14137 0 0 0 + 65 03 FEB 16:00 133380 133380 13316 13316 0 0 0 + 66 03 FEB 17:00 168410 168410 16819 16819 0 0 0 + 67 03 FEB 18:00 193800 193800 19358 19358 0 0 0 + 68 03 FEB 19:00 156370 156370 15619 15619 0 0 0 + 69 03 FEB 20:00 96490 96490 9638 9638 0 0 0 + 70 03 FEB 21:00 55710 55710 5564 5564 0 0 0 + 71 03 FEB 22:00 52480 52480 5242 5242 0 0 0 + 72 03 FEB 23:00 16890 16890 1687 1687 0 0 0 + 73 04 FEB 00:00 10190 10190 958 900 58 0 0 + 74 04 FEB 01:00 6166 6010 444 600 0 0 156 + 75 04 FEB 02:00 6512 6010 98 600 0 0 502 + 76 04 FEB 03:00 6378 6010 232 600 0 0 368 + 77 04 FEB 04:00 6179 6010 431 600 0 0 169 + 78 04 FEB 05:00 42450 42450 1743 1743 0 0 0 + 79 04 FEB 06:00 321840 321840 9673 9673 0 0 0 + 80 04 FEB 07:00 261110 261110 13595 13595 0 0 0 + 81 04 FEB 08:00 136430 136430 13627 13627 0 0 0 + 82 04 FEB 09:00 130330 130330 13017 13017 0 0 0 + 83 04 FEB 10:00 113810 113810 11365 11365 0 0 0 + 84 04 FEB 11:00 243250 243250 16806 16806 0 0 0 + 85 04 FEB 12:00 267790 267790 21925 17100 4825 0 0 + 86 04 FEB 13:00 229540 229540 20016 17100 2916 0 0 + 87 04 FEB 14:00 166980 166980 16679 16679 0 0 0 + 88 04 FEB 15:00 146250 146250 14606 14606 0 0 0 + 89 04 FEB 16:00 131950 131950 13176 13176 0 0 0 + 90 04 FEB 17:00 156380 156380 15619 15619 0 0 0 + 91 04 FEB 18:00 171930 171930 17136 17100 36 0 0 + 92 04 FEB 19:00 148350 148350 14818 14818 0 0 0 + 93 04 FEB 20:00 111870 111870 11174 11174 0 0 0 + 94 04 FEB 21:00 85450 85450 8535 8535 0 0 0 + 95 04 FEB 22:00 79080 79080 7899 7899 0 0 0 + 96 04 FEB 23:00 42290 42290 4224 4224 0 0 0 + 97 05 FEB 00:00 22120 22120 2209 2209 0 0 0 + 98 05 FEB 01:00 8120 8120 811 811 0 0 0 + 99 05 FEB 02:00 6213 6010 397 600 0 0 203 + 100 05 FEB 03:00 8910 8910 890 890 0 0 0 + 101 05 FEB 04:00 7900 7900 789 789 0 0 0 + 102 05 FEB 05:00 6230 6230 622 622 0 0 0 + 103 05 FEB 06:00 279020 279020 7893 7893 0 0 0 + 104 05 FEB 07:00 280890 280890 13074 13074 0 0 0 + 105 05 FEB 08:00 163420 163420 13826 13826 0 0 0 + 106 05 FEB 09:00 169840 169840 14467 14467 0 0 0 + 107 05 FEB 10:00 124670 124670 12450 12450 0 0 0 + 108 05 FEB 11:00 386420 386420 21118 21118 0 0 0 + 109 05 FEB 12:00 419650 419650 26935 26935 0 0 0 + 110 05 FEB 13:00 263750 263750 26345 26345 0 0 0 + 111 05 FEB 14:00 243980 243980 24368 24368 0 0 0 + 112 05 FEB 15:00 226110 226110 22581 22581 0 0 0 + 113 05 FEB 16:00 244590 244590 24429 24429 0 0 0 + 114 05 FEB 17:00 369010 369010 31131 27900 3231 0 0 + 115 05 FEB 18:00 349630 349630 31414 27900 3514 0 0 + 116 05 FEB 19:00 284520 284520 28160 27900 260 0 0 + 117 05 FEB 20:00 244580 244580 24430 24430 0 0 0 + 118 05 FEB 21:00 223290 223290 22302 22302 0 0 0 + 119 05 FEB 22:00 235060 235060 23479 23479 0 0 0 + 120 05 FEB 23:00 206610 206610 20638 20638 0 0 0 + 121 06 FEB 00:00 112940 112940 11278 11278 0 0 0 + 122 06 FEB 01:00 96215 96160 9545 9600 0 0 55 + 123 06 FEB 02:00 98640 96160 7120 9600 0 0 2480 + 124 06 FEB 03:00 98575 96160 7185 9600 0 0 2415 + 125 06 FEB 04:00 96426 96160 9334 9600 0 0 266 + 126 06 FEB 05:00 129410 129410 12925 12925 0 0 0 + 127 06 FEB 06:00 412460 412460 21222 21222 0 0 0 + 128 06 FEB 07:00 481600 481600 28128 28128 0 0 0 + 129 06 FEB 08:00 347580 347580 29724 29724 0 0 0 + 130 06 FEB 09:00 300090 300090 29975 29975 0 0 0 + 131 06 FEB 10:00 243500 243500 24316 24316 0 0 0 + 132 06 FEB 11:00 276960 276960 27662 27662 0 0 0 + 133 06 FEB 12:00 372190 372190 32183 32183 0 0 0 + 134 06 FEB 13:00 305600 305600 30524 30524 0 0 0 + 135 06 FEB 14:00 303010 303010 30265 30265 0 0 0 + 136 06 FEB 15:00 317650 317650 31729 31729 0 0 0 + 137 06 FEB 16:00 451610 451610 35121 35121 0 0 0 + 138 06 FEB 17:00 558080 558080 40762 40762 0 0 0 + 139 06 FEB 18:00 542350 542350 44185 44185 0 0 0 + 140 06 FEB 19:00 451860 451860 45067 45000 67 0 0 + 141 06 FEB 20:00 419410 419410 41891 41891 0 0 0 + 142 06 FEB 21:00 410980 410980 41048 41048 0 0 0 + 143 06 FEB 22:00 415590 415590 41509 41509 0 0 0 + 144 06 FEB 23:00 394340 394340 39384 39384 0 0 0 + 145 07 FEB 00:00 345830 345830 34533 34533 0 0 0 + 146 07 FEB 01:00 347110 347110 34661 34661 0 0 0 + 147 07 FEB 02:00 330990 330990 33049 33049 0 0 0 + 148 07 FEB 03:00 318270 318270 31777 31777 0 0 0 + 149 07 FEB 04:00 316660 316660 31616 31616 0 0 0 + 150 07 FEB 05:00 317430 317430 31693 31693 0 0 0 + 151 07 FEB 06:00 381230 381230 38073 38073 0 0 0 + 152 07 FEB 07:00 390730 390730 39023 39023 0 0 0 + 153 07 FEB 08:00 384550 384550 38405 38405 0 0 0 + 154 07 FEB 09:00 362390 362390 36189 36189 0 0 0 + 155 07 FEB 10:00 304430 304430 30393 30393 0 0 0 + 156 07 FEB 11:00 355850 355850 35535 35535 0 0 0 + 157 07 FEB 12:00 428930 428930 42843 42843 0 0 0 + 158 07 FEB 13:00 439410 439410 43891 43891 0 0 0 + 159 07 FEB 14:00 428760 428760 42826 42826 0 0 0 + 160 07 FEB 15:00 440240 440240 43974 43974 0 0 0 + 161 07 FEB 16:00 489280 489280 46937 45000 1937 0 0 + 162 07 FEB 17:00 557760 557760 50358 45000 5358 0 0 + 163 07 FEB 18:00 561340 561340 50539 45000 5539 0 0 + 164 07 FEB 19:00 511440 511440 48045 45000 3045 0 0 + 165 07 FEB 20:00 425420 425420 42494 42494 0 0 0 + 166 07 FEB 21:00 386780 386780 38634 38634 0 0 0 + 167 07 FEB 22:00 391760 391760 39132 39132 0 0 0 + 168 07 FEB 23:00 365430 365430 36502 36502 0 0 0 diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py new file mode 100644 index 00000000..1248fe1a --- /dev/null +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -0,0 +1,269 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from math import ceil +from pathlib import Path + +import ortools.linear_solver.pywraplp as pywraplp +import pytest + +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, + Model, +) +from andromede.thermal_heuristic.problem import ( + SolvingParameters, + ThermalProblemBuilder, + TimeScenarioHourParameter, + WeekScenarioIndex, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP + + +@pytest.fixture +def solver_parameters() -> pywraplp.MPSolverParameters: + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + return parameters + + +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_two_clusters_low_load" + + +@pytest.fixture +def models() -> list[Model]: + return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] + + +def test_milp_version( + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] +) -> None: + """ """ + output_indexes = ExpectedOutputIndexes( + idx_generation=4, idx_nodu=8, idx_spillage=10, idx_unsupplied=9 + ) + + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_MODEL_MILP] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) + resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), + ) + + expected_output = ExpectedOutput( + mode="milp", + index=week_scenario_index, + dir_path=data_path, + list_cluster=thermal_problem_builder.heuristic_components(), + output_idx=output_indexes, + ) + expected_output.check_output_values(resolution_step.output) + + expected_cost = [[36036414]] + assert resolution_step.objective == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_accurate_heuristic( + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] +) -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares + """ + + output_indexes = ExpectedOutputIndexes( + idx_generation=4, idx_nodu=8, idx_spillage=11, idx_unsupplied=10 + ) + + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + for g in thermal_problem_builder.heuristic_components(): + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=g, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_MODEL_MILP + ).model, + solving_parameters=SolvingParameters(solver_parameters), + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + [g], + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), + ) + + expected_output = ExpectedOutput( + mode="accurate", + index=week_scenario_index, + dir_path=data_path, + list_cluster=thermal_problem_builder.heuristic_components(), + output_idx=output_indexes, + ) + expected_output.check_output_values(resolution_step_2.output) + + expected_cost = [[36060641]] + assert resolution_step_2.objective == pytest.approx( + expected_cost[scenario][week] + ) + + +def test_fast_heuristic( + solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] +) -> None: + """ + Solve the same problem as before with the heuristic fast of Antares + """ + output_indexes = ExpectedOutputIndexes( + idx_generation=4, idx_nodu=8, idx_spillage=11, idx_unsupplied=10 + ) + + thermal_problem_builder = ThermalProblemBuilder( + fast=True, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + for scenario in range( + thermal_problem_builder.time_scenario_hour_parameter.scenario + ): + for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): + week_scenario_index = WeekScenarioIndex(week, scenario) + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + list_cluster_id=None, + var_to_read="generation", + param_to_update="n_guide", + fn_to_apply=lambda x, y: ceil(round(x / y, 12)), + param_needed_to_compute=["p_max"], + ) + + for g in thermal_problem_builder.heuristic_components(): # + resolution_step_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + id_component=g, + index=week_scenario_index, + model=HeuristicFastModelBuilder( + thermal_problem_builder.time_scenario_hour_parameter.hour, + delta=compute_delta(g, thermal_problem_builder.database), + ).model, + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + [g], + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + solving_parameters=SolvingParameters(solver_parameters), + ) + + expected_output = ExpectedOutput( + mode="fast", + index=week_scenario_index, + dir_path=data_path, + list_cluster=thermal_problem_builder.heuristic_components(), + output_idx=output_indexes, + ) + expected_output.check_output_values( + resolution_step_2.output, + ) + + expected_cost = [[35774633]] + assert resolution_step_2.objective == pytest.approx( + expected_cost[scenario][week] + ) From 75df4fda15e28d7e7c135594fa3a6c96efb8e788 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 8 Aug 2024 15:48:47 +0200 Subject: [PATCH 72/93] New test with ramp --- .../accurate/0/details-hourly.txt | 175 ++++++++ .../accurate/0/values-hourly.txt | 175 ++++++++ .../components.yml | 116 +++++ .../demand-ts.txt | 168 +++++++ .../fast/0/details-hourly.txt | 175 ++++++++ .../fast/0/values-hourly.txt | 175 ++++++++ .../milp/0/details-hourly.txt | 175 ++++++++ .../milp/0/values-hourly.txt | 175 ++++++++ .../functional/libs/lib_thermal_heuristic.py | 119 +++++ ...thermal_heuristic_one_cluster_with_ramp.py | 424 ++++++++++++++++++ 10 files changed, 1877 insertions(+) create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/components.yml create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/demand-ts.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/values-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/details-hourly.txt create mode 100644 tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/values-hourly.txt create mode 100644 tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/details-hourly.txt new file mode 100644 index 00000000..ec6b9f28 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 5 1 168 + +Area hourly gaz gaz gaz gaz gaz + MWh NP Cost - Euro NODU Profit - Euro Ramping Cost - Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 0 + 2 01 JAN 01:00 150 10 1 -16500 0 + 3 01 JAN 02:00 180 0 1 -19800 0 + 4 01 JAN 03:00 210 0 1 -23100 0 + 5 01 JAN 04:00 240 0 1 -26400 0 + 6 01 JAN 05:00 270 0 1 -29700 0 + 7 01 JAN 06:00 300 0 1 329996 0 + 8 01 JAN 07:00 270 0 1 -29700 0 + 9 01 JAN 08:00 240 0 1 -26400 0 + 10 01 JAN 09:00 210 0 1 -23100 0 + 11 01 JAN 10:00 180 0 1 -19800 0 + 12 01 JAN 11:00 150 0 1 -16500 0 + 13 01 JAN 12:00 0 0 0 0 0 + 14 01 JAN 13:00 0 0 0 0 0 + 15 01 JAN 14:00 0 0 0 0 0 + 16 01 JAN 15:00 0 0 0 0 0 + 17 01 JAN 16:00 0 0 0 0 0 + 18 01 JAN 17:00 0 0 0 0 0 + 19 01 JAN 18:00 0 0 0 0 0 + 20 01 JAN 19:00 0 0 0 0 0 + 21 01 JAN 20:00 0 0 0 0 0 + 22 01 JAN 21:00 0 0 0 0 0 + 23 01 JAN 22:00 0 0 0 0 0 + 24 01 JAN 23:00 0 0 0 0 0 + 25 02 JAN 00:00 0 0 0 0 0 + 26 02 JAN 01:00 0 0 0 0 0 + 27 02 JAN 02:00 0 0 0 0 0 + 28 02 JAN 03:00 0 0 0 0 0 + 29 02 JAN 04:00 0 0 0 0 0 + 30 02 JAN 05:00 0 0 0 0 0 + 31 02 JAN 06:00 0 0 0 0 0 + 32 02 JAN 07:00 0 0 0 0 0 + 33 02 JAN 08:00 0 0 0 0 0 + 34 02 JAN 09:00 0 0 0 0 0 + 35 02 JAN 10:00 0 0 0 0 0 + 36 02 JAN 11:00 0 0 0 0 0 + 37 02 JAN 12:00 0 0 0 0 0 + 38 02 JAN 13:00 0 0 0 0 0 + 39 02 JAN 14:00 0 0 0 0 0 + 40 02 JAN 15:00 0 0 0 0 0 + 41 02 JAN 16:00 0 0 0 0 0 + 42 02 JAN 17:00 0 0 0 0 0 + 43 02 JAN 18:00 0 0 0 0 0 + 44 02 JAN 19:00 0 0 0 0 0 + 45 02 JAN 20:00 0 0 0 0 0 + 46 02 JAN 21:00 0 0 0 0 0 + 47 02 JAN 22:00 0 0 0 0 0 + 48 02 JAN 23:00 0 0 0 0 0 + 49 03 JAN 00:00 0 0 0 0 0 + 50 03 JAN 01:00 0 0 0 0 0 + 51 03 JAN 02:00 0 0 0 0 0 + 52 03 JAN 03:00 0 0 0 0 0 + 53 03 JAN 04:00 0 0 0 0 0 + 54 03 JAN 05:00 0 0 0 0 0 + 55 03 JAN 06:00 0 0 0 0 0 + 56 03 JAN 07:00 0 0 0 0 0 + 57 03 JAN 08:00 0 0 0 0 0 + 58 03 JAN 09:00 0 0 0 0 0 + 59 03 JAN 10:00 0 0 0 0 0 + 60 03 JAN 11:00 0 0 0 0 0 + 61 03 JAN 12:00 0 0 0 0 0 + 62 03 JAN 13:00 0 0 0 0 0 + 63 03 JAN 14:00 0 0 0 0 0 + 64 03 JAN 15:00 0 0 0 0 0 + 65 03 JAN 16:00 0 0 0 0 0 + 66 03 JAN 17:00 0 0 0 0 0 + 67 03 JAN 18:00 0 0 0 0 0 + 68 03 JAN 19:00 0 0 0 0 0 + 69 03 JAN 20:00 0 0 0 0 0 + 70 03 JAN 21:00 0 0 0 0 0 + 71 03 JAN 22:00 0 0 0 0 0 + 72 03 JAN 23:00 0 0 0 0 0 + 73 04 JAN 00:00 0 0 0 0 0 + 74 04 JAN 01:00 0 0 0 0 0 + 75 04 JAN 02:00 0 0 0 0 0 + 76 04 JAN 03:00 0 0 0 0 0 + 77 04 JAN 04:00 0 0 0 0 0 + 78 04 JAN 05:00 0 0 0 0 0 + 79 04 JAN 06:00 0 0 0 0 0 + 80 04 JAN 07:00 0 0 0 0 0 + 81 04 JAN 08:00 0 0 0 0 0 + 82 04 JAN 09:00 0 0 0 0 0 + 83 04 JAN 10:00 0 0 0 0 0 + 84 04 JAN 11:00 0 0 0 0 0 + 85 04 JAN 12:00 0 0 0 0 0 + 86 04 JAN 13:00 0 0 0 0 0 + 87 04 JAN 14:00 0 0 0 0 0 + 88 04 JAN 15:00 0 0 0 0 0 + 89 04 JAN 16:00 0 0 0 0 0 + 90 04 JAN 17:00 0 0 0 0 0 + 91 04 JAN 18:00 0 0 0 0 0 + 92 04 JAN 19:00 0 0 0 0 0 + 93 04 JAN 20:00 0 0 0 0 0 + 94 04 JAN 21:00 0 0 0 0 0 + 95 04 JAN 22:00 0 0 0 0 0 + 96 04 JAN 23:00 0 0 0 0 0 + 97 05 JAN 00:00 0 0 0 0 0 + 98 05 JAN 01:00 0 0 0 0 0 + 99 05 JAN 02:00 0 0 0 0 0 + 100 05 JAN 03:00 0 0 0 0 0 + 101 05 JAN 04:00 0 0 0 0 0 + 102 05 JAN 05:00 0 0 0 0 0 + 103 05 JAN 06:00 0 0 0 0 0 + 104 05 JAN 07:00 0 0 0 0 0 + 105 05 JAN 08:00 0 0 0 0 0 + 106 05 JAN 09:00 0 0 0 0 0 + 107 05 JAN 10:00 0 0 0 0 0 + 108 05 JAN 11:00 0 0 0 0 0 + 109 05 JAN 12:00 0 0 0 0 0 + 110 05 JAN 13:00 0 0 0 0 0 + 111 05 JAN 14:00 0 0 0 0 0 + 112 05 JAN 15:00 0 0 0 0 0 + 113 05 JAN 16:00 0 0 0 0 0 + 114 05 JAN 17:00 0 0 0 0 0 + 115 05 JAN 18:00 0 0 0 0 0 + 116 05 JAN 19:00 0 0 0 0 0 + 117 05 JAN 20:00 0 0 0 0 0 + 118 05 JAN 21:00 0 0 0 0 0 + 119 05 JAN 22:00 0 0 0 0 0 + 120 05 JAN 23:00 0 0 0 0 0 + 121 06 JAN 00:00 0 0 0 0 0 + 122 06 JAN 01:00 0 0 0 0 0 + 123 06 JAN 02:00 0 0 0 0 0 + 124 06 JAN 03:00 0 0 0 0 0 + 125 06 JAN 04:00 0 0 0 0 0 + 126 06 JAN 05:00 0 0 0 0 0 + 127 06 JAN 06:00 0 0 0 0 0 + 128 06 JAN 07:00 0 0 0 0 0 + 129 06 JAN 08:00 0 0 0 0 0 + 130 06 JAN 09:00 0 0 0 0 0 + 131 06 JAN 10:00 0 0 0 0 0 + 132 06 JAN 11:00 0 0 0 0 0 + 133 06 JAN 12:00 0 0 0 0 0 + 134 06 JAN 13:00 0 0 0 0 0 + 135 06 JAN 14:00 0 0 0 0 0 + 136 06 JAN 15:00 0 0 0 0 0 + 137 06 JAN 16:00 0 0 0 0 0 + 138 06 JAN 17:00 0 0 0 0 0 + 139 06 JAN 18:00 0 0 0 0 0 + 140 06 JAN 19:00 0 0 0 0 0 + 141 06 JAN 20:00 0 0 0 0 0 + 142 06 JAN 21:00 0 0 0 0 0 + 143 06 JAN 22:00 0 0 0 0 0 + 144 06 JAN 23:00 0 0 0 0 0 + 145 07 JAN 00:00 0 0 0 0 0 + 146 07 JAN 01:00 0 0 0 0 0 + 147 07 JAN 02:00 0 0 0 0 0 + 148 07 JAN 03:00 0 0 0 0 0 + 149 07 JAN 04:00 0 0 0 0 0 + 150 07 JAN 05:00 0 0 0 0 0 + 151 07 JAN 06:00 0 0 0 0 0 + 152 07 JAN 07:00 0 0 0 0 0 + 153 07 JAN 08:00 0 0 0 0 0 + 154 07 JAN 09:00 0 0 0 0 0 + 155 07 JAN 10:00 0 0 0 0 0 + 156 07 JAN 11:00 0 0 0 0 0 + 157 07 JAN 12:00 0 0 0 0 0 + 158 07 JAN 13:00 0 0 0 0 0 + 159 07 JAN 14:00 0 0 0 0 0 + 160 07 JAN 15:00 0 0 0 0 0 + 161 07 JAN 16:00 0 0 0 0 0 + 162 07 JAN 17:00 0 0 0 0 0 + 163 07 JAN 18:00 0 0 0 0 0 + 164 07 JAN 19:00 0 0 0 0 0 + 165 07 JAN 20:00 0 0 0 0 0 + 166 07 JAN 21:00 0 0 0 0 0 + 167 07 JAN 22:00 0 0 0 0 0 + 168 07 JAN 23:00 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/values-hourly.txt new file mode 100644 index 00000000..b9da678c --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/accurate/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 58 1 168 + +Area hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. NH3 EMIS. SO2 EMIS. NOX EMIS. PM2_5 EMIS. PM5 EMIS. PM10 EMIS. NMVOC EMIS. OP1 EMIS. OP2 EMIS. OP3 EMIS. OP4 EMIS. OP5 EMIS. BALANCE ROW BAL. PSP MISC. NDG LOAD H. ROR NUCLEAR LIGNITE COAL GAS OIL MIX. FUEL MISC. DTG MISC. DTG 2 MISC. DTG 3 MISC. DTG 4 WIND OFFSHORE WIND ONSHORE SOLAR CONCRT. SOLAR PV SOLAR ROOFT RENW. 1 RENW. 2 RENW. 3 RENW. 4 H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST NODU RAMP COST + Euro Euro Euro Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 2 01 JAN 01:00 11510 1510 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 100 0 0 1500 1350 1450 10 1 0 + 3 01 JAN 02:00 9800 1800 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 180 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 80 0 0 1500 1320 1400 0 1 0 + 4 01 JAN 03:00 8100 2100 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 210 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 60 0 0 1500 1290 1350 0 1 0 + 5 01 JAN 04:00 6400 2400 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 240 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 40 0 0 1500 1260 1300 0 1 0 + 6 01 JAN 05:00 4700 2700 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 270 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 20 0 0 1500 1230 1250 0 1 0 + 7 01 JAN 06:00 3000 3000 1109.99 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 300 0 0 0 0 300 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1200 1200 0 1 0 + 8 01 JAN 07:00 4700 2700 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 270 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 20 0 0 1500 1230 1250 0 1 0 + 9 01 JAN 08:00 6400 2400 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 240 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 40 0 0 1500 1260 1300 0 1 0 + 10 01 JAN 09:00 8100 2100 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 210 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 60 0 0 1500 1290 1350 0 1 0 + 11 01 JAN 10:00 9800 1800 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 180 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 80 0 0 1500 1320 1400 0 1 0 + 12 01 JAN 11:00 11500 1500 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 100 0 0 1500 1350 1450 0 1 0 + 13 01 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 14 01 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 15 01 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 16 01 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 17 01 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 18 01 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 19 01 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 20 01 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 21 01 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 22 01 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 23 01 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 24 01 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 25 02 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 26 02 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 27 02 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 28 02 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 29 02 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 30 02 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 31 02 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 32 02 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 33 02 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 34 02 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 35 02 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 36 02 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 37 02 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 38 02 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 39 02 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 40 02 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 41 02 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 42 02 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 43 02 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 44 02 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 45 02 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 46 02 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 47 02 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 48 02 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 49 03 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 50 03 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 51 03 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 52 03 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 53 03 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 54 03 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 55 03 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 56 03 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 57 03 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 58 03 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 59 03 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 60 03 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 61 03 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 62 03 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 63 03 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 64 03 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 65 03 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 66 03 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 67 03 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 68 03 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 69 03 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 70 03 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 71 03 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 72 03 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 73 04 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 74 04 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 75 04 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 76 04 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 77 04 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 78 04 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 79 04 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 80 04 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 81 04 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 82 04 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 83 04 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 84 04 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 85 04 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 86 04 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 87 04 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 88 04 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 89 04 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 90 04 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 91 04 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 92 04 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 93 04 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 94 04 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 95 04 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 96 04 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 97 05 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 98 05 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 99 05 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 100 05 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 101 05 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 102 05 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 103 05 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 104 05 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 105 05 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 106 05 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 107 05 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 108 05 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 109 05 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 110 05 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 111 05 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 112 05 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 113 05 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 114 05 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 115 05 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 116 05 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 117 05 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 118 05 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 119 05 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 120 05 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 121 06 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 122 06 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 123 06 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 124 06 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 125 06 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 126 06 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 127 06 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 128 06 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 129 06 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 130 06 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 131 06 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 132 06 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 133 06 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 134 06 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 135 06 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 136 06 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 137 06 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 138 06 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 139 06 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 140 06 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 141 06 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 142 06 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 143 06 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 144 06 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 145 07 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 146 07 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 147 07 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 148 07 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 149 07 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 150 07 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 151 07 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 152 07 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 153 07 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 154 07 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 155 07 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 156 07 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 157 07 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 158 07 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 159 07 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 160 07 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 161 07 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 162 07 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 163 07 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 164 07 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 165 07 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 166 07 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 167 07 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 168 07 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/components.yml b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/components.yml new file mode 100644 index 00000000..44257b0f --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/components.yml @@ -0,0 +1,116 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + nodes: + - id: N + model: NODE_BALANCE_MODEL + + components: + - id: D + model: FIXED_DEMAND + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: S + model: SPI + parameters: + - name: cost + type: constant + value: 100 + - id: U + model: UNSP + parameters: + - name: cost + type: constant + value: 10000 + - id: G + model: GEN + parameters: + - name: p_max + type: constant + value: 500 + - name: p_min + type: constant + value: 100 + - name: cost + type: constant + value: 10 + - name: startup_cost + type: constant + value: 10 + - name: fixed_cost + type: constant + value: 0 + - name: d_min_up + type: constant + value: 1 + - name: d_min_down + type: constant + value: 1 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: nb_start_max + type: constant + value: 3 + - name: nb_stop_max + type: constant + value: 3 + - name: max_failure + type: constant + value: 0 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: constant + value: 1500 + - name: nb_units_max_min_down_time + type: constant + value: 3 + - name: max_upward_ramping_rate + type: constant + value: 30 + - name: max_downward_ramping_rate + type: constant + value: 30 + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G + port_2: balance_port + + - component1: N + port_1: balance_port + component2: U + port_2: balance_port + + - component1: N + port_1: balance_port + component2: S + port_2: balance_port + + + + + diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/demand-ts.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/demand-ts.txt new file mode 100644 index 00000000..486c53a0 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/demand-ts.txt @@ -0,0 +1,168 @@ +0 +50 +100 +150 +200 +250 +300 +250 +200 +150 +100 +50 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/details-hourly.txt new file mode 100644 index 00000000..52048487 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 5 1 168 + +Area hourly gaz gaz gaz gaz gaz + MWh NP Cost - Euro NODU Profit - Euro Ramping Cost - Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 0 + 2 01 JAN 01:00 100 10 1 0 0 + 3 01 JAN 02:00 100 0 1 0 0 + 4 01 JAN 03:00 150 0 1 -0 0 + 5 01 JAN 04:00 200 0 1 -0 0 + 6 01 JAN 05:00 250 0 1 -0 0 + 7 01 JAN 06:00 300 0 1 -0 0 + 8 01 JAN 07:00 250 0 1 -0 0 + 9 01 JAN 08:00 200 0 1 -0 0 + 10 01 JAN 09:00 150 0 1 -0 0 + 11 01 JAN 10:00 100 0 1 0 0 + 12 01 JAN 11:00 100 0 1 0 0 + 13 01 JAN 12:00 0 0 0 0 0 + 14 01 JAN 13:00 0 0 0 0 0 + 15 01 JAN 14:00 0 0 0 0 0 + 16 01 JAN 15:00 0 0 0 0 0 + 17 01 JAN 16:00 0 0 0 0 0 + 18 01 JAN 17:00 0 0 0 0 0 + 19 01 JAN 18:00 0 0 0 0 0 + 20 01 JAN 19:00 0 0 0 0 0 + 21 01 JAN 20:00 0 0 0 0 0 + 22 01 JAN 21:00 0 0 0 0 0 + 23 01 JAN 22:00 0 0 0 0 0 + 24 01 JAN 23:00 0 0 0 0 0 + 25 02 JAN 00:00 0 0 0 0 0 + 26 02 JAN 01:00 0 0 0 0 0 + 27 02 JAN 02:00 0 0 0 0 0 + 28 02 JAN 03:00 0 0 0 0 0 + 29 02 JAN 04:00 0 0 0 0 0 + 30 02 JAN 05:00 0 0 0 0 0 + 31 02 JAN 06:00 0 0 0 0 0 + 32 02 JAN 07:00 0 0 0 0 0 + 33 02 JAN 08:00 0 0 0 0 0 + 34 02 JAN 09:00 0 0 0 0 0 + 35 02 JAN 10:00 0 0 0 0 0 + 36 02 JAN 11:00 0 0 0 0 0 + 37 02 JAN 12:00 0 0 0 0 0 + 38 02 JAN 13:00 0 0 0 0 0 + 39 02 JAN 14:00 0 0 0 0 0 + 40 02 JAN 15:00 0 0 0 0 0 + 41 02 JAN 16:00 0 0 0 0 0 + 42 02 JAN 17:00 0 0 0 0 0 + 43 02 JAN 18:00 0 0 0 0 0 + 44 02 JAN 19:00 0 0 0 0 0 + 45 02 JAN 20:00 0 0 0 0 0 + 46 02 JAN 21:00 0 0 0 0 0 + 47 02 JAN 22:00 0 0 0 0 0 + 48 02 JAN 23:00 0 0 0 0 0 + 49 03 JAN 00:00 0 0 0 0 0 + 50 03 JAN 01:00 0 0 0 0 0 + 51 03 JAN 02:00 0 0 0 0 0 + 52 03 JAN 03:00 0 0 0 0 0 + 53 03 JAN 04:00 0 0 0 0 0 + 54 03 JAN 05:00 0 0 0 0 0 + 55 03 JAN 06:00 0 0 0 0 0 + 56 03 JAN 07:00 0 0 0 0 0 + 57 03 JAN 08:00 0 0 0 0 0 + 58 03 JAN 09:00 0 0 0 0 0 + 59 03 JAN 10:00 0 0 0 0 0 + 60 03 JAN 11:00 0 0 0 0 0 + 61 03 JAN 12:00 0 0 0 0 0 + 62 03 JAN 13:00 0 0 0 0 0 + 63 03 JAN 14:00 0 0 0 0 0 + 64 03 JAN 15:00 0 0 0 0 0 + 65 03 JAN 16:00 0 0 0 0 0 + 66 03 JAN 17:00 0 0 0 0 0 + 67 03 JAN 18:00 0 0 0 0 0 + 68 03 JAN 19:00 0 0 0 0 0 + 69 03 JAN 20:00 0 0 0 0 0 + 70 03 JAN 21:00 0 0 0 0 0 + 71 03 JAN 22:00 0 0 0 0 0 + 72 03 JAN 23:00 0 0 0 0 0 + 73 04 JAN 00:00 0 0 0 0 0 + 74 04 JAN 01:00 0 0 0 0 0 + 75 04 JAN 02:00 0 0 0 0 0 + 76 04 JAN 03:00 0 0 0 0 0 + 77 04 JAN 04:00 0 0 0 0 0 + 78 04 JAN 05:00 0 0 0 0 0 + 79 04 JAN 06:00 0 0 0 0 0 + 80 04 JAN 07:00 0 0 0 0 0 + 81 04 JAN 08:00 0 0 0 0 0 + 82 04 JAN 09:00 0 0 0 0 0 + 83 04 JAN 10:00 0 0 0 0 0 + 84 04 JAN 11:00 0 0 0 0 0 + 85 04 JAN 12:00 0 0 0 0 0 + 86 04 JAN 13:00 0 0 0 0 0 + 87 04 JAN 14:00 0 0 0 0 0 + 88 04 JAN 15:00 0 0 0 0 0 + 89 04 JAN 16:00 0 0 0 0 0 + 90 04 JAN 17:00 0 0 0 0 0 + 91 04 JAN 18:00 0 0 0 0 0 + 92 04 JAN 19:00 0 0 0 0 0 + 93 04 JAN 20:00 0 0 0 0 0 + 94 04 JAN 21:00 0 0 0 0 0 + 95 04 JAN 22:00 0 0 0 0 0 + 96 04 JAN 23:00 0 0 0 0 0 + 97 05 JAN 00:00 0 0 0 0 0 + 98 05 JAN 01:00 0 0 0 0 0 + 99 05 JAN 02:00 0 0 0 0 0 + 100 05 JAN 03:00 0 0 0 0 0 + 101 05 JAN 04:00 0 0 0 0 0 + 102 05 JAN 05:00 0 0 0 0 0 + 103 05 JAN 06:00 0 0 0 0 0 + 104 05 JAN 07:00 0 0 0 0 0 + 105 05 JAN 08:00 0 0 0 0 0 + 106 05 JAN 09:00 0 0 0 0 0 + 107 05 JAN 10:00 0 0 0 0 0 + 108 05 JAN 11:00 0 0 0 0 0 + 109 05 JAN 12:00 0 0 0 0 0 + 110 05 JAN 13:00 0 0 0 0 0 + 111 05 JAN 14:00 0 0 0 0 0 + 112 05 JAN 15:00 0 0 0 0 0 + 113 05 JAN 16:00 0 0 0 0 0 + 114 05 JAN 17:00 0 0 0 0 0 + 115 05 JAN 18:00 0 0 0 0 0 + 116 05 JAN 19:00 0 0 0 0 0 + 117 05 JAN 20:00 0 0 0 0 0 + 118 05 JAN 21:00 0 0 0 0 0 + 119 05 JAN 22:00 0 0 0 0 0 + 120 05 JAN 23:00 0 0 0 0 0 + 121 06 JAN 00:00 0 0 0 0 0 + 122 06 JAN 01:00 0 0 0 0 0 + 123 06 JAN 02:00 0 0 0 0 0 + 124 06 JAN 03:00 0 0 0 0 0 + 125 06 JAN 04:00 0 0 0 0 0 + 126 06 JAN 05:00 0 0 0 0 0 + 127 06 JAN 06:00 0 0 0 0 0 + 128 06 JAN 07:00 0 0 0 0 0 + 129 06 JAN 08:00 0 0 0 0 0 + 130 06 JAN 09:00 0 0 0 0 0 + 131 06 JAN 10:00 0 0 0 0 0 + 132 06 JAN 11:00 0 0 0 0 0 + 133 06 JAN 12:00 0 0 0 0 0 + 134 06 JAN 13:00 0 0 0 0 0 + 135 06 JAN 14:00 0 0 0 0 0 + 136 06 JAN 15:00 0 0 0 0 0 + 137 06 JAN 16:00 0 0 0 0 0 + 138 06 JAN 17:00 0 0 0 0 0 + 139 06 JAN 18:00 0 0 0 0 0 + 140 06 JAN 19:00 0 0 0 0 0 + 141 06 JAN 20:00 0 0 0 0 0 + 142 06 JAN 21:00 0 0 0 0 0 + 143 06 JAN 22:00 0 0 0 0 0 + 144 06 JAN 23:00 0 0 0 0 0 + 145 07 JAN 00:00 0 0 0 0 0 + 146 07 JAN 01:00 0 0 0 0 0 + 147 07 JAN 02:00 0 0 0 0 0 + 148 07 JAN 03:00 0 0 0 0 0 + 149 07 JAN 04:00 0 0 0 0 0 + 150 07 JAN 05:00 0 0 0 0 0 + 151 07 JAN 06:00 0 0 0 0 0 + 152 07 JAN 07:00 0 0 0 0 0 + 153 07 JAN 08:00 0 0 0 0 0 + 154 07 JAN 09:00 0 0 0 0 0 + 155 07 JAN 10:00 0 0 0 0 0 + 156 07 JAN 11:00 0 0 0 0 0 + 157 07 JAN 12:00 0 0 0 0 0 + 158 07 JAN 13:00 0 0 0 0 0 + 159 07 JAN 14:00 0 0 0 0 0 + 160 07 JAN 15:00 0 0 0 0 0 + 161 07 JAN 16:00 0 0 0 0 0 + 162 07 JAN 17:00 0 0 0 0 0 + 163 07 JAN 18:00 0 0 0 0 0 + 164 07 JAN 19:00 0 0 0 0 0 + 165 07 JAN 20:00 0 0 0 0 0 + 166 07 JAN 21:00 0 0 0 0 0 + 167 07 JAN 22:00 0 0 0 0 0 + 168 07 JAN 23:00 0 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/values-hourly.txt new file mode 100644 index 00000000..a58be2fc --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/fast/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 58 1 168 + +Area hourly OV. COST OP. COST MRG. PRICE CO2 EMIS. NH3 EMIS. SO2 EMIS. NOX EMIS. PM2_5 EMIS. PM5 EMIS. PM10 EMIS. NMVOC EMIS. OP1 EMIS. OP2 EMIS. OP3 EMIS. OP4 EMIS. OP5 EMIS. BALANCE ROW BAL. PSP MISC. NDG LOAD H. ROR NUCLEAR LIGNITE COAL GAS OIL MIX. FUEL MISC. DTG MISC. DTG 2 MISC. DTG 3 MISC. DTG 4 WIND OFFSHORE WIND ONSHORE SOLAR CONCRT. SOLAR PV SOLAR ROOFT RENW. 1 RENW. 2 RENW. 3 RENW. 4 H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST NODU RAMP COST + Euro Euro Euro Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 2 01 JAN 01:00 6010 1010 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 50 0 0 1500 1400 1450 10 1 0 + 3 01 JAN 02:00 1000 1000 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1400 1400 0 1 0 + 4 01 JAN 03:00 1500 1500 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1350 1350 0 1 0 + 5 01 JAN 04:00 2000 2000 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 200 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1300 1300 0 1 0 + 6 01 JAN 05:00 2500 2500 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1250 1250 0 1 0 + 7 01 JAN 06:00 3000 3000 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 300 0 0 0 0 300 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1200 1200 0 1 0 + 8 01 JAN 07:00 2500 2500 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1250 1250 0 1 0 + 9 01 JAN 08:00 2000 2000 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 200 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1300 1300 0 1 0 + 10 01 JAN 09:00 1500 1500 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1350 1350 0 1 0 + 11 01 JAN 10:00 1000 1000 10.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1400 1400 0 1 0 + 12 01 JAN 11:00 6000 1000 -100.00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 50 0 0 1500 1400 1450 0 1 0 + 13 01 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 14 01 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 15 01 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 16 01 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 17 01 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 18 01 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 19 01 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 20 01 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 21 01 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 22 01 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 23 01 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 24 01 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 25 02 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 26 02 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 27 02 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 28 02 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 29 02 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 30 02 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 31 02 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 32 02 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 33 02 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 34 02 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 35 02 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 36 02 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 37 02 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 38 02 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 39 02 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 40 02 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 41 02 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 42 02 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 43 02 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 44 02 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 45 02 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 46 02 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 47 02 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 48 02 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 49 03 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 50 03 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 51 03 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 52 03 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 53 03 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 54 03 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 55 03 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 56 03 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 57 03 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 58 03 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 59 03 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 60 03 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 61 03 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 62 03 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 63 03 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 64 03 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 65 03 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 66 03 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 67 03 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 68 03 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 69 03 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 70 03 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 71 03 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 72 03 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 73 04 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 74 04 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 75 04 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 76 04 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 77 04 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 78 04 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 79 04 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 80 04 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 81 04 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 82 04 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 83 04 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 84 04 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 85 04 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 86 04 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 87 04 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 88 04 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 89 04 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 90 04 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 91 04 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 92 04 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 93 04 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 94 04 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 95 04 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 96 04 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 97 05 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 98 05 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 99 05 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 100 05 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 101 05 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 102 05 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 103 05 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 104 05 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 105 05 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 106 05 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 107 05 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 108 05 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 109 05 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 110 05 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 111 05 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 112 05 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 113 05 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 114 05 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 115 05 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 116 05 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 117 05 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 118 05 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 119 05 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 120 05 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 121 06 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 122 06 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 123 06 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 124 06 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 125 06 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 126 06 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 127 06 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 128 06 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 129 06 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 130 06 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 131 06 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 132 06 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 133 06 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 134 06 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 135 06 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 136 06 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 137 06 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 138 06 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 139 06 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 140 06 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 141 06 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 142 06 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 143 06 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 144 06 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 145 07 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 146 07 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 147 07 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 148 07 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 149 07 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 150 07 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 151 07 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 152 07 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 153 07 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 154 07 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 155 07 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 156 07 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 157 07 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 158 07 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 159 07 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 160 07 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 161 07 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 162 07 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 163 07 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 164 07 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 165 07 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 166 07 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 167 07 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 168 07 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/details-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/details-hourly.txt new file mode 100644 index 00000000..59c4f2b1 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/details-hourly.txt @@ -0,0 +1,175 @@ +Area area de hourly + VARIABLES BEGIN END + 4 1 168 + +Area hourly gaz gaz gaz gaz + MWh NP Cost - Euro NODU Ramping Cost - Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 + 2 01 JAN 01:00 100 10 1 0 + 3 01 JAN 02:00 100 0 1 0 + 4 01 JAN 03:00 150 0 1 0 + 5 01 JAN 04:00 200 10 2 0 + 6 01 JAN 05:00 250 0 2 0 + 7 01 JAN 06:00 300 0 2 0 + 8 01 JAN 07:00 250 0 2 0 + 9 01 JAN 08:00 200 0 2 0 + 10 01 JAN 09:00 150 0 1 0 + 11 01 JAN 10:00 100 0 1 0 + 12 01 JAN 11:00 100 0 1 0 + 13 01 JAN 12:00 0 0 0 0 + 14 01 JAN 13:00 0 0 0 0 + 15 01 JAN 14:00 0 0 0 0 + 16 01 JAN 15:00 0 0 0 0 + 17 01 JAN 16:00 0 0 0 0 + 18 01 JAN 17:00 0 0 0 0 + 19 01 JAN 18:00 0 0 0 0 + 20 01 JAN 19:00 0 0 0 0 + 21 01 JAN 20:00 0 0 0 0 + 22 01 JAN 21:00 0 0 0 0 + 23 01 JAN 22:00 0 0 0 0 + 24 01 JAN 23:00 0 0 0 0 + 25 02 JAN 00:00 0 0 0 0 + 26 02 JAN 01:00 0 0 0 0 + 27 02 JAN 02:00 0 0 0 0 + 28 02 JAN 03:00 0 0 0 0 + 29 02 JAN 04:00 0 0 0 0 + 30 02 JAN 05:00 0 0 0 0 + 31 02 JAN 06:00 0 0 0 0 + 32 02 JAN 07:00 0 0 0 0 + 33 02 JAN 08:00 0 0 0 0 + 34 02 JAN 09:00 0 0 0 0 + 35 02 JAN 10:00 0 0 0 0 + 36 02 JAN 11:00 0 0 0 0 + 37 02 JAN 12:00 0 0 0 0 + 38 02 JAN 13:00 0 0 0 0 + 39 02 JAN 14:00 0 0 0 0 + 40 02 JAN 15:00 0 0 0 0 + 41 02 JAN 16:00 0 0 0 0 + 42 02 JAN 17:00 0 0 0 0 + 43 02 JAN 18:00 0 0 0 0 + 44 02 JAN 19:00 0 0 0 0 + 45 02 JAN 20:00 0 0 0 0 + 46 02 JAN 21:00 0 0 0 0 + 47 02 JAN 22:00 0 0 0 0 + 48 02 JAN 23:00 0 0 0 0 + 49 03 JAN 00:00 0 0 0 0 + 50 03 JAN 01:00 0 0 0 0 + 51 03 JAN 02:00 0 0 0 0 + 52 03 JAN 03:00 0 0 0 0 + 53 03 JAN 04:00 0 0 0 0 + 54 03 JAN 05:00 0 0 0 0 + 55 03 JAN 06:00 0 0 0 0 + 56 03 JAN 07:00 0 0 0 0 + 57 03 JAN 08:00 0 0 0 0 + 58 03 JAN 09:00 0 0 0 0 + 59 03 JAN 10:00 0 0 0 0 + 60 03 JAN 11:00 0 0 0 0 + 61 03 JAN 12:00 0 0 0 0 + 62 03 JAN 13:00 0 0 0 0 + 63 03 JAN 14:00 0 0 0 0 + 64 03 JAN 15:00 0 0 0 0 + 65 03 JAN 16:00 0 0 0 0 + 66 03 JAN 17:00 0 0 0 0 + 67 03 JAN 18:00 0 0 0 0 + 68 03 JAN 19:00 0 0 0 0 + 69 03 JAN 20:00 0 0 0 0 + 70 03 JAN 21:00 0 0 0 0 + 71 03 JAN 22:00 0 0 0 0 + 72 03 JAN 23:00 0 0 0 0 + 73 04 JAN 00:00 0 0 0 0 + 74 04 JAN 01:00 0 0 0 0 + 75 04 JAN 02:00 0 0 0 0 + 76 04 JAN 03:00 0 0 0 0 + 77 04 JAN 04:00 0 0 0 0 + 78 04 JAN 05:00 0 0 0 0 + 79 04 JAN 06:00 0 0 0 0 + 80 04 JAN 07:00 0 0 0 0 + 81 04 JAN 08:00 0 0 0 0 + 82 04 JAN 09:00 0 0 0 0 + 83 04 JAN 10:00 0 0 0 0 + 84 04 JAN 11:00 0 0 0 0 + 85 04 JAN 12:00 0 0 0 0 + 86 04 JAN 13:00 0 0 0 0 + 87 04 JAN 14:00 0 0 0 0 + 88 04 JAN 15:00 0 0 0 0 + 89 04 JAN 16:00 0 0 0 0 + 90 04 JAN 17:00 0 0 0 0 + 91 04 JAN 18:00 0 0 0 0 + 92 04 JAN 19:00 0 0 0 0 + 93 04 JAN 20:00 0 0 0 0 + 94 04 JAN 21:00 0 0 0 0 + 95 04 JAN 22:00 0 0 0 0 + 96 04 JAN 23:00 0 0 0 0 + 97 05 JAN 00:00 0 0 0 0 + 98 05 JAN 01:00 0 0 0 0 + 99 05 JAN 02:00 0 0 0 0 + 100 05 JAN 03:00 0 0 0 0 + 101 05 JAN 04:00 0 0 0 0 + 102 05 JAN 05:00 0 0 0 0 + 103 05 JAN 06:00 0 0 0 0 + 104 05 JAN 07:00 0 0 0 0 + 105 05 JAN 08:00 0 0 0 0 + 106 05 JAN 09:00 0 0 0 0 + 107 05 JAN 10:00 0 0 0 0 + 108 05 JAN 11:00 0 0 0 0 + 109 05 JAN 12:00 0 0 0 0 + 110 05 JAN 13:00 0 0 0 0 + 111 05 JAN 14:00 0 0 0 0 + 112 05 JAN 15:00 0 0 0 0 + 113 05 JAN 16:00 0 0 0 0 + 114 05 JAN 17:00 0 0 0 0 + 115 05 JAN 18:00 0 0 0 0 + 116 05 JAN 19:00 0 0 0 0 + 117 05 JAN 20:00 0 0 0 0 + 118 05 JAN 21:00 0 0 0 0 + 119 05 JAN 22:00 0 0 0 0 + 120 05 JAN 23:00 0 0 0 0 + 121 06 JAN 00:00 0 0 0 0 + 122 06 JAN 01:00 0 0 0 0 + 123 06 JAN 02:00 0 0 0 0 + 124 06 JAN 03:00 0 0 0 0 + 125 06 JAN 04:00 0 0 0 0 + 126 06 JAN 05:00 0 0 0 0 + 127 06 JAN 06:00 0 0 0 0 + 128 06 JAN 07:00 0 0 0 0 + 129 06 JAN 08:00 0 0 0 0 + 130 06 JAN 09:00 0 0 0 0 + 131 06 JAN 10:00 0 0 0 0 + 132 06 JAN 11:00 0 0 0 0 + 133 06 JAN 12:00 0 0 0 0 + 134 06 JAN 13:00 0 0 0 0 + 135 06 JAN 14:00 0 0 0 0 + 136 06 JAN 15:00 0 0 0 0 + 137 06 JAN 16:00 0 0 0 0 + 138 06 JAN 17:00 0 0 0 0 + 139 06 JAN 18:00 0 0 0 0 + 140 06 JAN 19:00 0 0 0 0 + 141 06 JAN 20:00 0 0 0 0 + 142 06 JAN 21:00 0 0 0 0 + 143 06 JAN 22:00 0 0 0 0 + 144 06 JAN 23:00 0 0 0 0 + 145 07 JAN 00:00 0 0 0 0 + 146 07 JAN 01:00 0 0 0 0 + 147 07 JAN 02:00 0 0 0 0 + 148 07 JAN 03:00 0 0 0 0 + 149 07 JAN 04:00 0 0 0 0 + 150 07 JAN 05:00 0 0 0 0 + 151 07 JAN 06:00 0 0 0 0 + 152 07 JAN 07:00 0 0 0 0 + 153 07 JAN 08:00 0 0 0 0 + 154 07 JAN 09:00 0 0 0 0 + 155 07 JAN 10:00 0 0 0 0 + 156 07 JAN 11:00 0 0 0 0 + 157 07 JAN 12:00 0 0 0 0 + 158 07 JAN 13:00 0 0 0 0 + 159 07 JAN 14:00 0 0 0 0 + 160 07 JAN 15:00 0 0 0 0 + 161 07 JAN 16:00 0 0 0 0 + 162 07 JAN 17:00 0 0 0 0 + 163 07 JAN 18:00 0 0 0 0 + 164 07 JAN 19:00 0 0 0 0 + 165 07 JAN 20:00 0 0 0 0 + 166 07 JAN 21:00 0 0 0 0 + 167 07 JAN 22:00 0 0 0 0 + 168 07 JAN 23:00 0 0 0 0 diff --git a/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/values-hourly.txt b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/values-hourly.txt new file mode 100644 index 00000000..4135d90b --- /dev/null +++ b/tests/functional/data/thermal_heuristic_one_cluster_with_ramp/milp/0/values-hourly.txt @@ -0,0 +1,175 @@ +Area area va hourly + VARIABLES BEGIN END + 57 1 168 + +Area hourly OV. COST OP. COST CO2 EMIS. NH3 EMIS. SO2 EMIS. NOX EMIS. PM2_5 EMIS. PM5 EMIS. PM10 EMIS. NMVOC EMIS. OP1 EMIS. OP2 EMIS. OP3 EMIS. OP4 EMIS. OP5 EMIS. BALANCE ROW BAL. PSP MISC. NDG LOAD H. ROR NUCLEAR LIGNITE COAL GAS OIL MIX. FUEL MISC. DTG MISC. DTG 2 MISC. DTG 3 MISC. DTG 4 WIND OFFSHORE WIND ONSHORE SOLAR CONCRT. SOLAR PV SOLAR ROOFT RENW. 1 RENW. 2 RENW. 3 RENW. 4 H. STOR H. PUMP H. LEV H. INFL H. OVFL H. VAL H. COST UNSP. ENRG SPIL. ENRG LOLD LOLP AVL DTG DTG MRG MAX MRG NP COST NODU RAMP COST + Euro Euro Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons Tons MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh MWh % MWh % Euro/MWh Euro MWh MWh Hours % MWh MWh MWh Euro Euro + index day month hour + 1 01 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 2 01 JAN 01:00 6010 1010 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 50 0 0 1500 1400 1450 10 1 0 + 3 01 JAN 02:00 1000 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1400 1400 0 1 0 + 4 01 JAN 03:00 1500 1500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1350 1350 0 1 0 + 5 01 JAN 04:00 2010 2010 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 200 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1300 1300 10 2 0 + 6 01 JAN 05:00 2500 2500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1250 1250 0 2 0 + 7 01 JAN 06:00 3000 3000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 300 0 0 0 0 300 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1200 1200 0 2 0 + 8 01 JAN 07:00 2500 2500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 250 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1250 1250 0 2 0 + 9 01 JAN 08:00 2000 2000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 200 0 0 0 0 200 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1300 1300 0 2 0 + 10 01 JAN 09:00 1500 1500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 150 0 0 0 0 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1350 1350 0 1 0 + 11 01 JAN 10:00 1000 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1400 1400 0 1 0 + 12 01 JAN 11:00 6000 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 50 0 0 1500 1400 1450 0 1 0 + 13 01 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 14 01 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 15 01 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 16 01 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 17 01 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 18 01 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 19 01 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 20 01 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 21 01 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 22 01 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 23 01 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 24 01 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 25 02 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 26 02 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 27 02 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 28 02 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 29 02 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 30 02 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 31 02 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 32 02 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 33 02 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 34 02 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 35 02 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 36 02 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 37 02 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 38 02 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 39 02 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 40 02 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 41 02 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 42 02 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 43 02 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 44 02 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 45 02 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 46 02 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 47 02 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 48 02 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 49 03 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 50 03 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 51 03 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 52 03 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 53 03 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 54 03 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 55 03 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 56 03 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 57 03 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 58 03 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 59 03 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 60 03 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 61 03 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 62 03 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 63 03 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 64 03 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 65 03 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 66 03 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 67 03 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 68 03 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 69 03 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 70 03 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 71 03 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 72 03 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 73 04 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 74 04 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 75 04 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 76 04 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 77 04 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 78 04 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 79 04 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 80 04 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 81 04 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 82 04 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 83 04 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 84 04 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 85 04 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 86 04 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 87 04 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 88 04 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 89 04 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 90 04 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 91 04 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 92 04 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 93 04 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 94 04 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 95 04 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 96 04 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 97 05 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 98 05 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 99 05 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 100 05 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 101 05 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 102 05 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 103 05 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 104 05 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 105 05 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 106 05 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 107 05 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 108 05 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 109 05 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 110 05 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 111 05 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 112 05 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 113 05 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 114 05 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 115 05 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 116 05 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 117 05 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 118 05 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 119 05 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 120 05 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 121 06 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 122 06 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 123 06 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 124 06 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 125 06 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 126 06 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 127 06 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 128 06 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 129 06 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 130 06 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 131 06 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 132 06 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 133 06 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 134 06 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 135 06 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 136 06 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 137 06 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 138 06 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 139 06 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 140 06 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 141 06 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 142 06 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 143 06 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 144 06 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 145 07 JAN 00:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 146 07 JAN 01:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 147 07 JAN 02:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 148 07 JAN 03:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 149 07 JAN 04:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 150 07 JAN 05:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 151 07 JAN 06:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 152 07 JAN 07:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 153 07 JAN 08:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 154 07 JAN 09:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 155 07 JAN 10:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 156 07 JAN 11:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 157 07 JAN 12:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 158 07 JAN 13:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 159 07 JAN 14:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 160 07 JAN 15:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 161 07 JAN 16:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 162 07 JAN 17:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 163 07 JAN 18:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 164 07 JAN 19:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 165 07 JAN 20:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 166 07 JAN 21:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 167 07 JAN 22:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 + 168 07 JAN 23:00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N/A 0 N/A N/A 0 0 0 0 0 1500 1500 1500 0 0 0 diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index 24150f35..bbac4450 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -137,3 +137,122 @@ ) ], ) + +THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("min_generating", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), + float_parameter("max_upward_ramping_rate", CONSTANT), + float_parameter("max_downward_ramping_rate", CONSTANT), + int_parameter("nb_start_max", TIME_AND_SCENARIO_FREE), + int_parameter("nb_stop_max", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=param("min_generating"), + upper_bound=param("max_generating"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + upper_bound=param("nb_stop_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + upper_bound=param("nb_start_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "flow"), + definition=var("generation"), + ) + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max_min_down_time") - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + Constraint( + "Max_upward", + var("generation") + <= var("generation").shift(literal(-1)) + + param("max_upward_ramping_rate") * var("nb_on") + + param("p_max") * var("nb_start"), + ), + Constraint( + "Max_downward", + var("generation") + >= var("generation").shift(literal(-1)) + - param("max_downward_ramping_rate") * var("nb_on") + - param("p_max") * var("nb_stop"), + ), + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py new file mode 100644 index 00000000..deddb1bc --- /dev/null +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -0,0 +1,424 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from math import ceil +from pathlib import Path + +import pytest + +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + FastModelBuilder, + HeuristicAccurateModelBuilder, + HeuristicFastModelBuilder, + Model, +) +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, + WeekScenarioIndex, +) +from tests.functional.libs.lib_thermal_heuristic import ( + THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP, +) + + +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_one_cluster_with_ramp" + + +@pytest.fixture +def models() -> list[Model]: + return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] + + +@pytest.fixture +def week_scenario_index() -> WeekScenarioIndex: + return WeekScenarioIndex(0, 0) + + +def test_milp_version( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + main_resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + expected_output = ExpectedOutput( + mode="milp", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=52, idx_unsupplied=51 + ), + ) + expected_output.check_output_values(main_resolution_step.output) + + assert ( + sum( + main_resolution_step.output.component("G") + .var("nb_start") + .value[0] # type:ignore + ) + == 4 + ) + assert ( + sum( + main_resolution_step.output.component("G") + .var("nb_stop") + .value[0] # type:ignore + ) + == 4 + ) + + assert main_resolution_step.objective == pytest.approx(29040) + + +def test_classic_accurate_heuristic( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + + number_hours = 168 + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + # Get number of on units and round it to integer + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + assert [ + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + for time_step in range(13) + ] == [0] + [1] * 11 + [0] + + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=cluster, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP + ).model, + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + assert [ + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + for time_step in range(13) + ] == [0] + [1] * 11 + [0] + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + assert resolution_step_2.objective == pytest.approx(29011.4616736) + + assert [ + resolution_step_2.output.component(cluster) + .var("nb_on") + .value[0][time_step] # type:ignore + for time_step in range(13) + ] == [ + 0.0, + 1.0, + 1.0, + 1.0377358490566038, + 1.0733357066571734, + 1.1069204779784654, + 1.1386042245079862, + 1.1129440000000002, + 1.0776, + 1.0399999999999998, + 1.0, + 1.0, + 0.0, + ] # non integer !!!!!! + + assert [ + resolution_step_2.output.component(cluster) + .var("nb_start") + .value[0][time_step] # type:ignore + for time_step in range(13) + ] == [ + 0.0, + 1.0, + 0.0, + 0.037735849056603786, + 0.03559985760056958, + 0.033584771321292096, + 0.03168374652952084, + 0.007563135492013902, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + ] + + assert [ + resolution_step_2.output.component(cluster) + .var("nb_stop") + .value[0][time_step] # type:ignore + for time_step in range(13) + ] == [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.03322336000000001, + 0.03534400000000002, + 0.03759999999999999, + 0.04, + 0.0, + 1.0, + ] + + +def test_modified_accurate_heuristic( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + + number_hours = 168 + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + # Get number of on units and round it to integer + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=cluster, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP + ).model, + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_max", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_start_max", + var_to_read="nb_start", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_stop_max", + var_to_read="nb_stop", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + assert [ + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + for time_step in range(13) + ] == [0] + [1] * 11 + [0] + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + assert resolution_step_2.objective == pytest.approx(84010) + + expected_output = ExpectedOutput( + mode="accurate", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=53, idx_unsupplied=52 + ), + ) + expected_output.check_output_values(resolution_step_2.output) + + +def test_classic_fast_heuristic( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + + number_hours = 168 + + thermal_problem_builder = ThermalProblemBuilder( + fast=True, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + port_types=[BALANCE_PORT_TYPE], + models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + assert [ + resolution_step_1.output.component(cluster) + .var("generation") + .value[0][time_step] # type:ignore + for time_step in range(13) + ] == [0, 50, 100, 150, 200, 250, 300, 250, 200, 150, 100, 50, 0] + + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + list_cluster_id=None, + var_to_read="generation", + param_to_update="n_guide", + fn_to_apply=lambda x, y: ceil(round(x / y, 12)), + param_needed_to_compute=["p_max"], + ) + # Solve heuristic problem + resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( + id_component=cluster, + index=week_scenario_index, + model=HeuristicFastModelBuilder( + number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) + ).model, + ) + thermal_problem_builder.update_database_heuristic( + resolution_step_heuristic.output, + week_scenario_index, + None, + var_to_read="n", + param_to_update="min_generating", + fn_to_apply=lambda x, y, z: min(x * y, z), + param_needed_to_compute=["p_min", "max_generating"], + ) + + assert [ + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "min_generating"), time_step, 0 + ) + for time_step in range(13) + ] == [0] + [100] * 11 + [0] + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + assert resolution_step_2.objective == pytest.approx(29000) + + assert [ + resolution_step_2.output.component(cluster) + .var("generation") + .value[0][time_step] # type:ignore + for time_step in range(13) + ] == [0, 100, 100, 150, 200, 250, 300, 250, 200, 150, 100, 100, 0] + # with NODU=1, ramp constraints not respected From 1d0da2c21ed803c9f9bf500066218319b500477a Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 9 Aug 2024 14:22:07 +0200 Subject: [PATCH 73/93] Refactor --- ...st_resolution_with_differents_scenarios.py | 121 +----------------- 1 file changed, 2 insertions(+), 119 deletions(-) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_differents_scenarios.py index 70ef2249..703c27eb 100644 --- a/tests/functional/test_resolution_with_differents_scenarios.py +++ b/tests/functional/test_resolution_with_differents_scenarios.py @@ -10,7 +10,6 @@ # # This file is part of the Antares project. -from math import ceil, floor from typing import Dict, List import numpy as np @@ -18,27 +17,13 @@ import pandas as pd import pytest -from andromede.expression import literal, param, var -from andromede.expression.expression import ExpressionRange, port_field -from andromede.expression.indexing_structure import IndexingStructure from andromede.libs.standard import ( - BALANCE_PORT_TYPE, DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.model import Model, ModelPort, float_parameter, float_variable, model -from andromede.model.constraint import Constraint -from andromede.model.model import PortFieldDefinition, PortFieldId -from andromede.model.parameter import float_parameter, int_parameter -from andromede.model.variable import float_variable, int_variable -from andromede.simulation import ( - BlockBorderManagement, - OutputValues, - TimeBlock, - build_problem, -) +from andromede.simulation import BlockBorderManagement, TimeBlock, build_problem from andromede.simulation.optimization import OptimizationProblem from andromede.study import ( ConstantData, @@ -46,13 +31,11 @@ Network, Node, PortRef, - TimeIndex, - TimeScenarioIndex, TimeScenarioSeriesData, - TimeSeriesData, create_component, ) from andromede.study.data import AbstractDataStructure +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP def test_one_problem_per_scenario() -> None: @@ -71,8 +54,6 @@ def test_one_problem_per_scenario() -> None: "G3": ConstantData(0), }, number_hours, - lp_relaxation=False, - fast=False, week=week, scenarios=[scenario], ) @@ -110,8 +91,6 @@ def test_one_problem_per_scenario_with_different_parameters() -> None: "G3": ConstantData(0), }, number_hours, - lp_relaxation=False, - fast=False, week=week, scenarios=[scenario], ) @@ -146,8 +125,6 @@ def test_one_problem_for_all_scenarios() -> None: problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, number_hours, - lp_relaxation=False, - fast=False, week=week, scenarios=scenarios, ) @@ -180,8 +157,6 @@ def test_one_problem_for_all_scenarios_with_different_parameters() -> None: problem = create_complex_problem( {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, number_hours, - lp_relaxation=False, - fast=False, week=week, scenarios=scenarios, ) @@ -205,101 +180,9 @@ def test_one_problem_for_all_scenarios_with_different_parameters() -> None: ) -CONSTANT = IndexingStructure(False, False) -TIME_AND_SCENARIO_FREE = IndexingStructure(True, True) -ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, True) -NON_ANTICIPATIVE_TIME_VARYING = IndexingStructure(True, False) -CONSTANT_PER_SCENARIO = IndexingStructure(False, True) - -THERMAL_CLUSTER_MODEL_MILP = model( - id="GEN", - parameters=[ - float_parameter("p_max", CONSTANT), # p_max of a single unit - float_parameter("p_min", CONSTANT), - float_parameter("d_min_up", CONSTANT), - float_parameter("d_min_down", CONSTANT), - float_parameter("cost", CONSTANT), - float_parameter("startup_cost", CONSTANT), - float_parameter("fixed_cost", CONSTANT), - int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), - int_parameter("nb_units_max", CONSTANT), - float_parameter("failures", TIME_AND_SCENARIO_FREE), - ], - variables=[ - float_variable( - "generation", - lower_bound=literal(0), - upper_bound=param("failures"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_on", - lower_bound=param("nb_units_min"), - upper_bound=param("nb_units_max"), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_stop", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - int_variable( - "nb_start", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - ], - ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], - port_fields_definitions=[ - PortFieldDefinition( - port_field=PortFieldId("balance_port", "flow"), - definition=var("generation"), - ) - ], - constraints=[ - Constraint( - "Max generation", - var("generation") <= param("p_max") * var("nb_on"), - ), - Constraint( - "Min generation", - var("generation") >= param("p_min") * var("nb_on"), - ), - Constraint( - "NODU balance", - var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), - ), - Constraint( - "Min up time", - var("nb_start") - .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) - .sum() - <= var("nb_on"), - ), - Constraint( - "Min down time", - var("nb_stop") - .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) - .sum() - <= param("nb_units_max").shift(-param("d_min_down")) - var("nb_on"), - ), - # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. - ], - objective_operational_contribution=( - param("cost") * var("generation") - + param("startup_cost") * var("nb_start") - + param("fixed_cost") * var("nb_on") - ) - .sum() - .expec(), -) - - def create_complex_problem( lower_bound: Dict[str, AbstractDataStructure], number_hours: int, - lp_relaxation: bool, - fast: bool, week: int, scenarios: List[int], ) -> OptimizationProblem: From d2334fefb93059bd6f24da046c768fe13c84babf Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 9 Aug 2024 14:51:38 +0200 Subject: [PATCH 74/93] Add description for tests --- ...st_thermal_heuristic_fast_min_down_not_respected.py | 2 +- tests/functional/test_thermal_heuristic_one_cluster.py | 10 +++++----- .../test_thermal_heuristic_one_cluster_with_ramp.py | 8 ++++---- .../functional/test_thermal_heuristic_six_clusters.py | 4 ++-- .../test_thermal_heuristic_three_clusters.py | 6 +++--- .../test_thermal_heuristic_two_clusters_low_load.py | 6 +++--- .../test_thermal_heuristic_two_clusters_with_bc.py | 10 ++++++---- 7 files changed, 24 insertions(+), 22 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index eee3665f..9fab4107 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -38,7 +38,7 @@ def data_path() -> str: def test_fast_heuristic(data_path: str) -> None: """ - Solve the same problem as before with the heuristic fast of Antares + Solve a weekly problem with fast heuristic. The thermal cluster has long d_min_up and d_min_down. The fast heuristic doesn't respect the d_min constraints. """ number_hours = 168 week_scenario_index = WeekScenarioIndex(0, 0) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 4c385970..27e7b3c6 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -59,7 +59,7 @@ def test_milp_version( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: """ - Model on 168 time steps with one thermal generation and one demand on a single node. + Model on 168 time steps with one thermal generation and demand on a single node. - Demand is constant to 2000 MW except for the 13th hour for which it is 2050 MW - Thermal generation is characterized with: - P_min = 700 MW @@ -73,7 +73,7 @@ def test_milp_version( - Unsupplied energy = 1000 €/MWh - Spillage = 0 €/MWh - The optimal solution consists in turning on two thermal plants at the begining, turning on a third thermal plant at the 13th hour and turning off the first thermal plant at the 14th hour, the other two thermal plants stay on for the rest of the week producing 1000MW each. At the 13th hour, the production is [700,700,700] to satisfy Pmin constraints. + The optimal milp solution consists in turning on two thermal plants at the begining, turning on a third thermal plant at the 13th hour and turning off the first thermal plant at the 14th hour, the other two thermal plants stay on for the rest of the week producing 1000MW each. At the 13th hour, the production is [700,700,700] to satisfy Pmin constraints. The optimal cost is then : 50 x 2 x 1000 x 167 (prod step 1-12 and 14-168) @@ -130,7 +130,7 @@ def test_lp_version( - Unsupplied energy = 1000 €/MWh - Spillage = 0 €/MWh - The optimal solution consists in producing exactly the demand at each hour. The number of on units is equal to the production divided by P_max. + The optimal solution of the linear relaxation consists in producing exactly the demand at each hour. The number of on units is equal to the production divided by P_max. The optimal cost is then : 50 x 2000 x 167 (prod step 1-12 and 14-168) @@ -173,7 +173,7 @@ def test_accurate_heuristic( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares + Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. """ number_hours = 168 @@ -277,7 +277,7 @@ def test_fast_heuristic( - Unsupplied energy = 1000 €/MWh - Spillage = 0 €/MWh - The optimal solution consists in having 3 units turned on between time steps 10 and 19 with production equal to 2100 to respect pmin and 2 the rest of the time. + The optimal solution consists in having 3 units turned on between time steps 10 and 19 with production equal to 2100 to respect pmin and 2 the rest of the time. Fast heuristic turns on 3 units for 10 timesteps because min down time is equal to 10. The optimal cost is then : 50 x 2000 x 158 (prod step 1-9 and 20-168) diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index deddb1bc..dfa9d2c1 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -60,7 +60,7 @@ def week_scenario_index() -> WeekScenarioIndex: def test_milp_version( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: - """ """ + """Solve weekly problem with one cluster and ramp constraints with milp.""" thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, @@ -110,7 +110,7 @@ def test_milp_version( def test_classic_accurate_heuristic( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: - """ """ + """Solve weekly problem with one cluster and ramp constraints with accurate heuristic. The solution found is not integer.""" number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( @@ -246,7 +246,7 @@ def test_classic_accurate_heuristic( def test_modified_accurate_heuristic( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: - """ """ + """Solve weekly problem with one cluster and ramp constraints with modified accurate heuristic such that the number of on units, starting units and stoping units are fixed at the end of the heuristic.""" number_hours = 168 thermal_problem_builder = ThermalProblemBuilder( @@ -348,7 +348,7 @@ def test_modified_accurate_heuristic( def test_classic_fast_heuristic( data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex ) -> None: - """ """ + """Solve weekly problem with one cluster and ramp constraints with fast heuristic. The solution found is not feasible bevause ramp constraints are not respected if we consider that the number of on units is 1.""" number_hours = 168 diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index c3ecc367..5bf72b14 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -59,7 +59,7 @@ def test_accurate_heuristic( week_scenario_index: WeekScenarioIndex, ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares + Check that the accurate heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. """ number_hours = 168 @@ -122,7 +122,7 @@ def test_accurate_heuristic( def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) -> None: """ - Solve the same problem as before with the heuristic fast of Antares + Check that the fast heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. """ number_hours = 168 diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index d0f706cf..9efa4171 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -63,7 +63,7 @@ def models() -> list[Model]: def test_milp_version( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: - """ """ + """Solve weekly problems with milp""" output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 ) @@ -106,7 +106,7 @@ def test_accurate_heuristic( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares + Solve the same problems as before with the heuristic accurate of Antares """ output_indexes = ExpectedOutputIndexes( @@ -192,7 +192,7 @@ def test_fast_heuristic( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ - Solve the same problem as before with the heuristic fast of Antares + Solve the same problems as before with the heuristic fast of Antares """ output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index 1248fe1a..64de85b2 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -62,7 +62,7 @@ def models() -> list[Model]: def test_milp_version( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: - """ """ + """Solve weekly problem with two clusters and low residual load.""" output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=8, idx_spillage=10, idx_unsupplied=9 ) @@ -105,7 +105,7 @@ def test_accurate_heuristic( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares + Solve the same problem as before with the heuristic accurate of Antares. Spillage is bigger. """ output_indexes = ExpectedOutputIndexes( @@ -188,7 +188,7 @@ def test_fast_heuristic( solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] ) -> None: """ - Solve the same problem as before with the heuristic fast of Antares + Solve the same problem as before with the heuristic fast of Antares. Spillage is bigger. """ output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=8, idx_spillage=11, idx_unsupplied=10 diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 2e9a8d09..1df27de1 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -71,7 +71,9 @@ def test_milp_version( models: list[Model], week_scenario_index: WeekScenarioIndex, ) -> None: - """ """ + """Solve weekly problem with two clusters and a binding constraint between these two clusters. + The optimal solution consists in turning on the first unit all the and the second unit which is more expensive but more flexible when the load increases at the 13th timestep. + """ thermal_problem_builder = ThermalProblemBuilder( fast=False, data_dir=Path(__file__).parent / data_path, @@ -104,7 +106,7 @@ def test_lp_version( models: list[Model], week_scenario_index: WeekScenarioIndex, ) -> None: - """ """ + """Solve the same problem as before with linear relaxation. The linear relaxation solution consists in turning one the first unit all the time and keep off the second unit.""" thermal_problem_builder = ThermalProblemBuilder( fast=False, @@ -139,7 +141,7 @@ def test_accurate_heuristic( week_scenario_index: WeekScenarioIndex, ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares + Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible. """ number_hours = 168 @@ -208,7 +210,7 @@ def test_fast_heuristic( models: list[Model], week_scenario_index: WeekScenarioIndex, ) -> None: - """ """ + """Solve the same problem as before with the heuristic fast of Antares. The fast heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible.""" number_hours = 168 From 137dc77a31307cea8690e30ac848c4239d645585 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 09:53:27 +0200 Subject: [PATCH 75/93] Beginning of new test --- .../components.yml | 163 ++++++++++ .../demand-ts.txt | 168 ++++++++++ .../functional/libs/lib_thermal_heuristic.py | 199 ++++++++++++ ...est_thermal_heuristic_day_ahead_reserve.py | 302 ++++++++++++++++++ 4 files changed, 832 insertions(+) create mode 100644 tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml create mode 100644 tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt create mode 100644 tests/functional/test_thermal_heuristic_day_ahead_reserve.py diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml b/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml new file mode 100644 index 00000000..dc4ae257 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml @@ -0,0 +1,163 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. +study: + nodes: + - id: N + model: NODE_MODEL + parameters: + - name: cost + type: constant + value: 10000 + + components: + - id: D + model: DEMAND_MODEL + parameters: + - name: demand + type: timeseries + timeseries: demand-ts + - id: G1 + model: GEN + parameters: + - name: p_max + type: constant + value: 410 + - name: p_min + type: constant + value: 180 + - name: cost + type: constant + value: 96 + - name: startup_cost + type: constant + value: 100500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 8 + - name: d_min_down + type: constant + value: 8 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 1 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G1 + - id: G2 + model: GEN + parameters: + - name: p_max + type: constant + value: 90 + - name: p_min + type: constant + value: 60 + - name: cost + type: constant + value: 137 + - name: startup_cost + type: constant + value: 24500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 11 + - name: d_min_down + type: constant + value: 11 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 3 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G2 + - id: G3 + model: GEN + parameters: + - name: p_max + type: constant + value: 275 + - name: p_min + type: constant + value: 150 + - name: cost + type: constant + value: 107 + - name: startup_cost + type: constant + value: 69500 + - name: fixed_cost + type: constant + value: 1 + - name: d_min_up + type: constant + value: 9 + - name: d_min_down + type: constant + value: 9 + - name: nb_units_min + type: constant + value: 0 + - name: nb_units_max + type: constant + value: 4 + - name: min_generating + type: constant + value: 0 + - name: max_generating + type: timeseries + timeseries: series_G3 + + + + connections: + - component1: N + port_1: balance_port + component2: D + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G1 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G2 + port_2: balance_port + + - component1: N + port_1: balance_port + component2: G3 + port_2: balance_port + + + + + diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt b/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt new file mode 100644 index 00000000..0afca3be --- /dev/null +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt @@ -0,0 +1,168 @@ +167 +163 +160 +158 +156 +155 +147 +147 +156 +165 +169 +174 +175 +166 +158 +154 +152 +157 +184 +192 +195 +191 +185 +175 +164 +156 +152 +149 +149 +154 +159 +172 +192 +204 +206 +209 +214 +211 +208 +203 +197 +194 +217 +219 +213 +203 +194 +182 +170 +161 +155 +151 +150 +156 +162 +174 +194 +207 +209 +212 +213 +209 +202 +198 +193 +194 +218 +219 +211 +202 +194 +181 +170 +162 +157 +154 +155 +162 +172 +184 +203 +210 +212 +213 +214 +210 +205 +201 +195 +195 +215 +217 +212 +205 +196 +185 +174 +166 +161 +159 +160 +166 +174 +187 +202 +210 +211 +216 +216 +208 +204 +200 +192 +194 +216 +218 +212 +203 +195 +186 +176 +169 +163 +159 +158 +161 +160 +167 +182 +189 +186 +187 +189 +186 +182 +178 +175 +180 +203 +208 +204 +197 +190 +182 +173 +164 +160 +153 +154 +156 +154 +157 +170 +177 +180 +182 +180 +171 +162 +157 +156 +159 +184 +193 +197 +193 +185 +173 \ No newline at end of file diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index bbac4450..3fcceda7 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -18,6 +18,7 @@ from andromede.model.constraint import Constraint from andromede.model.model import PortFieldDefinition, PortFieldId from andromede.model.parameter import float_parameter, int_parameter +from andromede.model.port import PortField, PortType from andromede.model.variable import float_variable, int_variable CONSTANT = IndexingStructure(False, False) @@ -256,3 +257,201 @@ .sum() .expec(), ) + +RESERVE_PORT_TYPE = PortType( + id="reserve_balance", + fields=[PortField("energy"), PortField("day_ahead"), PortField("primary_reserve")], +) + +NODE_WITH_RESERVE_MODEL = model( + id="NODE_MODEL", + parameters=[ + float_parameter("spillage_cost"), + float_parameter("ens_cost"), + float_parameter("reserve_not_supplied_cost"), + ], + variables=[ + float_variable("spillage_energy", lower_bound=literal(0)), + float_variable("unsupplied_energy", lower_bound=literal(0)), + float_variable("spillage_day_ahead", lower_bound=literal(0)), + float_variable("unsupplied_day_ahead", lower_bound=literal(0)), + float_variable("unsupplied_reserve", lower_bound=literal(0)), + ], + ports=[ + ModelPort(port_type=RESERVE_PORT_TYPE, port_name="balance_port"), + ], + binding_constraints=[ + Constraint( + name="Balance energy", + expression=port_field("balance_port", "energy").sum_connections() + == var("spillage_energy") - var("unsupplied_energy"), + ), + Constraint( + name="Balance day ahead", + expression=port_field("balance_port", "day_ahead").sum_connections() + == var("spillage_day_ahead") - var("unsupplied_day_ahead"), + ), + Constraint( + name="Balance reserve", + expression=port_field("balance_port", "primary_reserve").sum_connections() + == -var("unsupplied_reserve"), + ), + ], + objective_operational_contribution=( + param("spillage_cost") * var("spillage_energy") + + param("ens_cost") * var("unsupplied_energy") + + param("spillage_cost") * var("spillage_day_ahead") + + param("ens_cost") * var("unsupplied_day_ahead") + + param("reserve_not_supplied_cost") * var("unsupplied_reserve") + ) + .sum() + .expec(), +) + +DEMAND_WITH_RESERVE_MODEL = model( + id="DEMAND_MODEL", + parameters=[ + float_parameter("demand_energy", TIME_AND_SCENARIO_FREE), + float_parameter("demand_day_ahead", TIME_AND_SCENARIO_FREE), + float_parameter("demand_primary_reserve", TIME_AND_SCENARIO_FREE), + ], + ports=[ModelPort(port_type=RESERVE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "energy"), + definition=-param("demand_energy"), + ), + PortFieldDefinition( + port_field=PortFieldId("balance_port", "day_ahead"), + definition=-param("demand_day_ahead"), + ), + PortFieldDefinition( + port_field=PortFieldId("balance_port", "primary_reserve"), + definition=-param("demand_primary_reserve"), + ), + ], +) + +THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP = model( + id="GEN", + parameters=[ + float_parameter("p_max", CONSTANT), # p_max of a single unit + float_parameter("p_min", CONSTANT), + float_parameter("d_min_up", CONSTANT), + float_parameter("d_min_down", CONSTANT), + float_parameter("cost", CONSTANT), + float_parameter("startup_cost", CONSTANT), + float_parameter("fixed_cost", CONSTANT), + int_parameter("nb_units_min", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max", TIME_AND_SCENARIO_FREE), + float_parameter("min_generating", TIME_AND_SCENARIO_FREE), + float_parameter("max_generating", TIME_AND_SCENARIO_FREE), + int_parameter("max_failure", TIME_AND_SCENARIO_FREE), + int_parameter("nb_units_max_min_down_time", TIME_AND_SCENARIO_FREE), + ], + variables=[ + float_variable( + "generation", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "generation_day_ahead", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + float_variable( + "generation_reserve", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_on", + lower_bound=param("nb_units_min"), + upper_bound=param("nb_units_max"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_stop", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_failure", + lower_bound=literal(0), + upper_bound=param("max_failure"), + structure=ANTICIPATIVE_TIME_VARYING, + ), + int_variable( + "nb_start", + lower_bound=literal(0), + structure=ANTICIPATIVE_TIME_VARYING, + ), + ], + ports=[ModelPort(port_type=RESERVE_PORT_TYPE, port_name="balance_port")], + port_fields_definitions=[ + PortFieldDefinition( + port_field=PortFieldId("balance_port", "energy"), + definition=var("generation"), + ), + PortFieldDefinition( + port_field=PortFieldId("balance_port", "day_ahead"), + definition=var("generation_day_ahead"), + ), + PortFieldDefinition( + port_field=PortFieldId("balance_port", "primary_reserve"), + definition=var("generation_reserve"), + ), + ], + constraints=[ + Constraint( + "Max generation", + var("generation") <= param("max_generating"), + ), + Constraint( + "Min generation", + var("generation") >= param("min_generating"), + ), + Constraint( + "Max generation with NODU", + var("generation") <= param("p_max") * var("nb_on"), + ), + Constraint( + "Min generation with NODU", + var("generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "NODU balance", + var("nb_on") == var("nb_on").shift(-1) + var("nb_start") - var("nb_stop"), + ), + Constraint( + "Max failures", + var("nb_failure") <= var("nb_stop"), + ), + Constraint( + "Min up time", + var("nb_start") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + - var("nb_failure") + .shift(ExpressionRange(-param("d_min_up") + 1, literal(0))) + .sum() + <= var("nb_on"), + ), + Constraint( + "Min down time", + var("nb_stop") + .shift(ExpressionRange(-param("d_min_down") + 1, literal(0))) + .sum() + <= param("nb_units_max_min_down_time") - var("nb_on"), + ), + # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. + ], + objective_operational_contribution=( + param("cost") * var("generation") + + param("startup_cost") * var("nb_start") + + param("fixed_cost") * var("nb_on") + ) + .sum() + .expec(), +) diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py new file mode 100644 index 00000000..d1088768 --- /dev/null +++ b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py @@ -0,0 +1,302 @@ +# Copyright (c) 2024, RTE (https://www.rte-france.com) +# +# See AUTHORS.txt +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# SPDX-License-Identifier: MPL-2.0 +# +# This file is part of the Antares project. + +from math import ceil +from pathlib import Path + +import pytest + +from andromede.libs.standard import ( + BALANCE_PORT_TYPE, +) +from andromede.study.data import ComponentParameterIndex +from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.model import ( + AccurateModelBuilder, + HeuristicAccurateModelBuilder, + Model, +) +from andromede.thermal_heuristic.problem import ( + ThermalProblemBuilder, + TimeScenarioHourParameter, + WeekScenarioIndex, +) +from tests.functional.libs.lib_thermal_heuristic import ( + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP, + NODE_WITH_RESERVE_MODEL, + DEMAND_WITH_RESERVE_MODEL, +) + + +@pytest.fixture +def data_path() -> str: + return "data/thermal_heuristic_day_ahead_reserve" + + +@pytest.fixture +def models() -> list[Model]: + return [NODE_WITH_RESERVE_MODEL, DEMAND_WITH_RESERVE_MODEL] + + +@pytest.fixture +def week_scenario_index() -> WeekScenarioIndex: + return WeekScenarioIndex(0, 0) + + +def test_milp_with_day_ahead_reserve( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + main_resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + assert main_resolution_step.objective == 16805387 + + expected_output = ExpectedOutput( + mode="milp", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ) + expected_output.check_output_values(main_resolution_step.output) + + +def test_milp_without_day_ahead_reserve( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ """ + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + main_resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + assert main_resolution_step.objective == 16805387 + + expected_output = ExpectedOutput( + mode="milp", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 + ), + ) + expected_output.check_output_values(main_resolution_step.output) + + +def test_accurate_heuristic_with_day_ahead_reserve( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. + """ + + number_hours = 168 + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] + + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + # Get number of on units and round it to integer + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + for time_step in range(number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) + + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=cluster, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP + ).model, + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + for time_step in range(number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + assert resolution_step_2.objective == 16805387 + + expected_output = ExpectedOutput( + mode="accurate", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 + ), + ) + expected_output.check_output_values(resolution_step_2.output) + + +def test_accurate_heuristic_without_day_ahead_reserve( + data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex +) -> None: + """ + Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. + """ + + number_hours = 168 + thermal_problem_builder = ThermalProblemBuilder( + fast=False, + data_dir=Path(__file__).parent / data_path, + id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] + + models, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + + cluster = thermal_problem_builder.heuristic_components()[0] + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + # Get number of on units and round it to integer + thermal_problem_builder.update_database_heuristic( + resolution_step_1.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + for time_step in range(number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) + + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=cluster, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP + ).model, + ) + ) + + thermal_problem_builder.update_database_heuristic( + resolution_step_accurate_heuristic.output, + week_scenario_index, + None, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + for time_step in range(number_hours): + assert ( + thermal_problem_builder.database.get_value( + ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ) + == 2 + if time_step != 12 + else 3 + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + assert resolution_step_2.objective == 16805387 + + expected_output = ExpectedOutput( + mode="accurate", + index=week_scenario_index, + dir_path=data_path, + list_cluster=[cluster], + output_idx=ExpectedOutputIndexes( + idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 + ), + ) + expected_output.check_output_values(resolution_step_2.output) From 0329ffa2360b0794812c1fc930af33d4d07e59ba Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 14:55:46 +0200 Subject: [PATCH 76/93] Improve edit_value --- src/andromede/study/data.py | 22 +++++++--------------- src/andromede/thermal_heuristic/problem.py | 2 +- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/andromede/study/data.py b/src/andromede/study/data.py index 53546b1a..56cbbde8 100644 --- a/src/andromede/study/data.py +++ b/src/andromede/study/data.py @@ -41,8 +41,8 @@ class AbstractDataStructure(ABC): def get_value(self, timestep: int, scenario: int) -> float: return NotImplemented - def edit_value(self, value: float, timestep: int, scenario: int) -> bool: - return NotImplemented + def set_value(self, value: float, timestep: int, scenario: int) -> None: + raise NotImplementedError def get_max_value(self) -> float: return NotImplemented @@ -63,9 +63,6 @@ class ConstantData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.value - def edit_value(self, value: float, timestep: int, scenario: int) -> bool: - return NotImplemented - def get_max_value(self) -> float: return self.value @@ -89,9 +86,8 @@ class TimeSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.time_series[TimeIndex(timestep)] - def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + def set_value(self, value: float, timestep: int, scenario: int) -> None: self.time_series[TimeIndex(timestep)] = value - return True def get_max_value(self) -> float: return max(self.time_series.values()) @@ -116,9 +112,8 @@ class ScenarioSeriesData(AbstractDataStructure): def get_value(self, timestep: int, scenario: int) -> float: return self.scenario_series[ScenarioIndex(scenario)] - def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + def set_value(self, value: float, timestep: int, scenario: int) -> None: self.scenario_series[ScenarioIndex(scenario)] = value - return True def get_max_value(self) -> float: return max(self.scenario_series.values()) @@ -156,9 +151,8 @@ def get_value(self, timestep: int, scenario: int) -> float: value = str(self.time_scenario_series.iloc[timestep, scenario]) return float(value) - def edit_value(self, value: float, timestep: int, scenario: int) -> bool: + def set_value(self, value: float, timestep: int, scenario: int) -> None: self.time_scenario_series.iloc[timestep, scenario] = value - return True def get_max_value(self) -> float: return self.time_scenario_series.values.max() @@ -205,12 +199,10 @@ def get_value( else: raise KeyError(f"Index {index} not found.") - def edit_value( + def set_value( self, index: ComponentParameterIndex, value: float, timestep: int, scenario: int ) -> None: - done = self._data[index].edit_value(value, timestep, scenario) - if done is not True: - raise ValueError + self._data[index].set_value(value, timestep, scenario) def convert_to_time_scenario_series_data( self, index: ComponentParameterIndex, timesteps: int, scenarios: int diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 326ea38b..abf696ad 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -116,7 +116,7 @@ def update_database_heuristic( ) for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): - self.database.edit_value( + self.database.set_value( ComponentParameterIndex(cluster, param_to_update), fn_to_apply(sol[i], *[p[i] for p in param.values()]), # type:ignore t, From 4b7bb35bba3ad521f4c6d19fb9d7cb4f3c8ec4e6 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 15:19:48 +0200 Subject: [PATCH 77/93] Improve cluster parameters --- .../thermal_heuristic/cluster_parameter.py | 36 ++++++------- src/andromede/thermal_heuristic/data.py | 17 ++++--- src/andromede/thermal_heuristic/model.py | 51 ++++++++++--------- src/andromede/thermal_heuristic/problem.py | 29 ++++++----- .../time_scenario_parameter.py | 8 +-- src/andromede/thermal_heuristic/workflow.py | 6 +-- ...est_thermal_heuristic_day_ahead_reserve.py | 14 ++--- ...l_heuristic_fast_min_down_not_respected.py | 9 ++-- .../test_thermal_heuristic_one_cluster.py | 19 +++---- ...thermal_heuristic_one_cluster_with_ramp.py | 19 +++---- .../test_thermal_heuristic_six_clusters.py | 18 ++++--- .../test_thermal_heuristic_three_clusters.py | 14 ++--- ...thermal_heuristic_two_clusters_low_load.py | 14 ++--- ..._thermal_heuristic_two_clusters_with_bc.py | 19 +++---- 14 files changed, 148 insertions(+), 125 deletions(-) diff --git a/src/andromede/thermal_heuristic/cluster_parameter.py b/src/andromede/thermal_heuristic/cluster_parameter.py index 5b7ff753..53618213 100644 --- a/src/andromede/thermal_heuristic/cluster_parameter.py +++ b/src/andromede/thermal_heuristic/cluster_parameter.py @@ -28,13 +28,15 @@ ) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, timesteps, ) +from typing import List, Tuple -def compute_delta(thermal_cluster: str, database: DataBase) -> int: - delta = int( + +def compute_slot_length(thermal_cluster: str, database: DataBase) -> int: + slot_length = int( max( database.get_value( ComponentParameterIndex(thermal_cluster, "d_min_up"), 0, 0 @@ -44,22 +46,22 @@ def compute_delta(thermal_cluster: str, database: DataBase) -> int: ), ) ) - return delta + return slot_length def complete_database_for_fast_heuristic( database: DataBase, - list_cluster_id: list[str], + list_cluster_id: List[str], time_scenario_hour_parameter: TimeScenarioHourParameter, ) -> None: for cluster_id in list_cluster_id: - delta = compute_delta(cluster_id, database) + slot_length = compute_slot_length(cluster_id, database) n_max = database.get_data(cluster_id, "nb_units_max").get_max_value() database.add_data(cluster_id, "n_max", ConstantData(int(n_max))) - database.add_data(cluster_id, "delta", ConstantData(delta)) + database.add_data(cluster_id, "slot_length", ConstantData(slot_length)) - for h in range(delta): - start_ajust = time_scenario_hour_parameter.hour - delta + h + for h in range(slot_length): + start_ajust = time_scenario_hour_parameter.hour - slot_length + h database.add_data( cluster_id, f"alpha_ajust_{h}", @@ -78,9 +80,9 @@ def complete_database_for_fast_heuristic( } ), ) - for k in range(time_scenario_hour_parameter.hour // delta): - start_k = k * delta + h - end_k = min(start_ajust, (k + 1) * delta + h) + for k in range(time_scenario_hour_parameter.hour // slot_length): + start_k = k * slot_length + h + end_k = min(start_ajust, (k + 1) * slot_length + h) database.add_data( cluster_id, f"alpha_{k}_{h}", @@ -103,11 +105,11 @@ def complete_database_for_fast_heuristic( def complete_database_with_cluster_parameters( database: DataBase, - list_cluster: list[str], + list_cluster: List[str], time_scenario_hour_parameter: TimeScenarioHourParameter, ) -> None: for cluster_id in list_cluster: - if type(database.get_data(cluster_id, "max_generating")) is ConstantData: + if isinstance(database.get_data(cluster_id, "max_generating"), ConstantData): database.add_data( cluster_id, "max_failure", @@ -150,7 +152,7 @@ def compute_cluster_parameters( database: DataBase, cluster_id: str, time_scenario_hour_parameter: TimeScenarioHourParameter, -) -> tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: +) -> Tuple[pd.DataFrame, pd.DataFrame, pd.DataFrame]: database.convert_to_time_scenario_series_data( ComponentParameterIndex(cluster_id, "max_generating"), timesteps=time_scenario_hour_parameter.hour * time_scenario_hour_parameter.week, @@ -186,9 +188,9 @@ def get_parameter( database: DataBase, name: str, component: str, - index: WeekScenarioIndex, + index: BlockScenarioIndex, time_scenario_hour_parameter: TimeScenarioHourParameter, -) -> list[float]: +) -> List[float]: return [ database.get_value( ComponentParameterIndex(component, name), diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index e9f38dd8..8a0ab357 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -18,17 +18,18 @@ import pytest from andromede.simulation import OutputValues -from andromede.thermal_heuristic.time_scenario_parameter import WeekScenarioIndex +from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex +from typing import List, Tuple def get_max_unit_for_min_down_time( - delta: int, max_units: pd.DataFrame, hours_in_week: int + slot_length: int, max_units: pd.DataFrame, hours_in_week: int ) -> pd.DataFrame: max_units = shorten_df(max_units, hours_in_week) - nb_units_max_min_down_time = shift_df(max_units, delta, hours_in_week) + nb_units_max_min_down_time = shift_df(max_units, slot_length, hours_in_week) end_failures = max_units - shift_df(max_units, 1, hours_in_week) end_failures.where(end_failures > 0, 0, inplace=True) - for j in range(delta): + for j in range(slot_length): nb_units_max_min_down_time += shift_df(end_failures, j, hours_in_week) return nb_units_max_min_down_time @@ -79,9 +80,9 @@ class ExpectedOutput: def __init__( self, mode: str, - index: WeekScenarioIndex, + index: BlockScenarioIndex, dir_path: str, - list_cluster: list[str], + list_cluster: List[str], output_idx: ExpectedOutputIndexes, ): self.mode = mode @@ -133,8 +134,8 @@ def check_output_cluster( ] def read_expected_output( - self, dir_path: str, index: WeekScenarioIndex - ) -> tuple[list[list[str]], list[list[str]]]: + self, dir_path: str, index: BlockScenarioIndex + ) -> Tuple[List[List[str]], List[List[str]]]: folder_name = ( "tests/functional/" + dir_path + "/" + self.mode + "/" + str(index.scenario) ) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index bd061c8c..1c822eb1 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -159,24 +159,29 @@ def __init__(self, initial_model: Model) -> None: class HeuristicFastModelBuilder: - def __init__(self, number_hours: int, delta: int): + def __init__(self, number_hours: int, slot_length: int): BLOCK_MODEL_FAST_HEURISTIC = model( id="BLOCK_FAST", - parameters=self.get_parameters(number_hours // delta, delta), - variables=self.get_variables(number_hours // delta, delta), - constraints=self.get_constraints(number_hours // delta, delta), + parameters=self.get_parameters(number_hours // slot_length, slot_length), + variables=self.get_variables(number_hours // slot_length, slot_length), + constraints=self.get_constraints(number_hours // slot_length, slot_length), objective_operational_contribution=self.get_objective_operational_contribution( - delta + slot_length ), ) self.model = BLOCK_MODEL_FAST_HEURISTIC - def get_objective_operational_contribution(self, delta: int) -> ExpressionNode: + def get_objective_operational_contribution( + self, slot_length: int + ) -> ExpressionNode: return (var("n")).sum().expec() + sum( - [var(f"t_ajust_{h}") * (h + 1) / 10 / delta for h in range(delta)] + [ + var(f"t_ajust_{h}") * (h + 1) / 10 / slot_length + for h in range(slot_length) + ] ).expec() # type:ignore - def get_constraints(self, Q: int, delta: int) -> List[Constraint]: + def get_constraints(self, slot: int, slot_length: int) -> List[Constraint]: return ( [ Constraint( @@ -185,8 +190,8 @@ def get_constraints(self, Q: int, delta: int) -> List[Constraint]: >= param("n_guide") * param(f"alpha_{k}_{h}") - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), ) - for k in range(Q) - for h in range(delta) + for k in range(slot) + for h in range(slot_length) ] + [ Constraint( @@ -195,7 +200,7 @@ def get_constraints(self, Q: int, delta: int) -> List[Constraint]: >= param("n_guide") * param(f"alpha_ajust_{h}") - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), ) - for h in range(delta) + for h in range(slot_length) ] + [ Constraint( @@ -204,8 +209,8 @@ def get_constraints(self, Q: int, delta: int) -> List[Constraint]: >= param(f"alpha_{k}_{h}") * var(f"n_block_{k}") - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), ) - for k in range(Q) - for h in range(delta) + for k in range(slot) + for h in range(slot_length) ] + [ Constraint( @@ -214,18 +219,18 @@ def get_constraints(self, Q: int, delta: int) -> List[Constraint]: >= param(f"alpha_ajust_{h}") * var(f"n_ajust") - param("n_max") * (literal(1) - var(f"t_ajust_{h}")), ) - for h in range(delta) + for h in range(slot_length) ] + [ Constraint( "Choose one t ajust", - literal(0) + sum([var(f"t_ajust_{h}") for h in range(delta)]) + literal(0) + sum([var(f"t_ajust_{h}") for h in range(slot_length)]) == literal(1), ) ] ) - def get_variables(self, Q: int, delta: int) -> List[Variable]: + def get_variables(self, slot: int, slot_length: int) -> List[Variable]: return ( [ float_variable( @@ -234,7 +239,7 @@ def get_variables(self, Q: int, delta: int) -> List[Variable]: upper_bound=param("n_max"), structure=CONSTANT_PER_SCENARIO, ) - for k in range(Q) + for k in range(slot) ] + [ float_variable( @@ -251,7 +256,7 @@ def get_variables(self, Q: int, delta: int) -> List[Variable]: upper_bound=literal(1), structure=CONSTANT_PER_SCENARIO, ) - for h in range(delta) + for h in range(slot_length) ] + [ float_variable( @@ -263,20 +268,20 @@ def get_variables(self, Q: int, delta: int) -> List[Variable]: ] ) - def get_parameters(self, Q: int, delta: int) -> List[Parameter]: + def get_parameters(self, slot: int, slot_length: int) -> List[Parameter]: return ( [ float_parameter("n_guide", TIME_AND_SCENARIO_FREE), - float_parameter("delta", CONSTANT), + float_parameter("slot_length", CONSTANT), float_parameter("n_max", CONSTANT), ] + [ int_parameter(f"alpha_{k}_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for k in range(Q) - for h in range(delta) + for k in range(slot) + for h in range(slot_length) ] + [ int_parameter(f"alpha_ajust_{h}", NON_ANTICIPATIVE_TIME_VARYING) - for h in range(delta) + for h in range(slot_length) ] ) diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index abf696ad..bc27969e 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -34,7 +34,7 @@ ) from andromede.thermal_heuristic.time_scenario_parameter import ( TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, timesteps, ) from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters @@ -63,7 +63,7 @@ def __init__( def main_resolution_step( self, - index: WeekScenarioIndex, + index: BlockScenarioIndex, solving_parameters: SolvingParameters = SolvingParameters(), ) -> ResolutionStep: main_resolution_step = ResolutionStep( @@ -80,12 +80,12 @@ def main_resolution_step( def update_database_heuristic( self, output: OutputValues, - index: WeekScenarioIndex, - list_cluster_id: Optional[list[str]], + index: BlockScenarioIndex, + list_cluster_id: Optional[List[str]], param_to_update: str, var_to_read: str, fn_to_apply: Callable, - param_needed_to_compute: Optional[list[str]] = None, + param_needed_to_compute: Optional[List[str]] = None, ) -> None: if list_cluster_id is None: list_cluster_id = self.heuristic_components() @@ -107,13 +107,14 @@ def update_database_heuristic( param = {} if param_needed_to_compute is not None: for p in param_needed_to_compute: - param[p] = get_parameter( - self.database, - p, - cluster, - index, - self.time_scenario_hour_parameter, - ) + param[p] = [ + self.database.get_value( + ComponentParameterIndex(cluster, p), + t, + index.scenario, + ) + for t in timesteps(index, self.time_scenario_hour_parameter) + ] for i, t in enumerate(timesteps(index, self.time_scenario_hour_parameter)): self.database.set_value( @@ -125,7 +126,7 @@ def update_database_heuristic( def heuristic_resolution_step( self, - index: WeekScenarioIndex, + index: BlockScenarioIndex, id_component: str, model: Model, solving_parameters: SolvingParameters = SolvingParameters(), @@ -164,7 +165,7 @@ def get_database( return database - def heuristic_components(self) -> list[str]: + def heuristic_components(self) -> List[str]: return [ c.id for c in self.network.components diff --git a/src/andromede/thermal_heuristic/time_scenario_parameter.py b/src/andromede/thermal_heuristic/time_scenario_parameter.py index a33ec95f..92bd3002 100644 --- a/src/andromede/thermal_heuristic/time_scenario_parameter.py +++ b/src/andromede/thermal_heuristic/time_scenario_parameter.py @@ -12,6 +12,8 @@ from dataclasses import dataclass +from typing import List + @dataclass class TimeScenarioHourParameter: @@ -21,15 +23,15 @@ class TimeScenarioHourParameter: @dataclass -class WeekScenarioIndex: +class BlockScenarioIndex: week: int scenario: int def timesteps( - index: WeekScenarioIndex, + index: BlockScenarioIndex, parameter: TimeScenarioHourParameter, -) -> list[int]: +) -> List[int]: return list( range( index.week * parameter.hour, diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 509e322c..5180c84f 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -21,7 +21,7 @@ build_problem, ) from andromede.study import DataBase, Network - +from typing import List @dataclass class SolvingParameters: @@ -32,8 +32,8 @@ class SolvingParameters: class ResolutionStep: def __init__( self, - timesteps: list[int], - scenarios: list[int], + timesteps: List[int], + scenarios: List[int], database: DataBase, network: Network, ) -> None: diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py index d1088768..fc2b69b9 100644 --- a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py @@ -28,7 +28,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import ( THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP, @@ -48,12 +48,12 @@ def models() -> list[Model]: @pytest.fixture -def week_scenario_index() -> WeekScenarioIndex: - return WeekScenarioIndex(0, 0) +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) def test_milp_with_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( @@ -86,7 +86,7 @@ def test_milp_with_day_ahead_reserve( def test_milp_without_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ """ thermal_problem_builder = ThermalProblemBuilder( @@ -119,7 +119,7 @@ def test_milp_without_day_ahead_reserve( def test_accurate_heuristic_with_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. @@ -211,7 +211,7 @@ def test_accurate_heuristic_with_day_ahead_reserve( def test_accurate_heuristic_without_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 9fab4107..a95ae69e 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -18,7 +18,7 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( FastModelBuilder, HeuristicFastModelBuilder, @@ -26,7 +26,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -41,7 +41,7 @@ def test_fast_heuristic(data_path: str) -> None: Solve a weekly problem with fast heuristic. The thermal cluster has long d_min_up and d_min_down. The fast heuristic doesn't respect the d_min constraints. """ number_hours = 168 - week_scenario_index = WeekScenarioIndex(0, 0) + week_scenario_index = BlockScenarioIndex(0, 0) thermal_problem_builder = ThermalProblemBuilder( fast=True, @@ -80,7 +80,8 @@ def test_fast_heuristic(data_path: str) -> None: id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) + number_hours, + slot_length=compute_slot_length(cluster, thermal_problem_builder.database), ).model, ) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 27e7b3c6..83ffce0f 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -23,7 +23,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -35,7 +35,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -51,12 +51,12 @@ def models() -> list[Model]: @pytest.fixture -def week_scenario_index() -> WeekScenarioIndex: - return WeekScenarioIndex(0, 0) +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) def test_milp_version( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Model on 168 time steps with one thermal generation and demand on a single node. @@ -113,7 +113,7 @@ def test_milp_version( def test_lp_version( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. @@ -170,7 +170,7 @@ def test_lp_version( def test_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. @@ -259,7 +259,7 @@ def test_accurate_heuristic( def test_fast_heuristic( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """ Solve the same problem as before with the heuristic fast of Antares @@ -317,7 +317,8 @@ def test_fast_heuristic( id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) + number_hours, + slot_length=compute_slot_length(cluster, thermal_problem_builder.database), ).model, ) thermal_problem_builder.update_database_heuristic( diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index dfa9d2c1..a8ce70e4 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -23,7 +23,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -35,7 +35,7 @@ from andromede.thermal_heuristic.problem import ( ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import ( THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP, @@ -53,12 +53,12 @@ def models() -> list[Model]: @pytest.fixture -def week_scenario_index() -> WeekScenarioIndex: - return WeekScenarioIndex(0, 0) +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) def test_milp_version( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """Solve weekly problem with one cluster and ramp constraints with milp.""" thermal_problem_builder = ThermalProblemBuilder( @@ -108,7 +108,7 @@ def test_milp_version( def test_classic_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """Solve weekly problem with one cluster and ramp constraints with accurate heuristic. The solution found is not integer.""" @@ -244,7 +244,7 @@ def test_classic_accurate_heuristic( def test_modified_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """Solve weekly problem with one cluster and ramp constraints with modified accurate heuristic such that the number of on units, starting units and stoping units are fixed at the end of the heuristic.""" @@ -346,7 +346,7 @@ def test_modified_accurate_heuristic( def test_classic_fast_heuristic( - data_path: str, models: list[Model], week_scenario_index: WeekScenarioIndex + data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex ) -> None: """Solve weekly problem with one cluster and ramp constraints with fast heuristic. The solution found is not feasible bevause ramp constraints are not respected if we consider that the number of on units is 1.""" @@ -389,7 +389,8 @@ def test_classic_fast_heuristic( id_component=cluster, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=compute_delta(cluster, thermal_problem_builder.database) + number_hours, + slot_length=compute_slot_length(cluster, thermal_problem_builder.database), ).model, ) thermal_problem_builder.update_database_heuristic( diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 5bf72b14..fcfc650d 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -19,7 +19,7 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -30,7 +30,7 @@ SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -49,14 +49,14 @@ def data_path() -> str: @pytest.fixture -def week_scenario_index() -> WeekScenarioIndex: - return WeekScenarioIndex(0, 0) +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) def test_accurate_heuristic( solver_parameters: pywraplp.MPSolverParameters, data_path: str, - week_scenario_index: WeekScenarioIndex, + week_scenario_index: BlockScenarioIndex, ) -> None: """ Check that the accurate heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. @@ -120,7 +120,9 @@ def test_accurate_heuristic( ] -def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) -> None: +def test_fast_heuristic( + data_path: str, week_scenario_index: BlockScenarioIndex +) -> None: """ Check that the fast heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. """ @@ -163,7 +165,9 @@ def test_fast_heuristic(data_path: str, week_scenario_index: WeekScenarioIndex) index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, - delta=compute_delta(cluster, thermal_problem_builder.database), + slot_length=compute_slot_length( + cluster, thermal_problem_builder.database + ), ).model, ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 9efa4171..5f42c388 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -23,7 +23,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -36,7 +36,7 @@ SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -81,7 +81,7 @@ def test_milp_version( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index, solving_parameters=SolvingParameters(solver_parameters), @@ -126,7 +126,7 @@ def test_accurate_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, @@ -211,7 +211,7 @@ def test_fast_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, @@ -235,7 +235,9 @@ def test_fast_heuristic( index=week_scenario_index, model=HeuristicFastModelBuilder( thermal_problem_builder.time_scenario_hour_parameter.hour, - delta=compute_delta(g, thermal_problem_builder.database), + slot_length=compute_slot_length( + g, thermal_problem_builder.database + ), ).model, ) ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index 64de85b2..5e2f917f 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -23,7 +23,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -36,7 +36,7 @@ SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -80,7 +80,7 @@ def test_milp_version( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index, solving_parameters=SolvingParameters(solver_parameters), @@ -125,7 +125,7 @@ def test_accurate_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, @@ -207,7 +207,7 @@ def test_fast_heuristic( thermal_problem_builder.time_scenario_hour_parameter.scenario ): for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): - week_scenario_index = WeekScenarioIndex(week, scenario) + week_scenario_index = BlockScenarioIndex(week, scenario) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, @@ -231,7 +231,9 @@ def test_fast_heuristic( index=week_scenario_index, model=HeuristicFastModelBuilder( thermal_problem_builder.time_scenario_hour_parameter.hour, - delta=compute_delta(g, thermal_problem_builder.database), + slot_length=compute_slot_length( + g, thermal_problem_builder.database + ), ).model, ) ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 1df27de1..ba1d06ce 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -24,7 +24,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.cluster_parameter import compute_delta +from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -37,7 +37,7 @@ SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - WeekScenarioIndex, + BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import ( BINDING_CONSTRAINT, @@ -62,14 +62,14 @@ def models() -> list[Model]: @pytest.fixture -def week_scenario_index() -> WeekScenarioIndex: - return WeekScenarioIndex(0, 0) +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) def test_milp_version( data_path: str, models: list[Model], - week_scenario_index: WeekScenarioIndex, + week_scenario_index: BlockScenarioIndex, ) -> None: """Solve weekly problem with two clusters and a binding constraint between these two clusters. The optimal solution consists in turning on the first unit all the and the second unit which is more expensive but more flexible when the load increases at the 13th timestep. @@ -104,7 +104,7 @@ def test_milp_version( def test_lp_version( data_path: str, models: list[Model], - week_scenario_index: WeekScenarioIndex, + week_scenario_index: BlockScenarioIndex, ) -> None: """Solve the same problem as before with linear relaxation. The linear relaxation solution consists in turning one the first unit all the time and keep off the second unit.""" @@ -138,7 +138,7 @@ def test_lp_version( def test_accurate_heuristic( data_path: str, models: list[Model], - week_scenario_index: WeekScenarioIndex, + week_scenario_index: BlockScenarioIndex, ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible. @@ -208,7 +208,7 @@ def test_accurate_heuristic( def test_fast_heuristic( data_path: str, models: list[Model], - week_scenario_index: WeekScenarioIndex, + week_scenario_index: BlockScenarioIndex, ) -> None: """Solve the same problem as before with the heuristic fast of Antares. The fast heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible.""" @@ -244,7 +244,8 @@ def test_fast_heuristic( id_component=g, index=week_scenario_index, model=HeuristicFastModelBuilder( - number_hours, delta=compute_delta(g, thermal_problem_builder.database) + number_hours, + slot_length=compute_slot_length(g, thermal_problem_builder.database), ).model, ) thermal_problem_builder.update_database_heuristic( From d9831beaebba1a76b176f0065f6268a4cf944080 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 15:26:52 +0200 Subject: [PATCH 78/93] Move expected_output class --- src/andromede/thermal_heuristic/data.py | 105 ----------------- .../time_scenario_parameter.py | 4 +- src/andromede/thermal_heuristic/workflow.py | 3 +- tests/functional/conftest.py | 106 ++++++++++++++++++ ...est_thermal_heuristic_day_ahead_reserve.py | 2 +- .../test_thermal_heuristic_one_cluster.py | 2 +- ...thermal_heuristic_one_cluster_with_ramp.py | 2 +- .../test_thermal_heuristic_three_clusters.py | 2 +- ...thermal_heuristic_two_clusters_low_load.py | 2 +- ..._thermal_heuristic_two_clusters_with_bc.py | 2 +- 10 files changed, 116 insertions(+), 114 deletions(-) diff --git a/src/andromede/thermal_heuristic/data.py b/src/andromede/thermal_heuristic/data.py index 8a0ab357..c9d77f46 100644 --- a/src/andromede/thermal_heuristic/data.py +++ b/src/andromede/thermal_heuristic/data.py @@ -10,16 +10,10 @@ # # This file is part of the Antares project. -from dataclasses import dataclass from math import ceil import numpy as np import pandas as pd -import pytest - -from andromede.simulation import OutputValues -from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex -from typing import List, Tuple def get_max_unit_for_min_down_time( @@ -66,102 +60,3 @@ def get_max_unit( max_units = max_units.applymap(ceil) max_units.where(max_units < units, units, inplace=True) return max_units - - -@dataclass -class ExpectedOutputIndexes: - idx_generation: int - idx_nodu: int - idx_spillage: int - idx_unsupplied: int - - -class ExpectedOutput: - def __init__( - self, - mode: str, - index: BlockScenarioIndex, - dir_path: str, - list_cluster: List[str], - output_idx: ExpectedOutputIndexes, - ): - self.mode = mode - self.list_cluster = list_cluster - self.output_idx = output_idx - self.output_cluster, self.output_general = self.read_expected_output( - dir_path, index - ) - - def check_output_values(self, output: OutputValues) -> None: - for i, cluster in enumerate(self.list_cluster): - self.check_output_cluster( - output, - cluster_id=cluster, - idx_generation=self.output_idx.idx_generation + i, - idx_nodu=self.output_idx.idx_nodu + i, - ) - - assert output.component("S").var("spillage").value == [ - [ - pytest.approx(float(line[self.output_idx.idx_spillage])) - for line in self.output_general - ] - ] - - assert output.component("U").var("unsupplied_energy").value == [ - [ - pytest.approx(float(line[self.output_idx.idx_unsupplied])) - for line in self.output_general - ] - ] - - def check_output_cluster( - self, - output: OutputValues, - idx_generation: int, - idx_nodu: int, - cluster_id: str, - ) -> None: - assert output.component(cluster_id).var("generation").value == [ - [ - pytest.approx(float(line[idx_generation]), abs=1e-6) - for line in self.output_cluster - ] - ] - if self.mode != "fast": - assert output.component(cluster_id).var("nb_on").value == [ - [pytest.approx(float(line[idx_nodu])) for line in self.output_cluster] - ] - - def read_expected_output( - self, dir_path: str, index: BlockScenarioIndex - ) -> Tuple[List[List[str]], List[List[str]]]: - folder_name = ( - "tests/functional/" + dir_path + "/" + self.mode + "/" + str(index.scenario) - ) - - expected_output_clusters_file = open( - folder_name + "/details-hourly.txt", - "r", - ) - expected_output_clusters = expected_output_clusters_file.readlines() - - expected_output_general_file = open( - folder_name + "/values-hourly.txt", - "r", - ) - expected_output_general = expected_output_general_file.readlines() - return ( - [ - line.strip().split("\t") - for line in expected_output_clusters[ - 168 * index.week + 7 : 168 * index.week + 7 + 168 - ] - ], - [ - line.strip().split("\t") - for line in expected_output_general[ - 168 * index.week + 7 : 168 * index.week + 7 + 168 - ] - ], - ) diff --git a/src/andromede/thermal_heuristic/time_scenario_parameter.py b/src/andromede/thermal_heuristic/time_scenario_parameter.py index 92bd3002..29959679 100644 --- a/src/andromede/thermal_heuristic/time_scenario_parameter.py +++ b/src/andromede/thermal_heuristic/time_scenario_parameter.py @@ -15,14 +15,14 @@ from typing import List -@dataclass +@dataclass(frozen=True) class TimeScenarioHourParameter: week: int scenario: int hour: int -@dataclass +@dataclass(frozen=True) class BlockScenarioIndex: week: int scenario: int diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 5180c84f..6d97a7ae 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -23,7 +23,8 @@ from andromede.study import DataBase, Network from typing import List -@dataclass + +@dataclass(frozen=True) class SolvingParameters: solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters() expected_status: str = pywraplp.Solver.OPTIMAL diff --git a/tests/functional/conftest.py b/tests/functional/conftest.py index 9d443ee1..30996e5a 100644 --- a/tests/functional/conftest.py +++ b/tests/functional/conftest.py @@ -15,6 +15,13 @@ from andromede.model.parsing import parse_yaml_library from andromede.model.resolve_library import resolve_library +from dataclasses import dataclass + +import pytest + +from andromede.simulation import OutputValues +from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex +from typing import List, Tuple @pytest.fixture(scope="session") @@ -31,3 +38,102 @@ def lib(libs_dir: Path): lib = resolve_library(input_lib) return lib + + +@dataclass(frozen=True) +class ExpectedOutputIndexes: + idx_generation: int + idx_nodu: int + idx_spillage: int + idx_unsupplied: int + + +class ExpectedOutput: + def __init__( + self, + mode: str, + index: BlockScenarioIndex, + dir_path: str, + list_cluster: List[str], + output_idx: ExpectedOutputIndexes, + ): + self.mode = mode + self.list_cluster = list_cluster + self.output_idx = output_idx + self.output_cluster, self.output_general = self.read_expected_output( + dir_path, index + ) + + def check_output_values(self, output: OutputValues) -> None: + for i, cluster in enumerate(self.list_cluster): + self.check_output_cluster( + output, + cluster_id=cluster, + idx_generation=self.output_idx.idx_generation + i, + idx_nodu=self.output_idx.idx_nodu + i, + ) + + assert output.component("S").var("spillage").value == [ + [ + pytest.approx(float(line[self.output_idx.idx_spillage])) + for line in self.output_general + ] + ] + + assert output.component("U").var("unsupplied_energy").value == [ + [ + pytest.approx(float(line[self.output_idx.idx_unsupplied])) + for line in self.output_general + ] + ] + + def check_output_cluster( + self, + output: OutputValues, + idx_generation: int, + idx_nodu: int, + cluster_id: str, + ) -> None: + assert output.component(cluster_id).var("generation").value == [ + [ + pytest.approx(float(line[idx_generation]), abs=1e-6) + for line in self.output_cluster + ] + ] + if self.mode != "fast": + assert output.component(cluster_id).var("nb_on").value == [ + [pytest.approx(float(line[idx_nodu])) for line in self.output_cluster] + ] + + def read_expected_output( + self, dir_path: str, index: BlockScenarioIndex + ) -> Tuple[List[List[str]], List[List[str]]]: + folder_name = ( + "tests/functional/" + dir_path + "/" + self.mode + "/" + str(index.scenario) + ) + + expected_output_clusters_file = open( + folder_name + "/details-hourly.txt", + "r", + ) + expected_output_clusters = expected_output_clusters_file.readlines() + + expected_output_general_file = open( + folder_name + "/values-hourly.txt", + "r", + ) + expected_output_general = expected_output_general_file.readlines() + return ( + [ + line.strip().split("\t") + for line in expected_output_clusters[ + 168 * index.week + 7 : 168 * index.week + 7 + 168 + ] + ], + [ + line.strip().split("\t") + for line in expected_output_general[ + 168 * index.week + 7 : 168 * index.week + 7 + 168 + ] + ], + ) diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py index fc2b69b9..84e1f8e1 100644 --- a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py @@ -19,7 +19,6 @@ BALANCE_PORT_TYPE, ) from andromede.study.data import ComponentParameterIndex -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, HeuristicAccurateModelBuilder, @@ -35,6 +34,7 @@ NODE_WITH_RESERVE_MODEL, DEMAND_WITH_RESERVE_MODEL, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 83ffce0f..3f22530c 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -24,7 +24,7 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index a8ce70e4..e8d62d03 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -24,7 +24,7 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 5f42c388..b2b34058 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -24,7 +24,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index 5e2f917f..8bef0d94 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -24,7 +24,7 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index ba1d06ce..ec1eb83e 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -25,7 +25,7 @@ ) from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from andromede.thermal_heuristic.data import ExpectedOutput, ExpectedOutputIndexes +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, From 270200bb1ec3569b58d372de4eb5adf0ecd5bc7a Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 15:37:14 +0200 Subject: [PATCH 79/93] Change names --- src/andromede/thermal_heuristic/model.py | 33 +++++++++++-------- .../functional/libs/lib_thermal_heuristic.py | 2 +- ..._thermal_heuristic_two_clusters_with_bc.py | 4 +-- 3 files changed, 23 insertions(+), 16 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index 1c822eb1..fa50799d 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -75,29 +75,30 @@ def get_name_integer_variables(self) -> List[str]: if v.data_type == ValueType.INTEGER ] - def fix_integer_variables_to_zero_and_keep_others(self) -> List[Variable]: + def remove_integer_variables_and_keep_others(self) -> List[Variable]: return [ float_variable( v.name, - lower_bound=( - v.lower_bound if v.data_type == ValueType.FLOAT else literal(0) - ), - upper_bound=( - v.upper_bound if v.data_type == ValueType.FLOAT else literal(0) - ), + lower_bound=(v.lower_bound), + upper_bound=(v.upper_bound), structure=v.structure, ) for v in self.initial_model.variables.values() + if v.data_type == ValueType.FLOAT ] - def filter_constraints_on_variable(self, variables: List[str]) -> List[Constraint]: + def keep_constraints_with_no_variables_from_list( + self, variables: List[str] + ) -> List[Constraint]: return [ c for c in self.initial_model.constraints.values() if not (self.variable_in_constraint(c, variables)) ] - def filter_and_linearize_variables(self, variables: List[str]) -> List[Variable]: + def keep_variables_with_no_variables_from_list_and_linearize( + self, variables: List[str] + ) -> List[Variable]: return [ float_variable( v.name, @@ -133,10 +134,12 @@ def __init__(self, initial_model: Model) -> None: THERMAL_CLUSTER_MODEL_FAST = model( id=self.initial_model.id, parameters=self.initial_model.parameters.values(), - variables=self.fix_integer_variables_to_zero_and_keep_others(), + variables=self.remove_integer_variables_and_keep_others(), ports=self.initial_model.ports.values(), port_fields_definitions=self.initial_model.port_fields_definitions.values(), - constraints=self.filter_constraints_on_variable(integer_variables), + constraints=self.keep_constraints_with_no_variables_from_list( + integer_variables + ), objective_operational_contribution=self.initial_model.objective_operational_contribution, ) @@ -151,8 +154,12 @@ def __init__(self, initial_model: Model) -> None: THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC = model( id=self.initial_model.id, parameters=self.initial_model.parameters.values(), - variables=self.filter_and_linearize_variables(generation_variable), - constraints=self.filter_constraints_on_variable(generation_variable), + variables=self.keep_variables_with_no_variables_from_list_and_linearize( + generation_variable + ), + constraints=self.keep_constraints_with_no_variables_from_list( + generation_variable + ), objective_operational_contribution=(var("nb_on")).sum().expec(), ) self.model = THERMAL_CLUSTER_MODEL_ACCURATE_HEURISTIC diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index 3fcceda7..7c643946 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -126,7 +126,7 @@ .expec(), ) -BINDING_CONSTRAINT = model( +UPPER_BOUND_ON_SUM_OF_GENERATION = model( id="BC", parameters=[float_parameter("upper_bound", structure=CONSTANT)], ports=[ModelPort(port_type=BALANCE_PORT_TYPE, port_name="balance_port")], diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index ec1eb83e..43d34c8a 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -40,7 +40,7 @@ BlockScenarioIndex, ) from tests.functional.libs.lib_thermal_heuristic import ( - BINDING_CONSTRAINT, + UPPER_BOUND_ON_SUM_OF_GENERATION, THERMAL_CLUSTER_MODEL_MILP, ) @@ -57,7 +57,7 @@ def models() -> list[Model]: NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, - BINDING_CONSTRAINT, + UPPER_BOUND_ON_SUM_OF_GENERATION, ] From bb36d3899680f7a31b92fe677b7fd85cd6709538 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 17:24:28 +0200 Subject: [PATCH 80/93] Remove network and database building from thermal_problem_builder --- .../thermal_heuristic/cluster_parameter.py | 6 +- src/andromede/thermal_heuristic/problem.py | 81 ++- .../time_scenario_parameter.py | 1 - src/andromede/thermal_heuristic/workflow.py | 2 +- tests/functional/conftest.py | 19 +- ...est_thermal_heuristic_day_ahead_reserve.py | 508 +++++++++--------- ...l_heuristic_fast_min_down_not_respected.py | 68 ++- .../test_thermal_heuristic_one_cluster.py | 174 ++++-- ...thermal_heuristic_one_cluster_with_ramp.py | 196 +++++-- .../test_thermal_heuristic_six_clusters.py | 83 ++- .../test_thermal_heuristic_three_clusters.py | 125 +++-- ...thermal_heuristic_two_clusters_low_load.py | 127 +++-- ..._thermal_heuristic_two_clusters_with_bc.py | 145 +++-- 13 files changed, 983 insertions(+), 552 deletions(-) diff --git a/src/andromede/thermal_heuristic/cluster_parameter.py b/src/andromede/thermal_heuristic/cluster_parameter.py index 53618213..f3974a95 100644 --- a/src/andromede/thermal_heuristic/cluster_parameter.py +++ b/src/andromede/thermal_heuristic/cluster_parameter.py @@ -11,6 +11,8 @@ # This file is part of the Antares project. +from typing import List, Tuple + import pandas as pd from andromede.study import ( @@ -27,13 +29,11 @@ get_max_unit_for_min_down_time, ) from andromede.thermal_heuristic.time_scenario_parameter import ( - TimeScenarioHourParameter, BlockScenarioIndex, + TimeScenarioHourParameter, timesteps, ) -from typing import List, Tuple - def compute_slot_length(thermal_cluster: str, database: DataBase) -> int: slot_length = int( diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index bc27969e..8149fa93 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -10,14 +10,11 @@ # # This file is part of the Antares project. -from math import ceil from pathlib import Path from typing import Callable, List, Optional -import numpy as np - from andromede.model import Model, PortType -from andromede.model.library import Library, library +from andromede.model.library import library from andromede.simulation import OutputValues from andromede.study import ConstantData, DataBase, Network, create_component from andromede.study.data import ComponentParameterIndex @@ -30,11 +27,10 @@ from andromede.thermal_heuristic.cluster_parameter import ( complete_database_for_fast_heuristic, complete_database_with_cluster_parameters, - get_parameter, ) from andromede.thermal_heuristic.time_scenario_parameter import ( - TimeScenarioHourParameter, BlockScenarioIndex, + TimeScenarioHourParameter, timesteps, ) from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters @@ -43,23 +39,13 @@ class ThermalProblemBuilder: def __init__( self, - fast: bool, - data_dir: Path, - id_thermal_cluster_model: str, - port_types: List[PortType], - models: List[Model], time_scenario_hour_parameter: TimeScenarioHourParameter, + network: Network, + database: DataBase, ) -> None: - lib = library( - port_types=port_types, - models=models, - ) self.time_scenario_hour_parameter = time_scenario_hour_parameter - self.id_thermal_cluster_model = id_thermal_cluster_model - - input_components = get_input_components(data_dir / "components.yml") - self.network = get_network(input_components, lib) - self.database = self.get_database(input_components, data_dir, fast) + self.database = database + self.network = network def main_resolution_step( self, @@ -81,14 +67,12 @@ def update_database_heuristic( self, output: OutputValues, index: BlockScenarioIndex, - list_cluster_id: Optional[List[str]], + list_cluster_id: List[str], param_to_update: str, var_to_read: str, fn_to_apply: Callable, param_needed_to_compute: Optional[List[str]] = None, ) -> None: - if list_cluster_id is None: - list_cluster_id = self.heuristic_components() for cluster in list_cluster_id: if ( ComponentParameterIndex(cluster, param_to_update) @@ -146,34 +130,41 @@ def heuristic_resolution_step( resolution_step.solve(solving_parameters) return resolution_step - def get_database( - self, - components_file: InputComponents, - data_dir: Path, - fast: bool, - ) -> DataBase: - database = build_data_base(components_file, data_dir) - - complete_database_with_cluster_parameters( - database, self.heuristic_components(), self.time_scenario_hour_parameter + +def get_database( + components_file: InputComponents, + data_dir: Path, + fast: bool, + cluster: List[str], + time_scenario_hour_parameter: TimeScenarioHourParameter, +) -> DataBase: + database = build_data_base(components_file, data_dir) + + complete_database_with_cluster_parameters( + database, cluster, time_scenario_hour_parameter + ) + + if fast: + complete_database_for_fast_heuristic( + database, cluster, time_scenario_hour_parameter ) - if fast: - complete_database_for_fast_heuristic( - database, self.heuristic_components(), self.time_scenario_hour_parameter - ) + return database - return database - def heuristic_components(self) -> List[str]: - return [ - c.id - for c in self.network.components - if c.model.id == self.id_thermal_cluster_model - ] +def get_heuristic_components( + components_file: InputComponents, id_heuristic_model: str +) -> List[str]: + return [c.id for c in components_file.components if c.model == id_heuristic_model] -def get_network(components_file: InputComponents, lib: Library) -> Network: +def get_network( + components_file: InputComponents, port_types: List[PortType], models: List[Model] +) -> Network: + lib = library( + port_types=port_types, + models=models, + ) components_input = resolve_components_and_cnx(components_file, lib) network = build_network(components_input) return network diff --git a/src/andromede/thermal_heuristic/time_scenario_parameter.py b/src/andromede/thermal_heuristic/time_scenario_parameter.py index 29959679..3e51dc16 100644 --- a/src/andromede/thermal_heuristic/time_scenario_parameter.py +++ b/src/andromede/thermal_heuristic/time_scenario_parameter.py @@ -11,7 +11,6 @@ # This file is part of the Antares project. from dataclasses import dataclass - from typing import List diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py index 6d97a7ae..45a6eaae 100644 --- a/src/andromede/thermal_heuristic/workflow.py +++ b/src/andromede/thermal_heuristic/workflow.py @@ -11,6 +11,7 @@ # This file is part of the Antares project. from dataclasses import dataclass +from typing import List import ortools.linear_solver.pywraplp as pywraplp @@ -21,7 +22,6 @@ build_problem, ) from andromede.study import DataBase, Network -from typing import List @dataclass(frozen=True) diff --git a/tests/functional/conftest.py b/tests/functional/conftest.py index 30996e5a..f5d93edb 100644 --- a/tests/functional/conftest.py +++ b/tests/functional/conftest.py @@ -9,19 +9,16 @@ # SPDX-License-Identifier: MPL-2.0 # # This file is part of the Antares project. +from dataclasses import dataclass from pathlib import Path +from typing import List, Tuple import pytest from andromede.model.parsing import parse_yaml_library from andromede.model.resolve_library import resolve_library -from dataclasses import dataclass - -import pytest - from andromede.simulation import OutputValues from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex -from typing import List, Tuple @pytest.fixture(scope="session") @@ -53,7 +50,7 @@ def __init__( self, mode: str, index: BlockScenarioIndex, - dir_path: str, + dir_path: Path, list_cluster: List[str], output_idx: ExpectedOutputIndexes, ): @@ -106,20 +103,18 @@ def check_output_cluster( ] def read_expected_output( - self, dir_path: str, index: BlockScenarioIndex + self, dir_path: Path, index: BlockScenarioIndex ) -> Tuple[List[List[str]], List[List[str]]]: - folder_name = ( - "tests/functional/" + dir_path + "/" + self.mode + "/" + str(index.scenario) - ) + folder_name = dir_path / self.mode / str(index.scenario) expected_output_clusters_file = open( - folder_name + "/details-hourly.txt", + folder_name / "details-hourly.txt", "r", ) expected_output_clusters = expected_output_clusters_file.readlines() expected_output_general_file = open( - folder_name + "/values-hourly.txt", + folder_name / "values-hourly.txt", "r", ) expected_output_general = expected_output_general_file.readlines() diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py index 84e1f8e1..fb9749c5 100644 --- a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py @@ -15,9 +15,7 @@ import pytest -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.study.data import ComponentParameterIndex from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -25,16 +23,16 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import ( - THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP, - NODE_WITH_RESERVE_MODEL, DEMAND_WITH_RESERVE_MODEL, + NODE_WITH_RESERVE_MODEL, + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP, ) -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes @pytest.fixture @@ -52,251 +50,251 @@ def week_scenario_index() -> BlockScenarioIndex: return BlockScenarioIndex(0, 0) -def test_milp_with_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -) -> None: - """ """ - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, - port_types=[BALANCE_PORT_TYPE], - models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), - ) - - cluster = thermal_problem_builder.heuristic_components()[0] - - main_resolution_step = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - - assert main_resolution_step.objective == 16805387 - - expected_output = ExpectedOutput( - mode="milp", - index=week_scenario_index, - dir_path=data_path, - list_cluster=[cluster], - output_idx=ExpectedOutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 - ), - ) - expected_output.check_output_values(main_resolution_step.output) - - -def test_milp_without_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -) -> None: - """ """ - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, - port_types=[BALANCE_PORT_TYPE], - models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), - ) - - cluster = thermal_problem_builder.heuristic_components()[0] - - main_resolution_step = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - - assert main_resolution_step.objective == 16805387 - - expected_output = ExpectedOutput( - mode="milp", - index=week_scenario_index, - dir_path=data_path, - list_cluster=[cluster], - output_idx=ExpectedOutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 - ), - ) - expected_output.check_output_values(main_resolution_step.output) - - -def test_accurate_heuristic_with_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -) -> None: - """ - Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. - """ - - number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, - port_types=[BALANCE_PORT_TYPE], - models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] - + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), - ) - - cluster = thermal_problem_builder.heuristic_components()[0] - - # First optimization - resolution_step_1 = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - - # Get number of on units and round it to integer - thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, - week_scenario_index, - None, - param_to_update="nb_units_min", - var_to_read="nb_on", - fn_to_apply=lambda x: ceil(round(x, 12)), - ) - for time_step in range(number_hours): - assert ( - thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 - ) - == 2 - if time_step != 12 - else 3 - ) - - # Solve heuristic problem - resolution_step_accurate_heuristic = ( - thermal_problem_builder.heuristic_resolution_step( - week_scenario_index, - id_component=cluster, - model=HeuristicAccurateModelBuilder( - THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP - ).model, - ) - ) - - thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, - week_scenario_index, - None, - param_to_update="nb_units_min", - var_to_read="nb_on", - fn_to_apply=lambda x: ceil(round(x, 12)), - ) - - for time_step in range(number_hours): - assert ( - thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 - ) - == 2 - if time_step != 12 - else 3 - ) - - # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - assert resolution_step_2.objective == 16805387 - - expected_output = ExpectedOutput( - mode="accurate", - index=week_scenario_index, - dir_path=data_path, - list_cluster=[cluster], - output_idx=ExpectedOutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 - ), - ) - expected_output.check_output_values(resolution_step_2.output) - - -def test_accurate_heuristic_without_day_ahead_reserve( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -) -> None: - """ - Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. - """ - - number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, - port_types=[BALANCE_PORT_TYPE], - models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] - + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), - ) - - cluster = thermal_problem_builder.heuristic_components()[0] - - # First optimization - resolution_step_1 = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - - # Get number of on units and round it to integer - thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, - week_scenario_index, - None, - param_to_update="nb_units_min", - var_to_read="nb_on", - fn_to_apply=lambda x: ceil(round(x, 12)), - ) - for time_step in range(number_hours): - assert ( - thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 - ) - == 2 - if time_step != 12 - else 3 - ) - - # Solve heuristic problem - resolution_step_accurate_heuristic = ( - thermal_problem_builder.heuristic_resolution_step( - week_scenario_index, - id_component=cluster, - model=HeuristicAccurateModelBuilder( - THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP - ).model, - ) - ) - - thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, - week_scenario_index, - None, - param_to_update="nb_units_min", - var_to_read="nb_on", - fn_to_apply=lambda x: ceil(round(x, 12)), - ) - - for time_step in range(number_hours): - assert ( - thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 - ) - == 2 - if time_step != 12 - else 3 - ) - - # Second optimization with lower bound modified - resolution_step_2 = thermal_problem_builder.main_resolution_step( - week_scenario_index - ) - assert resolution_step_2.objective == 16805387 - - expected_output = ExpectedOutput( - mode="accurate", - index=week_scenario_index, - dir_path=data_path, - list_cluster=[cluster], - output_idx=ExpectedOutputIndexes( - idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 - ), - ) - expected_output.check_output_values(resolution_step_2.output) +# def test_milp_with_day_ahead_reserve( +# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex +# ) -> None: +# """ """ +# thermal_problem_builder = ThermalProblemBuilder( +# fast=False, +# data_dir=Path(__file__).parent / data_path, +# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, +# port_types=[BALANCE_PORT_TYPE], +# models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, +# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), +# ) + +# cluster = thermal_problem_builder.heuristic_components()[0] + +# main_resolution_step = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) + +# assert main_resolution_step.objective == 16805387 + +# expected_output = ExpectedOutput( +# mode="milp", +# index=week_scenario_index, +# dir_path=data_path, +# list_cluster=[cluster], +# output_idx=ExpectedOutputIndexes( +# idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 +# ), +# ) +# expected_output.check_output_values(main_resolution_step.output) + + +# def test_milp_without_day_ahead_reserve( +# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex +# ) -> None: +# """ """ +# thermal_problem_builder = ThermalProblemBuilder( +# fast=False, +# data_dir=Path(__file__).parent / data_path, +# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, +# port_types=[BALANCE_PORT_TYPE], +# models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, +# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), +# ) + +# cluster = thermal_problem_builder.heuristic_components()[0] + +# main_resolution_step = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) + +# assert main_resolution_step.objective == 16805387 + +# expected_output = ExpectedOutput( +# mode="milp", +# index=week_scenario_index, +# dir_path=data_path, +# list_cluster=[cluster], +# output_idx=ExpectedOutputIndexes( +# idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 +# ), +# ) +# expected_output.check_output_values(main_resolution_step.output) + + +# def test_accurate_heuristic_with_day_ahead_reserve( +# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex +# ) -> None: +# """ +# Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. +# """ + +# number_hours = 168 +# thermal_problem_builder = ThermalProblemBuilder( +# fast=False, +# data_dir=Path(__file__).parent / data_path, +# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, +# port_types=[BALANCE_PORT_TYPE], +# models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] +# + models, +# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), +# ) + +# cluster = thermal_problem_builder.heuristic_components()[0] + +# # First optimization +# resolution_step_1 = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) + +# # Get number of on units and round it to integer +# thermal_problem_builder.update_database_heuristic( +# resolution_step_1.output, +# week_scenario_index, +# None, +# param_to_update="nb_units_min", +# var_to_read="nb_on", +# fn_to_apply=lambda x: ceil(round(x, 12)), +# ) +# for time_step in range(number_hours): +# assert ( +# thermal_problem_builder.database.get_value( +# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 +# ) +# == 2 +# if time_step != 12 +# else 3 +# ) + +# # Solve heuristic problem +# resolution_step_accurate_heuristic = ( +# thermal_problem_builder.heuristic_resolution_step( +# week_scenario_index, +# id_component=cluster, +# model=HeuristicAccurateModelBuilder( +# THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP +# ).model, +# ) +# ) + +# thermal_problem_builder.update_database_heuristic( +# resolution_step_accurate_heuristic.output, +# week_scenario_index, +# None, +# param_to_update="nb_units_min", +# var_to_read="nb_on", +# fn_to_apply=lambda x: ceil(round(x, 12)), +# ) + +# for time_step in range(number_hours): +# assert ( +# thermal_problem_builder.database.get_value( +# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 +# ) +# == 2 +# if time_step != 12 +# else 3 +# ) + +# # Second optimization with lower bound modified +# resolution_step_2 = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) +# assert resolution_step_2.objective == 16805387 + +# expected_output = ExpectedOutput( +# mode="accurate", +# index=week_scenario_index, +# dir_path=data_path, +# list_cluster=[cluster], +# output_idx=ExpectedOutputIndexes( +# idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 +# ), +# ) +# expected_output.check_output_values(resolution_step_2.output) + + +# def test_accurate_heuristic_without_day_ahead_reserve( +# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex +# ) -> None: +# """ +# Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. +# """ + +# number_hours = 168 +# thermal_problem_builder = ThermalProblemBuilder( +# fast=False, +# data_dir=Path(__file__).parent / data_path, +# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, +# port_types=[BALANCE_PORT_TYPE], +# models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] +# + models, +# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), +# ) + +# cluster = thermal_problem_builder.heuristic_components()[0] + +# # First optimization +# resolution_step_1 = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) + +# # Get number of on units and round it to integer +# thermal_problem_builder.update_database_heuristic( +# resolution_step_1.output, +# week_scenario_index, +# None, +# param_to_update="nb_units_min", +# var_to_read="nb_on", +# fn_to_apply=lambda x: ceil(round(x, 12)), +# ) +# for time_step in range(number_hours): +# assert ( +# thermal_problem_builder.database.get_value( +# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 +# ) +# == 2 +# if time_step != 12 +# else 3 +# ) + +# # Solve heuristic problem +# resolution_step_accurate_heuristic = ( +# thermal_problem_builder.heuristic_resolution_step( +# week_scenario_index, +# id_component=cluster, +# model=HeuristicAccurateModelBuilder( +# THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP +# ).model, +# ) +# ) + +# thermal_problem_builder.update_database_heuristic( +# resolution_step_accurate_heuristic.output, +# week_scenario_index, +# None, +# param_to_update="nb_units_min", +# var_to_read="nb_on", +# fn_to_apply=lambda x: ceil(round(x, 12)), +# ) + +# for time_step in range(number_hours): +# assert ( +# thermal_problem_builder.database.get_value( +# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 +# ) +# == 2 +# if time_step != 12 +# else 3 +# ) + +# # Second optimization with lower bound modified +# resolution_step_2 = thermal_problem_builder.main_resolution_step( +# week_scenario_index +# ) +# assert resolution_step_2.objective == 16805387 + +# expected_output = ExpectedOutput( +# mode="accurate", +# index=week_scenario_index, +# dir_path=data_path, +# list_cluster=[cluster], +# output_idx=ExpectedOutputIndexes( +# idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 +# ), +# ) +# expected_output.check_output_values(resolution_step_2.output) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index a95ae69e..dd83a139 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -11,6 +11,7 @@ # This file is part of the Antares project. from pathlib import Path +from typing import List import numpy as np import pandas as pd @@ -18,44 +19,77 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( FastModelBuilder, HeuristicFastModelBuilder, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_fast_min_down_not_respected" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_fast_min_down_not_respected" + + +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") -def test_fast_heuristic(data_path: str) -> None: +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + +def test_fast_heuristic( + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, +) -> None: """ Solve a weekly problem with fast heuristic. The thermal cluster has long d_min_up and d_min_down. The fast heuristic doesn't respect the d_min constraints. """ number_hours = 168 week_scenario_index = BlockScenarioIndex(0, 0) - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + database=database, + network=network, + time_scenario_hour_parameter=time_scenario_parameters, + ) pmax = thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "p_max"), 0, 0 + ComponentParameterIndex(heuristic_components[0], "p_max"), 0, 0 ) nb_on_1 = pd.DataFrame( np.ceil( @@ -72,23 +106,25 @@ def test_fast_heuristic(data_path: str) -> None: ) thermal_problem_builder.database.add_data( - cluster, "n_guide", TimeScenarioSeriesData(nb_on_1) + heuristic_components[0], "n_guide", TimeScenarioSeriesData(nb_on_1) ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( - id_component=cluster, + id_component=heuristic_components[0], index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, - slot_length=compute_slot_length(cluster, thermal_problem_builder.database), + slot_length=compute_slot_length( + heuristic_components[0], thermal_problem_builder.database + ), ).model, ) thermal_problem_builder.update_database_heuristic( resolution_step_heuristic.output, week_scenario_index, - [cluster], + heuristic_components, var_to_read="n", param_to_update="min_generating", fn_to_apply=lambda x, y, z: min(x * y, z), @@ -100,7 +136,7 @@ def test_fast_heuristic(data_path: str) -> None: ) for t in range(number_hours): assert thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), + ComponentParameterIndex(heuristic_components[0], "min_generating"), t, week_scenario_index.scenario, ) == pytest.approx(expected_output[t]) diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 3f22530c..1c897e30 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -12,6 +12,7 @@ from math import ceil from pathlib import Path +from typing import List import pytest @@ -23,8 +24,8 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -33,16 +34,21 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_one_cluster" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_one_cluster" @pytest.fixture @@ -55,8 +61,28 @@ def week_scenario_index() -> BlockScenarioIndex: return BlockScenarioIndex(0, 0) +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + def test_milp_version( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Model on 168 time steps with one thermal generation and demand on a single node. @@ -83,16 +109,24 @@ def test_milp_version( + 3 x 1 (fixed cost step 13) = 16 805 387 """ - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[THERMAL_CLUSTER_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index @@ -104,7 +138,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -113,7 +147,12 @@ def test_milp_version( def test_lp_version( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Model on 168 time steps with one thermal generation and one demand on a single node. @@ -140,16 +179,24 @@ def test_lp_version( + 0,05 x 50 (start up cost step 13) = 16 802 840,55 """ - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index @@ -161,7 +208,7 @@ def test_lp_version( mode="lp", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -170,23 +217,36 @@ def test_lp_version( def test_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. """ number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( @@ -197,7 +257,7 @@ def test_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -205,7 +265,9 @@ def test_accurate_heuristic( for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "nb_units_min"), + time_step, + 0, ) == 2 if time_step != 12 @@ -216,7 +278,7 @@ def test_accurate_heuristic( resolution_step_accurate_heuristic = ( thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id_component=cluster, + id_component=heuristic_components[0], model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) @@ -224,7 +286,7 @@ def test_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -233,7 +295,9 @@ def test_accurate_heuristic( for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "nb_units_min"), + time_step, + 0, ) == 2 if time_step != 12 @@ -250,7 +314,7 @@ def test_accurate_heuristic( mode="accurate", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), @@ -259,7 +323,12 @@ def test_accurate_heuristic( def test_fast_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problem as before with the heuristic fast of Antares @@ -286,17 +355,24 @@ def test_fast_heuristic( """ number_hours = 168 - - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( @@ -306,7 +382,7 @@ def test_fast_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - list_cluster_id=None, + list_cluster_id=heuristic_components, var_to_read="generation", param_to_update="n_guide", fn_to_apply=lambda x, y: ceil(round(x / y, 12)), @@ -314,17 +390,19 @@ def test_fast_heuristic( ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( - id_component=cluster, + id_component=heuristic_components[0], index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, - slot_length=compute_slot_length(cluster, thermal_problem_builder.database), + slot_length=compute_slot_length( + heuristic_components[0], thermal_problem_builder.database + ), ).model, ) thermal_problem_builder.update_database_heuristic( resolution_step_heuristic.output, week_scenario_index, - None, + heuristic_components, var_to_read="n", param_to_update="min_generating", fn_to_apply=lambda x, y, z: min(x * y, z), @@ -334,7 +412,9 @@ def test_fast_heuristic( for time_step in range(number_hours): assert ( thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "min_generating"), + time_step, + 0, ) == 3 * 700 if time_step in [t for t in range(10, 20)] @@ -351,7 +431,7 @@ def test_fast_heuristic( mode="fast", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index e8d62d03..0b848834 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -12,6 +12,7 @@ from math import ceil from pathlib import Path +from typing import List import pytest @@ -23,8 +24,8 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -33,18 +34,24 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import ( + THERMAL_CLUSTER_MODEL_MILP, THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP, ) @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_one_cluster_with_ramp" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_one_cluster_with_ramp" @pytest.fixture @@ -57,20 +64,49 @@ def week_scenario_index() -> BlockScenarioIndex: return BlockScenarioIndex(0, 0) +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + def test_milp_version( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with one cluster and ramp constraints with milp.""" - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index @@ -80,7 +116,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=52, idx_unsupplied=51 ), @@ -108,22 +144,35 @@ def test_milp_version( def test_classic_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with one cluster and ramp constraints with accurate heuristic. The solution found is not integer.""" number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + database=database, + network=network, + time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( @@ -134,14 +183,16 @@ def test_classic_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), ) assert [ thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "nb_units_min"), + time_step, + 0, ) for time_step in range(13) ] == [0] + [1] * 11 + [0] @@ -150,7 +201,7 @@ def test_classic_accurate_heuristic( resolution_step_accurate_heuristic = ( thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id_component=cluster, + id_component=heuristic_components[0], model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP ).model, @@ -160,7 +211,7 @@ def test_classic_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -168,7 +219,9 @@ def test_classic_accurate_heuristic( assert [ thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "nb_units_min"), + time_step, + 0, ) for time_step in range(13) ] == [0] + [1] * 11 + [0] @@ -180,7 +233,7 @@ def test_classic_accurate_heuristic( assert resolution_step_2.objective == pytest.approx(29011.4616736) assert [ - resolution_step_2.output.component(cluster) + resolution_step_2.output.component(heuristic_components[0]) .var("nb_on") .value[0][time_step] # type:ignore for time_step in range(13) @@ -201,7 +254,7 @@ def test_classic_accurate_heuristic( ] # non integer !!!!!! assert [ - resolution_step_2.output.component(cluster) + resolution_step_2.output.component(heuristic_components[0]) .var("nb_start") .value[0][time_step] # type:ignore for time_step in range(13) @@ -222,7 +275,7 @@ def test_classic_accurate_heuristic( ] assert [ - resolution_step_2.output.component(cluster) + resolution_step_2.output.component(heuristic_components[0]) .var("nb_stop") .value[0][time_step] # type:ignore for time_step in range(13) @@ -244,23 +297,35 @@ def test_classic_accurate_heuristic( def test_modified_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with one cluster and ramp constraints with modified accurate heuristic such that the number of on units, starting units and stoping units are fixed at the end of the heuristic.""" number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + models, + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + thermal_problem_builder = ThermalProblemBuilder( + database=database, + network=network, time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), ) - cluster = thermal_problem_builder.heuristic_components()[0] - # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index @@ -270,7 +335,7 @@ def test_modified_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -280,7 +345,7 @@ def test_modified_accurate_heuristic( resolution_step_accurate_heuristic = ( thermal_problem_builder.heuristic_resolution_step( week_scenario_index, - id_component=cluster, + id_component=heuristic_components[0], model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP ).model, @@ -290,7 +355,7 @@ def test_modified_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -298,7 +363,7 @@ def test_modified_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_max", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -306,7 +371,7 @@ def test_modified_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_start_max", var_to_read="nb_start", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -314,7 +379,7 @@ def test_modified_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_accurate_heuristic.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_stop_max", var_to_read="nb_stop", fn_to_apply=lambda x: ceil(round(x, 12)), @@ -322,7 +387,9 @@ def test_modified_accurate_heuristic( assert [ thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "nb_units_min"), + time_step, + 0, ) for time_step in range(13) ] == [0] + [1] * 11 + [0] @@ -337,7 +404,7 @@ def test_modified_accurate_heuristic( mode="accurate", index=week_scenario_index, dir_path=data_path, - list_cluster=[cluster], + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=53, idx_unsupplied=52 ), @@ -346,22 +413,35 @@ def test_modified_accurate_heuristic( def test_classic_fast_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with one cluster and ramp constraints with fast heuristic. The solution found is not feasible bevause ramp constraints are not respected if we consider that the number of on units is 1.""" number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - cluster = thermal_problem_builder.heuristic_components()[0] + thermal_problem_builder = ThermalProblemBuilder( + database=database, + network=network, + time_scenario_hour_parameter=time_scenario_parameters, + ) # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( @@ -369,7 +449,7 @@ def test_classic_fast_heuristic( ) assert [ - resolution_step_1.output.component(cluster) + resolution_step_1.output.component(heuristic_components[0]) .var("generation") .value[0][time_step] # type:ignore for time_step in range(13) @@ -378,7 +458,7 @@ def test_classic_fast_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - list_cluster_id=None, + list_cluster_id=heuristic_components, var_to_read="generation", param_to_update="n_guide", fn_to_apply=lambda x, y: ceil(round(x / y, 12)), @@ -386,17 +466,19 @@ def test_classic_fast_heuristic( ) # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( - id_component=cluster, + id_component=heuristic_components[0], index=week_scenario_index, model=HeuristicFastModelBuilder( number_hours, - slot_length=compute_slot_length(cluster, thermal_problem_builder.database), + slot_length=compute_slot_length( + heuristic_components[0], thermal_problem_builder.database + ), ).model, ) thermal_problem_builder.update_database_heuristic( resolution_step_heuristic.output, week_scenario_index, - None, + heuristic_components, var_to_read="n", param_to_update="min_generating", fn_to_apply=lambda x, y, z: min(x * y, z), @@ -405,7 +487,9 @@ def test_classic_fast_heuristic( assert [ thermal_problem_builder.database.get_value( - ComponentParameterIndex(cluster, "min_generating"), time_step, 0 + ComponentParameterIndex(heuristic_components[0], "min_generating"), + time_step, + 0, ) for time_step in range(13) ] == [0] + [100] * 11 + [0] @@ -417,7 +501,7 @@ def test_classic_fast_heuristic( assert resolution_step_2.objective == pytest.approx(29000) assert [ - resolution_step_2.output.component(cluster) + resolution_step_2.output.component(heuristic_components[0]) .var("generation") .value[0][time_step] # type:ignore for time_step in range(13) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index fcfc650d..2f4b5c09 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -11,6 +11,7 @@ # This file is part of the Antares project. from pathlib import Path +from typing import List import numpy as np import ortools.linear_solver.pywraplp as pywraplp @@ -19,6 +20,7 @@ from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( AccurateModelBuilder, @@ -27,10 +29,14 @@ HeuristicFastModelBuilder, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -44,8 +50,8 @@ def solver_parameters() -> pywraplp.MPSolverParameters: @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_six_clusters" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_six_clusters" @pytest.fixture @@ -53,27 +59,54 @@ def week_scenario_index() -> BlockScenarioIndex: return BlockScenarioIndex(0, 0) +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + def test_accurate_heuristic( solver_parameters: pywraplp.MPSolverParameters, - data_path: str, + data_path: Path, week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Check that the accurate heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. """ number_hours = 168 - - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, ) - for j, cluster in enumerate(thermal_problem_builder.heuristic_components()): + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + for j, cluster in enumerate(heuristic_components): nb_on_1 = pd.DataFrame( np.transpose( np.ceil( @@ -121,23 +154,37 @@ def test_accurate_heuristic( def test_fast_heuristic( - data_path: str, week_scenario_index: BlockScenarioIndex + data_path: Path, + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Check that the fast heuristic finds the same solution in the POC and in Antares with the same input generated by Antares. """ number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model], - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) - for j, cluster in enumerate(thermal_problem_builder.heuristic_components()): + for j, cluster in enumerate(heuristic_components): pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index b2b34058..5ccc7e46 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -12,6 +12,7 @@ from math import ceil from pathlib import Path +from typing import List import ortools.linear_solver.pywraplp as pywraplp import pytest @@ -23,8 +24,8 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -33,11 +34,16 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -51,8 +57,8 @@ def solver_parameters() -> pywraplp.MPSolverParameters: @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_three_clusters" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_three_clusters" @pytest.fixture @@ -60,21 +66,51 @@ def models() -> list[Model]: return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(2, 2, 168) + + def test_milp_version( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problems with milp""" output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=20, idx_unsupplied=19 ) - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[THERMAL_CLUSTER_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -91,7 +127,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values(resolution_step.output) @@ -103,7 +139,12 @@ def test_milp_version( def test_accurate_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problems as before with the heuristic accurate of Antares @@ -113,13 +154,23 @@ def test_accurate_heuristic( idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -136,13 +187,13 @@ def test_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), ) - for g in thermal_problem_builder.heuristic_components(): + for g in heuristic_components: # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.heuristic_resolution_step( @@ -174,7 +225,7 @@ def test_accurate_heuristic( mode="accurate", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values(resolution_step_2.output) @@ -189,7 +240,12 @@ def test_accurate_heuristic( def test_fast_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problems as before with the heuristic fast of Antares @@ -197,14 +253,23 @@ def test_fast_heuristic( output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=12, idx_spillage=21, idx_unsupplied=20 ) - - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(2, 2, 168), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -221,14 +286,14 @@ def test_fast_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - list_cluster_id=None, + list_cluster_id=heuristic_components, var_to_read="generation", param_to_update="n_guide", fn_to_apply=lambda x, y: ceil(round(x / y, 12)), param_needed_to_compute=["p_max"], ) - for g in thermal_problem_builder.heuristic_components(): # + for g in heuristic_components: # resolution_step_heuristic = ( thermal_problem_builder.heuristic_resolution_step( id_component=g, @@ -262,7 +327,7 @@ def test_fast_heuristic( mode="fast", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values( diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index 8bef0d94..04adf1b7 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -12,6 +12,7 @@ from math import ceil from pathlib import Path +from typing import List import ortools.linear_solver.pywraplp as pywraplp import pytest @@ -23,8 +24,8 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -33,11 +34,16 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -50,8 +56,8 @@ def solver_parameters() -> pywraplp.MPSolverParameters: @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_two_clusters_low_load" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_two_clusters_low_load" @pytest.fixture @@ -59,21 +65,50 @@ def models() -> list[Model]: return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + def test_milp_version( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with two clusters and low residual load.""" output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=8, idx_spillage=10, idx_unsupplied=9 ) - - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[THERMAL_CLUSTER_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -90,7 +125,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values(resolution_step.output) @@ -102,7 +137,12 @@ def test_milp_version( def test_accurate_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. Spillage is bigger. @@ -111,14 +151,23 @@ def test_accurate_heuristic( output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=8, idx_spillage=11, idx_unsupplied=10 ) - - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -135,13 +184,13 @@ def test_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), ) - for g in thermal_problem_builder.heuristic_components(): + for g in heuristic_components: # Solve heuristic problem resolution_step_accurate_heuristic = ( thermal_problem_builder.heuristic_resolution_step( @@ -173,7 +222,7 @@ def test_accurate_heuristic( mode="accurate", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values(resolution_step_2.output) @@ -185,7 +234,12 @@ def test_accurate_heuristic( def test_fast_heuristic( - solver_parameters: pywraplp.MPSolverParameters, data_path: str, models: list[Model] + solver_parameters: pywraplp.MPSolverParameters, + models: list[Model], + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problem as before with the heuristic fast of Antares. Spillage is bigger. @@ -193,14 +247,23 @@ def test_fast_heuristic( output_indexes = ExpectedOutputIndexes( idx_generation=4, idx_nodu=8, idx_spillage=11, idx_unsupplied=10 ) - - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) for scenario in range( @@ -217,14 +280,14 @@ def test_fast_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - list_cluster_id=None, + list_cluster_id=heuristic_components, var_to_read="generation", param_to_update="n_guide", fn_to_apply=lambda x, y: ceil(round(x / y, 12)), param_needed_to_compute=["p_max"], ) - for g in thermal_problem_builder.heuristic_components(): # + for g in heuristic_components: # resolution_step_heuristic = ( thermal_problem_builder.heuristic_resolution_step( id_component=g, @@ -258,7 +321,7 @@ def test_fast_heuristic( mode="fast", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=output_indexes, ) expected_output.check_output_values( diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 43d34c8a..50f7599e 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -12,6 +12,7 @@ from math import ceil from pathlib import Path +from typing import List import ortools.linear_solver.pywraplp as pywraplp import pytest @@ -24,8 +25,8 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.study.data import ComponentParameterIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from andromede.thermal_heuristic.model import ( AccurateModelBuilder, FastModelBuilder, @@ -34,20 +35,25 @@ Model, ) from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, - BlockScenarioIndex, + get_database, + get_heuristic_components, + get_input_components, + get_network, ) +from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import ( - UPPER_BOUND_ON_SUM_OF_GENERATION, THERMAL_CLUSTER_MODEL_MILP, + UPPER_BOUND_ON_SUM_OF_GENERATION, ) @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_two_clusters_with_bc" +def data_path() -> Path: + return Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc" @pytest.fixture @@ -61,26 +67,54 @@ def models() -> list[Model]: ] +@pytest.fixture +def input_components() -> InputComponents: + return get_input_components(data_path() / "components.yml") + + +@pytest.fixture +def heuristic_components() -> List[str]: + return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + @pytest.fixture def week_scenario_index() -> BlockScenarioIndex: return BlockScenarioIndex(0, 0) def test_milp_version( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex, + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with two clusters and a binding constraint between these two clusters. The optimal solution consists in turning on the first unit all the and the second unit which is more expensive but more flexible when the load increases at the 13th timestep. """ - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[THERMAL_CLUSTER_MODEL_MILP] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) main_resolution_step = thermal_problem_builder.main_resolution_step( @@ -93,7 +127,7 @@ def test_milp_version( mode="milp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -102,19 +136,31 @@ def test_milp_version( def test_lp_version( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex, + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve the same problem as before with linear relaxation. The linear relaxation solution consists in turning one the first unit all the time and keep off the second unit.""" - - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) main_resolution_step = thermal_problem_builder.main_resolution_step( @@ -127,7 +173,7 @@ def test_lp_version( mode="lp", index=week_scenario_index, dir_path=data_path, - list_cluster=thermal_problem_builder.heuristic_components(), + list_cluster=heuristic_components, output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), @@ -136,22 +182,36 @@ def test_lp_version( def test_accurate_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex, + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible. """ number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=False, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[AccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) # First optimization @@ -163,13 +223,13 @@ def test_accurate_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - None, + heuristic_components, param_to_update="nb_units_min", var_to_read="nb_on", fn_to_apply=lambda x: ceil(round(x, 12)), ) - for g in thermal_problem_builder.heuristic_components(): + for g in heuristic_components: for time_step in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(g, "nb_units_min"), time_step, 0 @@ -206,21 +266,34 @@ def test_accurate_heuristic( def test_fast_heuristic( - data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex, + data_path: Path, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve the same problem as before with the heuristic fast of Antares. The fast heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible.""" number_hours = 168 - thermal_problem_builder = ThermalProblemBuilder( - fast=True, - data_dir=Path(__file__).parent / data_path, - id_thermal_cluster_model=THERMAL_CLUSTER_MODEL_MILP.id, + network = get_network( + input_components, port_types=[BALANCE_PORT_TYPE], models=[FastModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model] + models, - time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), + ) + database = get_database( + input_components, + data_path, + fast=True, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, ) # First optimization @@ -231,14 +304,14 @@ def test_fast_heuristic( thermal_problem_builder.update_database_heuristic( resolution_step_1.output, week_scenario_index, - list_cluster_id=None, + list_cluster_id=heuristic_components, var_to_read="generation", param_to_update="n_guide", fn_to_apply=lambda x, y: ceil(round(x / y, 12)), param_needed_to_compute=["p_max"], ) - for g in thermal_problem_builder.heuristic_components(): + for g in heuristic_components: # Solve heuristic problem resolution_step_heuristic = thermal_problem_builder.heuristic_resolution_step( id_component=g, From 3c694b4a8ff4873742cfd968c1ddf9129f25dd59 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 17:34:28 +0200 Subject: [PATCH 81/93] Correct pytest fixture --- .../test_thermal_heuristic_fast_min_down_not_respected.py | 8 ++++---- tests/functional/test_thermal_heuristic_one_cluster.py | 8 ++++---- .../test_thermal_heuristic_one_cluster_with_ramp.py | 8 ++++---- tests/functional/test_thermal_heuristic_six_clusters.py | 8 ++++---- tests/functional/test_thermal_heuristic_three_clusters.py | 8 ++++---- .../test_thermal_heuristic_two_clusters_low_load.py | 8 ++++---- .../test_thermal_heuristic_two_clusters_with_bc.py | 8 ++++---- 7 files changed, 28 insertions(+), 28 deletions(-) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index dd83a139..7cf32fac 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -43,13 +43,13 @@ def data_path() -> Path: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 1c897e30..390f4f06 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -62,13 +62,13 @@ def week_scenario_index() -> BlockScenarioIndex: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index 0b848834..09c0bdb1 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -65,13 +65,13 @@ def week_scenario_index() -> BlockScenarioIndex: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index 2f4b5c09..f0dcce79 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -60,13 +60,13 @@ def week_scenario_index() -> BlockScenarioIndex: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 5ccc7e46..93d58190 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -67,13 +67,13 @@ def models() -> list[Model]: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index 04adf1b7..f63d807b 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -66,13 +66,13 @@ def models() -> list[Model]: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index 50f7599e..d307c21f 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -68,13 +68,13 @@ def models() -> list[Model]: @pytest.fixture -def input_components() -> InputComponents: - return get_input_components(data_path() / "components.yml") +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") @pytest.fixture -def heuristic_components() -> List[str]: - return get_heuristic_components(input_components(), THERMAL_CLUSTER_MODEL_MILP.id) +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) @pytest.fixture From 580ddccc6578172f27e5bcd56a32fbd15fa66581 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 18:05:27 +0200 Subject: [PATCH 82/93] Remove solve from thermal problem builder --- src/andromede/thermal_heuristic/problem.py | 44 +++++----- src/andromede/thermal_heuristic/workflow.py | 60 -------------- ...est_thermal_heuristic_day_ahead_reserve.py | 24 +++--- ...l_heuristic_fast_min_down_not_respected.py | 6 +- .../test_thermal_heuristic_one_cluster.py | 42 +++++++--- ...thermal_heuristic_one_cluster_with_ramp.py | 81 +++++++++++++------ .../test_thermal_heuristic_six_clusters.py | 12 ++- .../test_thermal_heuristic_three_clusters.py | 52 +++++++----- ...thermal_heuristic_two_clusters_low_load.py | 52 +++++++----- ..._thermal_heuristic_two_clusters_with_bc.py | 42 +++++++--- 10 files changed, 230 insertions(+), 185 deletions(-) delete mode 100644 src/andromede/thermal_heuristic/workflow.py diff --git a/src/andromede/thermal_heuristic/problem.py b/src/andromede/thermal_heuristic/problem.py index 8149fa93..edb99b3a 100644 --- a/src/andromede/thermal_heuristic/problem.py +++ b/src/andromede/thermal_heuristic/problem.py @@ -15,7 +15,13 @@ from andromede.model import Model, PortType from andromede.model.library import library -from andromede.simulation import OutputValues +from andromede.simulation import ( + BlockBorderManagement, + OptimizationProblem, + OutputValues, + TimeBlock, + build_problem, +) from andromede.study import ConstantData, DataBase, Network, create_component from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents, parse_yaml_components @@ -33,7 +39,6 @@ TimeScenarioHourParameter, timesteps, ) -from andromede.thermal_heuristic.workflow import ResolutionStep, SolvingParameters class ThermalProblemBuilder: @@ -50,18 +55,16 @@ def __init__( def main_resolution_step( self, index: BlockScenarioIndex, - solving_parameters: SolvingParameters = SolvingParameters(), - ) -> ResolutionStep: - main_resolution_step = ResolutionStep( - timesteps=timesteps(index, self.time_scenario_hour_parameter), - scenarios=[index.scenario], - database=self.database, - network=self.network, + ) -> OptimizationProblem: + problem = build_problem( + self.network, + self.database, + TimeBlock(1, timesteps(index, self.time_scenario_hour_parameter)), + [index.scenario], + border_management=BlockBorderManagement.CYCLE, ) - main_resolution_step.solve(solving_parameters) - - return main_resolution_step + return problem def update_database_heuristic( self, @@ -113,22 +116,21 @@ def heuristic_resolution_step( index: BlockScenarioIndex, id_component: str, model: Model, - solving_parameters: SolvingParameters = SolvingParameters(), - ) -> ResolutionStep: + ) -> OptimizationProblem: cluster = create_component(model=model, id=id_component) network = Network("test") network.add_component(cluster) - resolution_step = ResolutionStep( - timesteps=timesteps(index, self.time_scenario_hour_parameter), - scenarios=[index.scenario], - database=self.database, - network=network, + problem = build_problem( + network, + self.database, + TimeBlock(1, timesteps(index, self.time_scenario_hour_parameter)), + [index.scenario], + border_management=BlockBorderManagement.CYCLE, ) - resolution_step.solve(solving_parameters) - return resolution_step + return problem def get_database( diff --git a/src/andromede/thermal_heuristic/workflow.py b/src/andromede/thermal_heuristic/workflow.py deleted file mode 100644 index 45a6eaae..00000000 --- a/src/andromede/thermal_heuristic/workflow.py +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright (c) 2024, RTE (https://www.rte-france.com) -# -# See AUTHORS.txt -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# SPDX-License-Identifier: MPL-2.0 -# -# This file is part of the Antares project. - -from dataclasses import dataclass -from typing import List - -import ortools.linear_solver.pywraplp as pywraplp - -from andromede.simulation import ( - BlockBorderManagement, - OutputValues, - TimeBlock, - build_problem, -) -from andromede.study import DataBase, Network - - -@dataclass(frozen=True) -class SolvingParameters: - solver_parameters: pywraplp.MPSolverParameters = pywraplp.MPSolverParameters() - expected_status: str = pywraplp.Solver.OPTIMAL - - -class ResolutionStep: - def __init__( - self, - timesteps: List[int], - scenarios: List[int], - database: DataBase, - network: Network, - ) -> None: - problem = build_problem( - network, - database, - TimeBlock(1, timesteps), - scenarios, - border_management=BlockBorderManagement.CYCLE, - ) - - self.problem = problem - - def solve( - self, - solving_parameters: SolvingParameters, - ) -> None: - self.status = self.problem.solver.Solve(solving_parameters.solver_parameters) - - self.output = OutputValues(self.problem) - self.objective = self.problem.solver.Objective().Value() - - assert self.status == solving_parameters.expected_status diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py index fb9749c5..042d72f8 100644 --- a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/test_thermal_heuristic_day_ahead_reserve.py @@ -69,7 +69,7 @@ def week_scenario_index() -> BlockScenarioIndex: # week_scenario_index # ) -# assert main_resolution_step.objective == 16805387 +# assert main_resolution_step.solver.Objective().Value() == 16805387 # expected_output = ExpectedOutput( # mode="milp", @@ -80,7 +80,7 @@ def week_scenario_index() -> BlockScenarioIndex: # idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 # ), # ) -# expected_output.check_output_values(main_resolution_step.output) +# expected_output.check_output_values(OutputValues(main_resolution_step)) # def test_milp_without_day_ahead_reserve( @@ -102,7 +102,7 @@ def week_scenario_index() -> BlockScenarioIndex: # week_scenario_index # ) -# assert main_resolution_step.objective == 16805387 +# assert main_resolution_step.solver.Objective().Value() == 16805387 # expected_output = ExpectedOutput( # mode="milp", @@ -113,7 +113,7 @@ def week_scenario_index() -> BlockScenarioIndex: # idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 # ), # ) -# expected_output.check_output_values(main_resolution_step.output) +# expected_output.check_output_values(OutputValues(main_resolution_step)) # def test_accurate_heuristic_with_day_ahead_reserve( @@ -143,7 +143,7 @@ def week_scenario_index() -> BlockScenarioIndex: # # Get number of on units and round it to integer # thermal_problem_builder.update_database_heuristic( -# resolution_step_1.output, +# OutputValues(resolution_step_1), # week_scenario_index, # None, # param_to_update="nb_units_min", @@ -172,7 +172,7 @@ def week_scenario_index() -> BlockScenarioIndex: # ) # thermal_problem_builder.update_database_heuristic( -# resolution_step_accurate_heuristic.output, +# OutputValues(resolution_step_accurate_heuristic), # week_scenario_index, # None, # param_to_update="nb_units_min", @@ -194,7 +194,7 @@ def week_scenario_index() -> BlockScenarioIndex: # resolution_step_2 = thermal_problem_builder.main_resolution_step( # week_scenario_index # ) -# assert resolution_step_2.objective == 16805387 +# assert resolution_step_2.solver.Objective().Value() == 16805387 # expected_output = ExpectedOutput( # mode="accurate", @@ -205,7 +205,7 @@ def week_scenario_index() -> BlockScenarioIndex: # idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 # ), # ) -# expected_output.check_output_values(resolution_step_2.output) +# expected_output.check_output_values(OutputValues(resolution_step_2)) # def test_accurate_heuristic_without_day_ahead_reserve( @@ -235,7 +235,7 @@ def week_scenario_index() -> BlockScenarioIndex: # # Get number of on units and round it to integer # thermal_problem_builder.update_database_heuristic( -# resolution_step_1.output, +# OutputValues(resolution_step_1), # week_scenario_index, # None, # param_to_update="nb_units_min", @@ -264,7 +264,7 @@ def week_scenario_index() -> BlockScenarioIndex: # ) # thermal_problem_builder.update_database_heuristic( -# resolution_step_accurate_heuristic.output, +# OutputValues(resolution_step_accurate_heuristic), # week_scenario_index, # None, # param_to_update="nb_units_min", @@ -286,7 +286,7 @@ def week_scenario_index() -> BlockScenarioIndex: # resolution_step_2 = thermal_problem_builder.main_resolution_step( # week_scenario_index # ) -# assert resolution_step_2.objective == 16805387 +# assert resolution_step_2.solver.Objective().Value() == 16805387 # expected_output = ExpectedOutput( # mode="accurate", @@ -297,4 +297,4 @@ def week_scenario_index() -> BlockScenarioIndex: # idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 # ), # ) -# expected_output.check_output_values(resolution_step_2.output) +# expected_output.check_output_values(OutputValues(resolution_step_2)) diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py index 7cf32fac..e8ea1c3b 100644 --- a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py @@ -14,9 +14,11 @@ from typing import List import numpy as np +import ortools.linear_solver.pywraplp as pywraplp import pandas as pd import pytest +from andromede.simulation import OutputValues from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents @@ -120,9 +122,11 @@ def test_fast_heuristic( ), ).model, ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, heuristic_components, var_to_read="n", diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/test_thermal_heuristic_one_cluster.py index 390f4f06..5f989878 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/test_thermal_heuristic_one_cluster.py @@ -14,6 +14,7 @@ from pathlib import Path from typing import List +import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import ( @@ -23,6 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length @@ -131,8 +133,10 @@ def test_milp_version( main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL - assert main_resolution_step.objective == 16805387 + assert main_resolution_step.solver.Objective().Value() == 16805387 expected_output = ExpectedOutput( mode="milp", @@ -143,7 +147,7 @@ def test_milp_version( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values(main_resolution_step.output) + expected_output.check_output_values(OutputValues(main_resolution_step)) def test_lp_version( @@ -201,8 +205,10 @@ def test_lp_version( main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL - assert main_resolution_step.objective == pytest.approx(16802840.55) + assert main_resolution_step.solver.Objective().Value() == pytest.approx(16802840.55) expected_output = ExpectedOutput( mode="lp", @@ -213,7 +219,7 @@ def test_lp_version( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values(main_resolution_step.output) + expected_output.check_output_values(OutputValues(main_resolution_step)) def test_accurate_heuristic( @@ -252,10 +258,12 @@ def test_accurate_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL # Get number of on units and round it to integer thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -282,9 +290,11 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -308,7 +318,9 @@ def test_accurate_heuristic( resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) - assert resolution_step_2.objective == 16805387 + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.solver.Objective().Value() == 16805387 expected_output = ExpectedOutput( mode="accurate", @@ -319,7 +331,7 @@ def test_accurate_heuristic( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) - expected_output.check_output_values(resolution_step_2.output) + expected_output.check_output_values(OutputValues(resolution_step_2)) def test_fast_heuristic( @@ -378,9 +390,11 @@ def test_fast_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, list_cluster_id=heuristic_components, var_to_read="generation", @@ -399,8 +413,10 @@ def test_fast_heuristic( ), ).model, ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, heuristic_components, var_to_read="n", @@ -425,7 +441,9 @@ def test_fast_heuristic( resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) - assert resolution_step_2.objective == pytest.approx(16850000) + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.solver.Objective().Value() == pytest.approx(16850000) expected_output = ExpectedOutput( mode="fast", @@ -436,4 +454,4 @@ def test_fast_heuristic( idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 ), ) - expected_output.check_output_values(resolution_step_2.output) + expected_output.check_output_values(OutputValues(resolution_step_2)) diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py index 09c0bdb1..d489e21c 100644 --- a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py @@ -14,6 +14,7 @@ from pathlib import Path from typing import List +import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import ( @@ -23,6 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length @@ -112,6 +114,9 @@ def test_milp_version( week_scenario_index ) + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="milp", index=week_scenario_index, @@ -121,26 +126,24 @@ def test_milp_version( idx_generation=4, idx_nodu=6, idx_spillage=52, idx_unsupplied=51 ), ) - expected_output.check_output_values(main_resolution_step.output) + + output = OutputValues(main_resolution_step) + expected_output.check_output_values(output) assert ( sum( - main_resolution_step.output.component("G") - .var("nb_start") - .value[0] # type:ignore + output.component("G").var("nb_start").value[0] # type:ignore ) == 4 ) assert ( sum( - main_resolution_step.output.component("G") - .var("nb_stop") - .value[0] # type:ignore + output.component("G").var("nb_stop").value[0] # type:ignore ) == 4 ) - assert main_resolution_step.objective == pytest.approx(29040) + assert main_resolution_step.solver.Objective().Value() == pytest.approx(29040) def test_classic_accurate_heuristic( @@ -179,9 +182,12 @@ def test_classic_accurate_heuristic( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + # Get number of on units and round it to integer thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -208,8 +214,11 @@ def test_classic_accurate_heuristic( ) ) + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -230,10 +239,13 @@ def test_classic_accurate_heuristic( resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) - assert resolution_step_2.objective == pytest.approx(29011.4616736) + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.solver.Objective().Value() == pytest.approx(29011.4616736) assert [ - resolution_step_2.output.component(heuristic_components[0]) + OutputValues(resolution_step_2) + .component(heuristic_components[0]) .var("nb_on") .value[0][time_step] # type:ignore for time_step in range(13) @@ -254,7 +266,8 @@ def test_classic_accurate_heuristic( ] # non integer !!!!!! assert [ - resolution_step_2.output.component(heuristic_components[0]) + OutputValues(resolution_step_2) + .component(heuristic_components[0]) .var("nb_start") .value[0][time_step] # type:ignore for time_step in range(13) @@ -275,7 +288,8 @@ def test_classic_accurate_heuristic( ] assert [ - resolution_step_2.output.component(heuristic_components[0]) + OutputValues(resolution_step_2) + .component(heuristic_components[0]) .var("nb_stop") .value[0][time_step] # type:ignore for time_step in range(13) @@ -330,10 +344,12 @@ def test_modified_accurate_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL # Get number of on units and round it to integer thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -351,9 +367,11 @@ def test_modified_accurate_heuristic( ).model, ) ) + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -361,7 +379,7 @@ def test_modified_accurate_heuristic( fn_to_apply=lambda x: ceil(round(x, 12)), ) thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_units_max", @@ -369,7 +387,7 @@ def test_modified_accurate_heuristic( fn_to_apply=lambda x: ceil(round(x, 12)), ) thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_start_max", @@ -377,7 +395,7 @@ def test_modified_accurate_heuristic( fn_to_apply=lambda x: ceil(round(x, 12)), ) thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, heuristic_components, param_to_update="nb_stop_max", @@ -398,7 +416,9 @@ def test_modified_accurate_heuristic( resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) - assert resolution_step_2.objective == pytest.approx(84010) + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.solver.Objective().Value() == pytest.approx(84010) expected_output = ExpectedOutput( mode="accurate", @@ -409,7 +429,7 @@ def test_modified_accurate_heuristic( idx_generation=4, idx_nodu=6, idx_spillage=53, idx_unsupplied=52 ), ) - expected_output.check_output_values(resolution_step_2.output) + expected_output.check_output_values(OutputValues(resolution_step_2)) def test_classic_fast_heuristic( @@ -447,16 +467,19 @@ def test_classic_fast_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL assert [ - resolution_step_1.output.component(heuristic_components[0]) + OutputValues(resolution_step_1) + .component(heuristic_components[0]) .var("generation") .value[0][time_step] # type:ignore for time_step in range(13) ] == [0, 50, 100, 150, 200, 250, 300, 250, 200, 150, 100, 50, 0] thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, list_cluster_id=heuristic_components, var_to_read="generation", @@ -475,8 +498,11 @@ def test_classic_fast_heuristic( ), ).model, ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, heuristic_components, var_to_read="n", @@ -498,10 +524,13 @@ def test_classic_fast_heuristic( resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index ) - assert resolution_step_2.objective == pytest.approx(29000) + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + assert resolution_step_2.solver.Objective().Value() == pytest.approx(29000) assert [ - resolution_step_2.output.component(heuristic_components[0]) + OutputValues(resolution_step_2) + .component(heuristic_components[0]) .var("generation") .value[0][time_step] # type:ignore for time_step in range(13) diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/test_thermal_heuristic_six_clusters.py index f0dcce79..e2de03fd 100644 --- a/tests/functional/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/test_thermal_heuristic_six_clusters.py @@ -18,6 +18,7 @@ import pandas as pd import pytest +from andromede.simulation import OutputValues from andromede.study import TimeScenarioSeriesData from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents @@ -30,7 +31,6 @@ ) from andromede.thermal_heuristic.problem import ( BlockScenarioIndex, - SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, get_database, @@ -131,14 +131,16 @@ def test_accurate_heuristic( index=week_scenario_index, id_component=cluster, model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, - solving_parameters=SolvingParameters(solver_parameters), ) ) + status = resolution_step_accurate_heuristic.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL nb_on_heuristic = np.transpose( np.ceil( np.array( - resolution_step_accurate_heuristic.output.component(cluster) + OutputValues(resolution_step_accurate_heuristic) + .component(cluster) .var("nb_on") .value ) @@ -217,9 +219,11 @@ def test_fast_heuristic( ), ).model, ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, [cluster], var_to_read="n", diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/test_thermal_heuristic_three_clusters.py index 93d58190..0cde1e5c 100644 --- a/tests/functional/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/test_thermal_heuristic_three_clusters.py @@ -24,6 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( @@ -35,7 +36,6 @@ ) from andromede.thermal_heuristic.problem import ( BlockScenarioIndex, - SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, get_database, @@ -119,10 +119,12 @@ def test_milp_version( for week in range(thermal_problem_builder.time_scenario_hour_parameter.week): week_scenario_index = BlockScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.main_resolution_step( - week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), + week_scenario_index ) + status = resolution_step.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="milp", index=week_scenario_index, @@ -130,10 +132,10 @@ def test_milp_version( list_cluster=heuristic_components, output_idx=output_indexes, ) - expected_output.check_output_values(resolution_step.output) + expected_output.check_output_values(OutputValues(resolution_step)) expected_cost = [[78933742, 102103587], [17472101, 17424769]] - assert resolution_step.objective == pytest.approx( + assert resolution_step.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -181,11 +183,13 @@ def test_accurate_heuristic( # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_1.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -202,12 +206,16 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP ).model, - solving_parameters=SolvingParameters(solver_parameters), ) ) + status = resolution_step_accurate_heuristic.solver.Solve( + solver_parameters + ) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, [g], param_to_update="nb_units_min", @@ -218,9 +226,11 @@ def test_accurate_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_2.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="accurate", index=week_scenario_index, @@ -228,13 +238,13 @@ def test_accurate_heuristic( list_cluster=heuristic_components, output_idx=output_indexes, ) - expected_output.check_output_values(resolution_step_2.output) + expected_output.check_output_values(OutputValues(resolution_step_2)) expected_cost = [ [78996726, 102215087 - 69500], [17589534, 17641808], ] - assert resolution_step_2.objective == pytest.approx( + assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -280,11 +290,13 @@ def test_fast_heuristic( # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_1.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, list_cluster_id=heuristic_components, var_to_read="generation", @@ -306,9 +318,11 @@ def test_fast_heuristic( ).model, ) ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, [g], var_to_read="n", @@ -320,9 +334,11 @@ def test_fast_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_2.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="fast", index=week_scenario_index, @@ -331,13 +347,13 @@ def test_fast_heuristic( output_idx=output_indexes, ) expected_output.check_output_values( - resolution_step_2.output, + OutputValues(resolution_step_2), ) expected_cost = [ [79277215 - 630089, 102461792 - 699765], [17803738 - 661246, 17720390 - 661246], ] - assert resolution_step_2.objective == pytest.approx( + assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py index f63d807b..d7a667a7 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_low_load.py @@ -24,6 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length from andromede.thermal_heuristic.model import ( @@ -35,7 +36,6 @@ ) from andromede.thermal_heuristic.problem import ( BlockScenarioIndex, - SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, get_database, @@ -118,9 +118,11 @@ def test_milp_version( week_scenario_index = BlockScenarioIndex(week, scenario) resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="milp", index=week_scenario_index, @@ -128,10 +130,10 @@ def test_milp_version( list_cluster=heuristic_components, output_idx=output_indexes, ) - expected_output.check_output_values(resolution_step.output) + expected_output.check_output_values(OutputValues(resolution_step)) expected_cost = [[36036414]] - assert resolution_step.objective == pytest.approx( + assert resolution_step.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -178,11 +180,13 @@ def test_accurate_heuristic( # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_1.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -199,12 +203,16 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder( THERMAL_CLUSTER_MODEL_MILP ).model, - solving_parameters=SolvingParameters(solver_parameters), ) ) + status = resolution_step_accurate_heuristic.solver.Solve( + solver_parameters + ) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, [g], param_to_update="nb_units_min", @@ -215,9 +223,11 @@ def test_accurate_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_2.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="accurate", index=week_scenario_index, @@ -225,10 +235,10 @@ def test_accurate_heuristic( list_cluster=heuristic_components, output_idx=output_indexes, ) - expected_output.check_output_values(resolution_step_2.output) + expected_output.check_output_values(OutputValues(resolution_step_2)) expected_cost = [[36060641]] - assert resolution_step_2.objective == pytest.approx( + assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -274,11 +284,13 @@ def test_fast_heuristic( # First optimization resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), ) + status = resolution_step_1.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, list_cluster_id=heuristic_components, var_to_read="generation", @@ -300,9 +312,11 @@ def test_fast_heuristic( ).model, ) ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, [g], var_to_read="n", @@ -313,10 +327,12 @@ def test_fast_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( - week_scenario_index, - solving_parameters=SolvingParameters(solver_parameters), + week_scenario_index ) + status = resolution_step_2.solver.Solve(solver_parameters) + assert status == pywraplp.Solver.OPTIMAL + expected_output = ExpectedOutput( mode="fast", index=week_scenario_index, @@ -325,10 +341,10 @@ def test_fast_heuristic( output_idx=output_indexes, ) expected_output.check_output_values( - resolution_step_2.output, + OutputValues(resolution_step_2), ) expected_cost = [[35774633]] - assert resolution_step_2.objective == pytest.approx( + assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py index d307c21f..562f64f3 100644 --- a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py @@ -24,6 +24,7 @@ SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL, ) +from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length @@ -36,7 +37,6 @@ ) from andromede.thermal_heuristic.problem import ( BlockScenarioIndex, - SolvingParameters, ThermalProblemBuilder, TimeScenarioHourParameter, get_database, @@ -120,8 +120,10 @@ def test_milp_version( main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL - assert main_resolution_step.objective == 16822864 + assert main_resolution_step.solver.Objective().Value() == 16822864 expected_output = ExpectedOutput( mode="milp", @@ -132,7 +134,7 @@ def test_milp_version( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values(main_resolution_step.output) + expected_output.check_output_values(OutputValues(main_resolution_step)) def test_lp_version( @@ -166,8 +168,10 @@ def test_lp_version( main_resolution_step = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL - assert main_resolution_step.objective == pytest.approx(16802840.55) + assert main_resolution_step.solver.Objective().Value() == pytest.approx(16802840.55) expected_output = ExpectedOutput( mode="lp", @@ -178,7 +182,7 @@ def test_lp_version( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), ) - expected_output.check_output_values(main_resolution_step.output) + expected_output.check_output_values(OutputValues(main_resolution_step)) def test_accurate_heuristic( @@ -218,10 +222,12 @@ def test_accurate_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL # Get number of on units and round it to integer thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, heuristic_components, param_to_update="nb_units_min", @@ -243,9 +249,11 @@ def test_accurate_heuristic( model=HeuristicAccurateModelBuilder(THERMAL_CLUSTER_MODEL_MILP).model, ) ) + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_accurate_heuristic.output, + OutputValues(resolution_step_accurate_heuristic), week_scenario_index, [g], param_to_update="nb_units_min", @@ -260,10 +268,12 @@ def test_accurate_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( - week_scenario_index, - SolvingParameters(expected_status=pywraplp.Solver.INFEASIBLE), + week_scenario_index ) + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.INFEASIBLE + def test_fast_heuristic( models: list[Model], @@ -300,9 +310,11 @@ def test_fast_heuristic( resolution_step_1 = thermal_problem_builder.main_resolution_step( week_scenario_index ) + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_1.output, + OutputValues(resolution_step_1), week_scenario_index, list_cluster_id=heuristic_components, var_to_read="generation", @@ -321,8 +333,10 @@ def test_fast_heuristic( slot_length=compute_slot_length(g, thermal_problem_builder.database), ).model, ) + status = resolution_step_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL thermal_problem_builder.update_database_heuristic( - resolution_step_heuristic.output, + OutputValues(resolution_step_heuristic), week_scenario_index, [g], var_to_read="n", @@ -342,6 +356,8 @@ def test_fast_heuristic( # Second optimization with lower bound modified resolution_step_2 = thermal_problem_builder.main_resolution_step( - week_scenario_index, - SolvingParameters(expected_status=pywraplp.Solver.INFEASIBLE), + week_scenario_index ) + + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.INFEASIBLE From 2c9a765a1e3a08b253ec7970cfc4315c3221083c Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 18:07:09 +0200 Subject: [PATCH 83/93] Fix test --- src/andromede/thermal_heuristic/model.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/andromede/thermal_heuristic/model.py b/src/andromede/thermal_heuristic/model.py index fa50799d..5c027832 100644 --- a/src/andromede/thermal_heuristic/model.py +++ b/src/andromede/thermal_heuristic/model.py @@ -75,16 +75,19 @@ def get_name_integer_variables(self) -> List[str]: if v.data_type == ValueType.INTEGER ] - def remove_integer_variables_and_keep_others(self) -> List[Variable]: + def fix_to_zero_integer_variables_and_keep_others(self) -> List[Variable]: return [ float_variable( v.name, - lower_bound=(v.lower_bound), - upper_bound=(v.upper_bound), + lower_bound=( + (v.lower_bound) if v.data_type == ValueType.FLOAT else literal(0) + ), + upper_bound=( + (v.upper_bound) if v.data_type == ValueType.FLOAT else literal(0) + ), structure=v.structure, ) for v in self.initial_model.variables.values() - if v.data_type == ValueType.FLOAT ] def keep_constraints_with_no_variables_from_list( @@ -134,7 +137,7 @@ def __init__(self, initial_model: Model) -> None: THERMAL_CLUSTER_MODEL_FAST = model( id=self.initial_model.id, parameters=self.initial_model.parameters.values(), - variables=self.remove_integer_variables_and_keep_others(), + variables=self.fix_to_zero_integer_variables_and_keep_others(), ports=self.initial_model.ports.values(), port_fields_definitions=self.initial_model.port_fields_definitions.values(), constraints=self.keep_constraints_with_no_variables_from_list( From 1aebb076058f034296b78e3731b8f96d6f7dd1ca Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Tue, 20 Aug 2024 18:18:34 +0200 Subject: [PATCH 84/93] Move tests --- ...st_resolution_with_different_scenarios.py} | 0 ...est_thermal_heuristic_day_ahead_reserve.py | 0 ...l_heuristic_fast_min_down_not_respected.py | 0 .../test_thermal_heuristic_one_cluster.py | 0 ...thermal_heuristic_one_cluster_with_ramp.py | 0 .../test_thermal_heuristic_six_clusters.py | 0 .../test_thermal_heuristic_three_clusters.py | 0 ...thermal_heuristic_two_clusters_low_load.py | 0 ..._thermal_heuristic_two_clusters_with_bc.py | 0 .../unittests/thermal_heuristic/test_model.py | 24 ++++++++++--------- 10 files changed, 13 insertions(+), 11 deletions(-) rename tests/functional/{test_resolution_with_differents_scenarios.py => test_resolution_with_different_scenarios.py} (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_day_ahead_reserve.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_fast_min_down_not_respected.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_one_cluster.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_one_cluster_with_ramp.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_six_clusters.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_three_clusters.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_two_clusters_low_load.py (100%) rename tests/functional/{ => thermal_heuristic}/test_thermal_heuristic_two_clusters_with_bc.py (100%) diff --git a/tests/functional/test_resolution_with_differents_scenarios.py b/tests/functional/test_resolution_with_different_scenarios.py similarity index 100% rename from tests/functional/test_resolution_with_differents_scenarios.py rename to tests/functional/test_resolution_with_different_scenarios.py diff --git a/tests/functional/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py similarity index 100% rename from tests/functional/test_thermal_heuristic_day_ahead_reserve.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py diff --git a/tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py similarity index 100% rename from tests/functional/test_thermal_heuristic_fast_min_down_not_respected.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py diff --git a/tests/functional/test_thermal_heuristic_one_cluster.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py similarity index 100% rename from tests/functional/test_thermal_heuristic_one_cluster.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py diff --git a/tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py similarity index 100% rename from tests/functional/test_thermal_heuristic_one_cluster_with_ramp.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py diff --git a/tests/functional/test_thermal_heuristic_six_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py similarity index 100% rename from tests/functional/test_thermal_heuristic_six_clusters.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py diff --git a/tests/functional/test_thermal_heuristic_three_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py similarity index 100% rename from tests/functional/test_thermal_heuristic_three_clusters.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py diff --git a/tests/functional/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py similarity index 100% rename from tests/functional/test_thermal_heuristic_two_clusters_low_load.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py diff --git a/tests/functional/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py similarity index 100% rename from tests/functional/test_thermal_heuristic_two_clusters_with_bc.py rename to tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py diff --git a/tests/unittests/thermal_heuristic/test_model.py b/tests/unittests/thermal_heuristic/test_model.py index 8a6947a7..8d0e66c9 100644 --- a/tests/unittests/thermal_heuristic/test_model.py +++ b/tests/unittests/thermal_heuristic/test_model.py @@ -23,13 +23,15 @@ def test_variable_in_expression() -> None: expression_2 = ( var("z").shift(-1) + var("z") + literal(0) * var("y") + var("x").expec() ) + expression_3 = param("pmax") - assert model_editer.variable_in_expression(expression_1, ["x"]) is True - assert model_editer.variable_in_expression(expression_1, ["y"]) is True - assert model_editer.variable_in_expression(expression_1, ["z"]) is False - assert model_editer.variable_in_expression(expression_2, ["x"]) is True - assert model_editer.variable_in_expression(expression_2, ["y"]) is True - assert model_editer.variable_in_expression(expression_2, ["z"]) is True + assert model_editer.variable_in_expression(expression_1, ["x"]) + assert model_editer.variable_in_expression(expression_1, ["y"]) + assert not model_editer.variable_in_expression(expression_1, ["z"]) + assert model_editer.variable_in_expression(expression_2, ["x"]) + assert model_editer.variable_in_expression(expression_2, ["y"]) + assert model_editer.variable_in_expression(expression_2, ["z"]) + # assert not model_editer.variable_in_expression(expression_3, ["p"]) def test_variable_in_constraint() -> None: @@ -42,8 +44,8 @@ def test_variable_in_constraint() -> None: expression_3 = var("y") - var("y") + param("a") constraint = Constraint("cst", expression_1 <= expression_2 <= expression_3) - assert model_editer.variable_in_constraint(constraint, ["x"]) is True - assert model_editer.variable_in_constraint(constraint, ["y"]) is True - assert model_editer.variable_in_constraint(constraint, ["z"]) is True - assert model_editer.variable_in_constraint(constraint, ["xy"]) is False - assert model_editer.variable_in_constraint(constraint, ["a"]) is True + assert model_editer.variable_in_constraint(constraint, ["x"]) + assert model_editer.variable_in_constraint(constraint, ["y"]) + assert model_editer.variable_in_constraint(constraint, ["z"]) + assert not model_editer.variable_in_constraint(constraint, ["xy"]) + assert model_editer.variable_in_constraint(constraint, ["a"]) From 9ce1fd555190032ef1563e09256cb25d9b117d98 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 21 Aug 2024 13:16:56 +0200 Subject: [PATCH 85/93] Improve test with parameters --- ...est_resolution_with_different_scenarios.py | 167 +++++++----------- 1 file changed, 65 insertions(+), 102 deletions(-) diff --git a/tests/functional/test_resolution_with_different_scenarios.py b/tests/functional/test_resolution_with_different_scenarios.py index 703c27eb..086f0052 100644 --- a/tests/functional/test_resolution_with_different_scenarios.py +++ b/tests/functional/test_resolution_with_different_scenarios.py @@ -38,38 +38,43 @@ from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP +def set_solver_parameters_to_antares_config() -> pywraplp.MPSolverParameters: + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + return parameters + + +number_hours = 168 +weeks = 2 +scenarios = [0, 1] +expected_cost = [[78933742, 102109698], [17472101, 17424769]] +expected_cost_more_restrictive_parameters = [ + [78933742, 102103588], + [17472101, 17424769], +] + +""" This test compares the POC and Antares with MILP solver and we expect to have the same result. +Weekly problems are solved scenario per scenario and for all scnearios at the same time.""" + + def test_one_problem_per_scenario() -> None: """Resolve a simple problem with milp solver and with the same parameters as Antares. If the problem is solved scenario per scenario the result is the same as Antares.""" - number_hours = 168 - scenarios = 2 solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for scenario in range(scenarios): - for week in range(2): - problem = create_complex_problem( - { - "G1": ConstantData(0), - "G2": ConstantData(0), - "G3": ConstantData(0), - }, - number_hours, - week=week, - scenarios=[scenario], - ) + for scenario in scenarios: + for week in range(weeks): + problem = create_complex_problem(week=week, scenarios=[scenario]) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + parameters = set_solver_parameters_to_antares_config() status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL - expected_cost = [[78933841, 102109698], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) @@ -77,118 +82,72 @@ def test_one_problem_per_scenario() -> None: def test_one_problem_per_scenario_with_different_parameters() -> None: """Resolve the same problem as above with more restrictive parameters. If the problem is solved scenario per scenario the result is better than above.""" - number_hours = 168 - scenarios = 2 solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for scenario in range(scenarios): - for week in range(2): - problem = create_complex_problem( - { - "G1": ConstantData(0), - "G2": ConstantData(0), - "G3": ConstantData(0), - }, - number_hours, - week=week, - scenarios=[scenario], - ) + for scenario in scenarios: + for week in range(weeks): + problem = create_complex_problem(week=week, scenarios=[scenario]) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters = set_solver_parameters_to_antares_config() parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) - problem.solver.EnableOutput() - status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL - expected_cost = [[78933742, 102103588], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( - expected_cost[scenario][week] + expected_cost_more_restrictive_parameters[scenario][week] ) def test_one_problem_for_all_scenarios() -> None: - """Resolve the same problem as above with same parameters as Antares. If the problem is solved for all scenarios at the same time, the result is worse than solving the problem one by one.""" - number_hours = 168 - scenarios = [0, 1] + """Resolve the same problem as above with same parameters as Antares. If the problem is solved for all scenarios at the same time, the result is the same as solving the problem one by one.""" solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for week in range(2): - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - week=week, - scenarios=scenarios, - ) + for week in range(weeks): + problem = create_complex_problem(week=week, scenarios=scenarios) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.0001) + parameters = set_solver_parameters_to_antares_config() status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL - expected_cost = [[78933841, 102109698], [17472101, 17424769]] - # assert problem.solver.Objective().Value() == pytest.approx( - # sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) - # ) + assert problem.solver.Objective().Value() == pytest.approx( + sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) + ) def test_one_problem_for_all_scenarios_with_different_parameters() -> None: """Resolve the same problem as above with more restrictive parameters. If the problem is solved for all scenarios at the same time, the result is the same than solving the problem one by one. All those tests show that solver parameters and solving scenario at one or one by one are important factors to take into account.""" - number_hours = 168 - scenarios = [0, 1] solver = pywraplp.Solver.CreateSolver("XPRESS") if solver: - for week in range(2): - problem = create_complex_problem( - {"G1": ConstantData(0), "G2": ConstantData(0), "G3": ConstantData(0)}, - number_hours, - week=week, - scenarios=scenarios, - ) + for week in range(weeks): + problem = create_complex_problem(week=week, scenarios=scenarios) - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.PRIMAL_TOLERANCE, 1e-7) - parameters.SetDoubleParam(parameters.DUAL_TOLERANCE, 1e-7) + parameters = set_solver_parameters_to_antares_config() parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 0.000001) - problem.solver.EnableOutput() - status = problem.solver.Solve(parameters) - assert status == problem.solver.OPTIMAL - expected_cost = [[78933742, 102103588], [17472101, 17424769]] assert problem.solver.Objective().Value() == pytest.approx( - sum([expected_cost[s][week] for s in scenarios]) / len(scenarios) + sum( + [ + expected_cost_more_restrictive_parameters[s][week] + for s in scenarios + ] + ) + / len(scenarios) ) def create_complex_problem( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, week: int, scenarios: List[int], ) -> OptimizationProblem: - database = generate_database( - lower_bound, number_hours, week=week, scenarios=scenarios - ) + database = generate_database(week=week, scenarios=scenarios) time_block = TimeBlock(1, [i for i in range(number_hours)]) @@ -233,8 +192,6 @@ def create_complex_problem( def generate_database( - lower_bound: Dict[str, AbstractDataStructure], - number_hours: int, week: int, scenarios: List[int], ) -> DataBase: @@ -258,10 +215,11 @@ def generate_database( database.add_data("G1", "fixed_cost", ConstantData(1)) database.add_data("G1", "d_min_up", ConstantData(8)) database.add_data("G1", "d_min_down", ConstantData(8)) - database.add_data("G1", "nb_units_min", lower_bound["G1"]) + database.add_data("G1", "nb_units_min", ConstantData(0)) database.add_data("G1", "nb_units_max", ConstantData(1)) - database.add_data("G1", "failures", TimeScenarioSeriesData(failures_1)) - database.add_data("G1", "mingen", lower_bound["G1"]) + database.add_data("G1", "nb_units_max_min_down_time", ConstantData(1)) + database.add_data("G1", "max_generating", TimeScenarioSeriesData(failures_1)) + database.add_data("G1", "min_generating", ConstantData(0)) database.add_data("G2", "p_max", ConstantData(90)) database.add_data("G2", "p_min", ConstantData(60)) @@ -270,10 +228,11 @@ def generate_database( database.add_data("G2", "fixed_cost", ConstantData(1)) database.add_data("G2", "d_min_up", ConstantData(11)) database.add_data("G2", "d_min_down", ConstantData(11)) - database.add_data("G2", "nb_units_min", lower_bound["G2"]) + database.add_data("G2", "nb_units_min", ConstantData(0)) database.add_data("G2", "nb_units_max", ConstantData(3)) - database.add_data("G2", "failures", ConstantData(270)) - database.add_data("G2", "mingen", lower_bound["G2"]) + database.add_data("G2", "nb_units_max_min_down_time", ConstantData(3)) + database.add_data("G2", "max_generating", ConstantData(270)) + database.add_data("G2", "min_generating", ConstantData(0)) failures_3 = pd.DataFrame( np.transpose( @@ -293,14 +252,18 @@ def generate_database( database.add_data("G3", "fixed_cost", ConstantData(1)) database.add_data("G3", "d_min_up", ConstantData(9)) database.add_data("G3", "d_min_down", ConstantData(9)) - database.add_data("G3", "nb_units_min", lower_bound["G3"]) + database.add_data("G3", "nb_units_min", ConstantData(0)) database.add_data("G3", "nb_units_max", ConstantData(4)) - database.add_data("G3", "failures", TimeScenarioSeriesData(failures_3)) - database.add_data("G3", "mingen", lower_bound["G3"]) + database.add_data("G3", "nb_units_max_min_down_time", ConstantData(4)) + database.add_data("G3", "max_generating", TimeScenarioSeriesData(failures_3)) + database.add_data("G3", "min_generating", ConstantData(0)) database.add_data("U", "cost", ConstantData(10000)) database.add_data("S", "cost", ConstantData(1)) + for g in ["G1", "G2", "G3"]: + database.add_data(g, "max_failure", ConstantData(0)) + output = {} for scenario in scenarios: output_file = open( From 5a57bcb0e08e22a3ebc9071a4d52fd26a4d60eb0 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 21 Aug 2024 13:24:06 +0200 Subject: [PATCH 86/93] Use data_path --- ...l_heuristic_fast_min_down_not_respected.py | 15 ++-------- .../test_thermal_heuristic_six_clusters.py | 30 +++++-------------- 2 files changed, 10 insertions(+), 35 deletions(-) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py index e8ea1c3b..f9bf1108 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py @@ -93,16 +93,9 @@ def test_fast_heuristic( pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(heuristic_components[0], "p_max"), 0, 0 ) + input_data = np.loadtxt(data_path / "itr1_fast_cluster.txt") nb_on_1 = pd.DataFrame( - np.ceil( - np.round( - np.loadtxt( - f"tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr1_fast_cluster.txt" - ) # type: ignore - / pmax, - 12, - ) - ), + np.ceil(np.round(input_data / pmax, 12)), # type: ignore index=list(range(number_hours)), columns=[week_scenario_index.scenario], ) @@ -135,9 +128,7 @@ def test_fast_heuristic( param_needed_to_compute=["p_min", "max_generating"], ) - expected_output = np.loadtxt( - f"tests/functional/data/thermal_heuristic_fast_min_down_not_respected/itr2_fast_cluster.txt" - ) + expected_output = np.loadtxt(data_path / "itr2_fast_cluster.txt") for t in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(heuristic_components[0], "min_generating"), diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py index e2de03fd..2cedb3d9 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py @@ -107,17 +107,9 @@ def test_accurate_heuristic( ) for j, cluster in enumerate(heuristic_components): + input_data = np.loadtxt(data_path / "accurate/itr1_accurate_cluster{j+1}.txt") nb_on_1 = pd.DataFrame( - np.transpose( - np.ceil( - np.round( - np.loadtxt( - f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr1_accurate_cluster{j+1}.txt" - ), - 12, - ) - ) - ), + np.transpose(np.ceil(np.round(input_data, 12))), index=list(range(number_hours)), columns=[week_scenario_index.scenario], ) @@ -148,7 +140,7 @@ def test_accurate_heuristic( ) expected_output = np.loadtxt( - f"tests/functional/data/thermal_heuristic_six_clusters/accurate/itr2_accurate_cluster{j+1}.txt" + data_path / "accurate/itr2_accurate_cluster{j+1}.txt" ) assert list(nb_on_heuristic[:, 0]) == [ pytest.approx(x) for x in expected_output @@ -190,16 +182,10 @@ def test_fast_heuristic( pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) + input_data = np.loadtxt(data_path / "fast/itr1_fast_cluster{j+1}.txt") + nb_on_1 = pd.DataFrame( - np.ceil( - np.round( - np.loadtxt( - f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr1_fast_cluster{j+1}.txt" - ) # type: ignore - / pmax, - 12, - ) - ), + np.ceil(np.round(input_data / pmax, 12)), # type: ignore index=list(range(number_hours)), columns=[week_scenario_index.scenario], ) @@ -232,9 +218,7 @@ def test_fast_heuristic( param_needed_to_compute=["p_min", "max_generating"], ) - expected_output = np.loadtxt( - f"tests/functional/data/thermal_heuristic_six_clusters/fast/itr2_fast_cluster{j+1}.txt" - ) + expected_output = np.loadtxt(data_path / "fast/itr2_fast_cluster{j+1}.txt") for t in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "min_generating"), From b4790ce804dcc75361c5338425691a43f4ef3576 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 21 Aug 2024 13:41:24 +0200 Subject: [PATCH 87/93] Improve pytest fixture --- tests/functional/conftest.py | 52 ++++++++++++++++++- ...l_heuristic_fast_min_down_not_respected.py | 24 ++------- .../test_thermal_heuristic_one_cluster.py | 33 +----------- ...thermal_heuristic_one_cluster_with_ramp.py | 34 +----------- .../test_thermal_heuristic_six_clusters.py | 32 +----------- .../test_thermal_heuristic_three_clusters.py | 32 +----------- ...thermal_heuristic_two_clusters_low_load.py | 36 +------------ ..._thermal_heuristic_two_clusters_with_bc.py | 24 +-------- 8 files changed, 62 insertions(+), 205 deletions(-) diff --git a/tests/functional/conftest.py b/tests/functional/conftest.py index f5d93edb..60d42a60 100644 --- a/tests/functional/conftest.py +++ b/tests/functional/conftest.py @@ -14,11 +14,27 @@ from typing import List, Tuple import pytest - +import ortools.linear_solver.pywraplp as pywraplp + +from andromede.libs.standard import ( + DEMAND_MODEL, + NODE_BALANCE_MODEL, + SPILLAGE_MODEL, + UNSUPPLIED_ENERGY_MODEL, +) +from andromede.model import Model +from andromede.study.parsing import InputComponents from andromede.model.parsing import parse_yaml_library from andromede.model.resolve_library import resolve_library from andromede.simulation import OutputValues from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex +from andromede.thermal_heuristic.problem import ( + BlockScenarioIndex, + TimeScenarioHourParameter, + get_heuristic_components, + get_input_components, +) +from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @pytest.fixture(scope="session") @@ -132,3 +148,37 @@ def read_expected_output( ] ], ) + + +@pytest.fixture +def models() -> list[Model]: + return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] + + +@pytest.fixture +def input_components(data_path: Path) -> InputComponents: + return get_input_components(data_path / "components.yml") + + +@pytest.fixture +def heuristic_components(input_components: InputComponents) -> List[str]: + return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) + + +@pytest.fixture +def solver_parameters() -> pywraplp.MPSolverParameters: + parameters = pywraplp.MPSolverParameters() + parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) + parameters.SetIntegerParam(parameters.SCALING, 0) + parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) + return parameters + + +@pytest.fixture +def time_scenario_parameters() -> TimeScenarioHourParameter: + return TimeScenarioHourParameter(1, 1, 168) + + +@pytest.fixture +def week_scenario_index() -> BlockScenarioIndex: + return BlockScenarioIndex(0, 0) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py index f9bf1108..82d4632c 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_fast_min_down_not_respected.py @@ -32,8 +32,6 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP @@ -41,22 +39,10 @@ @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_fast_min_down_not_respected" - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) + return ( + Path(__file__).parent.parent + / "data/thermal_heuristic_fast_min_down_not_respected" + ) def test_fast_heuristic( @@ -64,12 +50,12 @@ def test_fast_heuristic( input_components: InputComponents, heuristic_components: List[str], time_scenario_parameters: TimeScenarioHourParameter, + week_scenario_index: BlockScenarioIndex, ) -> None: """ Solve a weekly problem with fast heuristic. The thermal cluster has long d_min_up and d_min_down. The fast heuristic doesn't respect the d_min constraints. """ number_hours = 168 - week_scenario_index = BlockScenarioIndex(0, 0) network = get_network( input_components, diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py index 5f989878..4c0aa36f 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py @@ -19,10 +19,6 @@ from andromede.libs.standard import ( BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, ) from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex @@ -40,8 +36,6 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes @@ -50,32 +44,7 @@ @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_one_cluster" - - -@pytest.fixture -def models() -> list[Model]: - return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] - - -@pytest.fixture -def week_scenario_index() -> BlockScenarioIndex: - return BlockScenarioIndex(0, 0) - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) + return Path(__file__).parent.parent / "data/thermal_heuristic_one_cluster" def test_milp_version( diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py index d489e21c..36995c79 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py @@ -19,10 +19,6 @@ from andromede.libs.standard import ( BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, ) from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex @@ -40,45 +36,17 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import ( - THERMAL_CLUSTER_MODEL_MILP, THERMAL_CLUSTER_MODEL_MILP_WITH_RAMP, ) @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_one_cluster_with_ramp" - - -@pytest.fixture -def models() -> list[Model]: - return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] - - -@pytest.fixture -def week_scenario_index() -> BlockScenarioIndex: - return BlockScenarioIndex(0, 0) - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) + return Path(__file__).parent.parent / "data/thermal_heuristic_one_cluster_with_ramp" def test_milp_version( diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py index 2cedb3d9..ef778080 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py @@ -34,44 +34,14 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -@pytest.fixture -def solver_parameters() -> pywraplp.MPSolverParameters: - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - return parameters - - @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_six_clusters" - - -@pytest.fixture -def week_scenario_index() -> BlockScenarioIndex: - return BlockScenarioIndex(0, 0) - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) + return Path(__file__).parent.parent / "data/thermal_heuristic_six_clusters" def test_accurate_heuristic( diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py index 0cde1e5c..581c9a3b 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py @@ -19,10 +19,6 @@ from andromede.libs.standard import ( BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, ) from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents @@ -39,41 +35,15 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -@pytest.fixture -def solver_parameters() -> pywraplp.MPSolverParameters: - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - parameters.SetDoubleParam(parameters.RELATIVE_MIP_GAP, 1e-5) - return parameters - - @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_three_clusters" - - -@pytest.fixture -def models() -> list[Model]: - return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) + return Path(__file__).parent.parent / "data/thermal_heuristic_three_clusters" @pytest.fixture diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py index d7a667a7..71e1d285 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py @@ -19,10 +19,6 @@ from andromede.libs.standard import ( BALANCE_PORT_TYPE, - DEMAND_MODEL, - NODE_BALANCE_MODEL, - SPILLAGE_MODEL, - UNSUPPLIED_ENERGY_MODEL, ) from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents @@ -39,45 +35,15 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP -@pytest.fixture -def solver_parameters() -> pywraplp.MPSolverParameters: - parameters = pywraplp.MPSolverParameters() - parameters.SetIntegerParam(parameters.PRESOLVE, parameters.PRESOLVE_OFF) - parameters.SetIntegerParam(parameters.SCALING, 0) - return parameters - - @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_two_clusters_low_load" - - -@pytest.fixture -def models() -> list[Model]: - return [DEMAND_MODEL, NODE_BALANCE_MODEL, SPILLAGE_MODEL, UNSUPPLIED_ENERGY_MODEL] - - -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) + return Path(__file__).parent.parent / "data/thermal_heuristic_two_clusters_low_load" def test_milp_version( diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py index 562f64f3..14d54534 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py @@ -40,8 +40,6 @@ ThermalProblemBuilder, TimeScenarioHourParameter, get_database, - get_heuristic_components, - get_input_components, get_network, ) from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes @@ -53,7 +51,7 @@ @pytest.fixture def data_path() -> Path: - return Path(__file__).parent / "data/thermal_heuristic_two_clusters_with_bc" + return Path(__file__).parent.parent / "data/thermal_heuristic_two_clusters_with_bc" @pytest.fixture @@ -67,26 +65,6 @@ def models() -> list[Model]: ] -@pytest.fixture -def input_components(data_path: Path) -> InputComponents: - return get_input_components(data_path / "components.yml") - - -@pytest.fixture -def heuristic_components(input_components: InputComponents) -> List[str]: - return get_heuristic_components(input_components, THERMAL_CLUSTER_MODEL_MILP.id) - - -@pytest.fixture -def time_scenario_parameters() -> TimeScenarioHourParameter: - return TimeScenarioHourParameter(1, 1, 168) - - -@pytest.fixture -def week_scenario_index() -> BlockScenarioIndex: - return BlockScenarioIndex(0, 0) - - def test_milp_version( models: list[Model], week_scenario_index: BlockScenarioIndex, From 35a2f6443eee2a78bf629edb82116853a33d58ed Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Wed, 21 Aug 2024 14:12:59 +0200 Subject: [PATCH 88/93] Improve tests --- ..._thermal_heuristic_two_clusters_low_load.py | 18 ++++++++++++++++++ ...t_thermal_heuristic_two_clusters_with_bc.py | 8 ++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py index 71e1d285..c31bd41a 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py @@ -102,6 +102,12 @@ def test_milp_version( assert resolution_step.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) + assert sum( + OutputValues(resolution_step) + .component("S") + .var("spillage") + .value[0] # type:ignore + ) == pytest.approx(15884) def test_accurate_heuristic( @@ -207,6 +213,12 @@ def test_accurate_heuristic( assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) + assert sum( + OutputValues(resolution_step_2) + .component("S") + .var("spillage") + .value[0] # type:ignore + ) == pytest.approx(22191) def test_fast_heuristic( @@ -314,3 +326,9 @@ def test_fast_heuristic( assert resolution_step_2.solver.Objective().Value() == pytest.approx( expected_cost[scenario][week] ) + assert sum( + OutputValues(resolution_step_2) + .component("S") + .var("spillage") + .value[0] # type:ignore + ) == pytest.approx(255873) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py index 14d54534..7a495f73 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_with_bc.py @@ -74,7 +74,7 @@ def test_milp_version( time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """Solve weekly problem with two clusters and a binding constraint between these two clusters. - The optimal solution consists in turning on the first unit all the and the second unit which is more expensive but more flexible when the load increases at the 13th timestep. + The optimal solution consists in turning on the first unit all the time and in turning on the second unit, which is more expensive but more flexible, when the load increases at the 13th timestep. """ network = get_network( input_components, @@ -111,7 +111,7 @@ def test_milp_version( output_idx=ExpectedOutputIndexes( idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 ), - ) + ) # On/off values of clusters are checked in expected_output expected_output.check_output_values(OutputValues(main_resolution_step)) @@ -172,7 +172,7 @@ def test_accurate_heuristic( time_scenario_parameters: TimeScenarioHourParameter, ) -> None: """ - Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible. + Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem becomes infeasible. """ number_hours = 168 @@ -261,7 +261,7 @@ def test_fast_heuristic( heuristic_components: List[str], time_scenario_parameters: TimeScenarioHourParameter, ) -> None: - """Solve the same problem as before with the heuristic fast of Antares. The fast heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem become infeasible.""" + """Solve the same problem as before with the heuristic fast of Antares. The fast heuristic decides to turn on 3 units of the first cluster but due to the binding constraint and p_min, the problem becomes infeasible.""" number_hours = 168 From a34780f69b2c724bb8563e17e57a47e0fe0a2350 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 26 Aug 2024 10:12:44 +0200 Subject: [PATCH 89/93] Fix ci --- tests/functional/conftest.py | 6 +++--- .../thermal_heuristic/test_thermal_heuristic_one_cluster.py | 4 +--- .../test_thermal_heuristic_one_cluster_with_ramp.py | 4 +--- .../test_thermal_heuristic_three_clusters.py | 4 +--- .../test_thermal_heuristic_two_clusters_low_load.py | 4 +--- 5 files changed, 7 insertions(+), 15 deletions(-) diff --git a/tests/functional/conftest.py b/tests/functional/conftest.py index 60d42a60..8de98bdf 100644 --- a/tests/functional/conftest.py +++ b/tests/functional/conftest.py @@ -13,8 +13,8 @@ from pathlib import Path from typing import List, Tuple -import pytest import ortools.linear_solver.pywraplp as pywraplp +import pytest from andromede.libs.standard import ( DEMAND_MODEL, @@ -23,17 +23,17 @@ UNSUPPLIED_ENERGY_MODEL, ) from andromede.model import Model -from andromede.study.parsing import InputComponents from andromede.model.parsing import parse_yaml_library from andromede.model.resolve_library import resolve_library from andromede.simulation import OutputValues -from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.problem import ( BlockScenarioIndex, TimeScenarioHourParameter, get_heuristic_components, get_input_components, ) +from andromede.thermal_heuristic.time_scenario_parameter import BlockScenarioIndex from tests.functional.libs.lib_thermal_heuristic import THERMAL_CLUSTER_MODEL_MILP diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py index 4c0aa36f..2d5ed860 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster.py @@ -17,9 +17,7 @@ import ortools.linear_solver.pywraplp as pywraplp import pytest -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py index 36995c79..853b8dc1 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py @@ -17,9 +17,7 @@ import ortools.linear_solver.pywraplp as pywraplp import pytest -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.simulation import OutputValues from andromede.study.data import ComponentParameterIndex from andromede.study.parsing import InputComponents diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py index 581c9a3b..0fa876c0 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_three_clusters.py @@ -17,9 +17,7 @@ import ortools.linear_solver.pywraplp as pywraplp import pytest -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py index c31bd41a..878b0a1c 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_two_clusters_low_load.py @@ -17,9 +17,7 @@ import ortools.linear_solver.pywraplp as pywraplp import pytest -from andromede.libs.standard import ( - BALANCE_PORT_TYPE, -) +from andromede.libs.standard import BALANCE_PORT_TYPE from andromede.simulation import OutputValues from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.cluster_parameter import compute_slot_length From a4534e75a6b8f9ac6f5aafb296bd5ee0f8bc3bdd Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Mon, 26 Aug 2024 10:33:45 +0200 Subject: [PATCH 90/93] Fix tests --- .../test_thermal_heuristic_six_clusters.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py index ef778080..f794d102 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_six_clusters.py @@ -77,7 +77,7 @@ def test_accurate_heuristic( ) for j, cluster in enumerate(heuristic_components): - input_data = np.loadtxt(data_path / "accurate/itr1_accurate_cluster{j+1}.txt") + input_data = np.loadtxt(data_path / f"accurate/itr1_accurate_cluster{j+1}.txt") nb_on_1 = pd.DataFrame( np.transpose(np.ceil(np.round(input_data, 12))), index=list(range(number_hours)), @@ -110,7 +110,7 @@ def test_accurate_heuristic( ) expected_output = np.loadtxt( - data_path / "accurate/itr2_accurate_cluster{j+1}.txt" + data_path / f"accurate/itr2_accurate_cluster{j+1}.txt" ) assert list(nb_on_heuristic[:, 0]) == [ pytest.approx(x) for x in expected_output @@ -152,7 +152,7 @@ def test_fast_heuristic( pmax = thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "p_max"), 0, 0 ) - input_data = np.loadtxt(data_path / "fast/itr1_fast_cluster{j+1}.txt") + input_data = np.loadtxt(data_path / f"fast/itr1_fast_cluster{j+1}.txt") nb_on_1 = pd.DataFrame( np.ceil(np.round(input_data / pmax, 12)), # type: ignore @@ -188,7 +188,7 @@ def test_fast_heuristic( param_needed_to_compute=["p_min", "max_generating"], ) - expected_output = np.loadtxt(data_path / "fast/itr2_fast_cluster{j+1}.txt") + expected_output = np.loadtxt(data_path / f"fast/itr2_fast_cluster{j+1}.txt") for t in range(number_hours): assert thermal_problem_builder.database.get_value( ComponentParameterIndex(cluster, "min_generating"), From b0394788c1a8a9a93c396df2dfc22675ddcba873 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 29 Aug 2024 17:11:49 +0200 Subject: [PATCH 91/93] Fix test on day ahead reserve --- src/andromede/study/resolve_components.py | 2 +- .../components.yml | 61 +- .../demand-ts.txt | 308 ++++----- .../series_G2.txt | 168 +++++ .../series_G3.txt | 168 +++++ .../functional/libs/lib_thermal_heuristic.py | 44 +- ...est_thermal_heuristic_day_ahead_reserve.py | 608 ++++++++++-------- ...thermal_heuristic_one_cluster_with_ramp.py | 2 +- 8 files changed, 891 insertions(+), 470 deletions(-) create mode 100644 tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G2.txt create mode 100644 tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G3.txt diff --git a/src/andromede/study/resolve_components.py b/src/andromede/study/resolve_components.py index d6650e78..a7278d53 100644 --- a/src/andromede/study/resolve_components.py +++ b/src/andromede/study/resolve_components.py @@ -145,7 +145,7 @@ def build_data_base( input_comp: InputComponents, timeseries_dir: Optional[Path] ) -> DataBase: database = DataBase() - for comp in input_comp.components: + for comp in input_comp.components + input_comp.nodes: for param in comp.parameters or []: param_value = _evaluate_param_type( param.type, param.value, param.timeseries, timeseries_dir diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml b/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml index dc4ae257..37d2d6b7 100644 --- a/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/components.yml @@ -14,41 +14,50 @@ study: - id: N model: NODE_MODEL parameters: - - name: cost + - name: ens_cost + type: constant + value: 20000 + - name: spillage_cost + type: constant + value: 15000 + - name: reserve_not_supplied_cost type: constant - value: 10000 + value: 2000 components: - id: D model: DEMAND_MODEL parameters: - - name: demand + - name: demand_energy type: timeseries - timeseries: demand-ts + timeseries: demand-ts + - name: demand_primary_reserve + type: constant + value: 23 - id: G1 model: GEN parameters: - name: p_max type: constant - value: 410 + value: 34 - name: p_min type: constant - value: 180 + value: 15 - name: cost type: constant - value: 96 + value: 90 - name: startup_cost type: constant - value: 100500 + value: 11500 - name: fixed_cost type: constant value: 1 - name: d_min_up type: constant - value: 8 + value: 12 - name: d_min_down type: constant - value: 8 + value: 12 - name: nb_units_min type: constant value: 0 @@ -59,38 +68,38 @@ study: type: constant value: 0 - name: max_generating - type: timeseries - timeseries: series_G1 + type: constant + value: 34 - id: G2 model: GEN parameters: - name: p_max type: constant - value: 90 + value: 30 - name: p_min type: constant - value: 60 + value: 10 - name: cost type: constant - value: 137 + value: 85 - name: startup_cost type: constant - value: 24500 + value: 12500 - name: fixed_cost type: constant value: 1 - name: d_min_up type: constant - value: 11 + value: 12 - name: d_min_down type: constant - value: 11 + value: 12 - name: nb_units_min type: constant value: 0 - name: nb_units_max type: constant - value: 3 + value: 2 - name: min_generating type: constant value: 0 @@ -102,31 +111,31 @@ study: parameters: - name: p_max type: constant - value: 275 + value: 18 - name: p_min type: constant - value: 150 + value: 13 - name: cost type: constant - value: 107 + value: 100 - name: startup_cost type: constant - value: 69500 + value: 4500 - name: fixed_cost type: constant value: 1 - name: d_min_up type: constant - value: 9 + value: 3 - name: d_min_down type: constant - value: 9 + value: 1 - name: nb_units_min type: constant value: 0 - name: nb_units_max type: constant - value: 4 + value: 12 - name: min_generating type: constant value: 0 diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt b/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt index 0afca3be..4a2ecbbe 100644 --- a/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/demand-ts.txt @@ -1,168 +1,168 @@ -167 -163 -160 -158 -156 -155 -147 -147 -156 -165 -169 -174 -175 -166 +132 +127 +124 +122 +120 +119 +111 +106 +102 +102 +101 +103 +109 +105 +99 +105 +111 +122 +150 158 -154 -152 -157 -184 -192 -195 -191 -185 -175 -164 -156 -152 -149 -149 -154 -159 -172 -192 -204 -206 -209 -214 -211 -208 -203 -197 -194 -217 -219 -213 -203 -194 -182 -170 161 -155 -151 -150 -156 -162 -174 -194 -207 -209 -212 -213 -209 -202 -198 -193 -194 -218 -219 -211 -202 -194 -181 -170 -162 157 -154 +151 +141 +130 +121 +118 +117 +118 +123 +129 +134 +141 +146 +140 +139 +142 +141 +144 +149 155 162 -172 -184 -203 -210 -212 -213 -214 -210 -205 -201 -195 -195 -215 -217 -212 -205 -196 -185 -174 -166 -161 -159 -160 -166 -174 -187 -202 -210 -211 -216 -216 -208 -204 -200 -192 -194 -216 -218 -212 -203 -195 186 -176 -169 +188 +182 +172 163 -159 -158 +151 +139 +131 +125 +121 +120 +126 +133 +142 +150 +153 +147 +147 +150 +146 +146 +151 +153 161 -160 -167 -182 -189 186 187 -189 -186 -182 -178 -175 -180 -203 -208 -204 -197 -190 -182 -173 -164 -160 +179 +171 +163 +149 +139 +130 +124 +121 +123 +129 +139 +145 +155 +158 +151 +149 +152 153 -154 -156 -154 -157 -170 -177 -180 -182 +152 +152 +155 +158 +179 180 -171 +175 +170 162 +150 +139 +130 +126 +123 +122 +127 +136 +143 +152 +149 +141 +141 +143 +142 +138 +141 +140 +146 +169 +169 +164 157 -156 -159 -184 -193 -197 -193 -185 -173 \ No newline at end of file +147 +138 +128 +120 +115 +111 +109 +112 +109 +112 +114 +116 +120 +109 +106 +103 +103 +110 +119 +129 +151 +157 +154 +149 +143 +135 +125 +118 +112 +106 +106 +108 +107 +104 +106 +102 +99 +98 +94 +89 +91 +94 +98 +110 +136 +143 +148 +143 +136 +125 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G2.txt b/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G2.txt new file mode 100644 index 00000000..cc9ea041 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G2.txt @@ -0,0 +1,168 @@ +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +30 +30 +30 +30 +30 +30 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +30 +30 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 +60 \ No newline at end of file diff --git a/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G3.txt b/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G3.txt new file mode 100644 index 00000000..94a1fad4 --- /dev/null +++ b/tests/functional/data/thermal_heuristic_day_ahead_reserve/series_G3.txt @@ -0,0 +1,168 @@ +162 +162 +162 +126 +162 +162 +162 +162 +144 +144 +144 +180 +162 +162 +162 +162 +198 +216 +216 +216 +216 +216 +216 +198 +198 +216 +216 +216 +216 +216 +180 +216 +216 +198 +216 +216 +216 +216 +216 +216 +180 +216 +216 +198 +198 +198 +198 +198 +198 +198 +198 +198 +216 +180 +180 +180 +216 +216 +216 +216 +216 +216 +216 +216 +198 +198 +216 +216 +216 +216 +216 +216 +216 +216 +198 +198 +198 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +198 +198 +198 +180 +198 +216 +198 +198 +198 +198 +180 +180 +180 +180 +198 +198 +198 +198 +198 +162 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +216 +198 +216 +216 +216 +216 +198 +198 +198 +216 +216 +216 +198 +198 +198 +198 +198 +198 +198 +198 +198 +198 +216 +216 +216 +180 +180 +162 +162 +180 +162 +198 +180 +180 +180 +180 +216 +216 +198 +198 +198 +180 +216 +216 +216 +216 +216 +198 \ No newline at end of file diff --git a/tests/functional/libs/lib_thermal_heuristic.py b/tests/functional/libs/lib_thermal_heuristic.py index 7c643946..ac32c0c3 100644 --- a/tests/functional/libs/lib_thermal_heuristic.py +++ b/tests/functional/libs/lib_thermal_heuristic.py @@ -260,7 +260,7 @@ RESERVE_PORT_TYPE = PortType( id="reserve_balance", - fields=[PortField("energy"), PortField("day_ahead"), PortField("primary_reserve")], + fields=[PortField("energy"), PortField("primary_reserve")], ) NODE_WITH_RESERVE_MODEL = model( @@ -273,8 +273,6 @@ variables=[ float_variable("spillage_energy", lower_bound=literal(0)), float_variable("unsupplied_energy", lower_bound=literal(0)), - float_variable("spillage_day_ahead", lower_bound=literal(0)), - float_variable("unsupplied_day_ahead", lower_bound=literal(0)), float_variable("unsupplied_reserve", lower_bound=literal(0)), ], ports=[ @@ -286,11 +284,6 @@ expression=port_field("balance_port", "energy").sum_connections() == var("spillage_energy") - var("unsupplied_energy"), ), - Constraint( - name="Balance day ahead", - expression=port_field("balance_port", "day_ahead").sum_connections() - == var("spillage_day_ahead") - var("unsupplied_day_ahead"), - ), Constraint( name="Balance reserve", expression=port_field("balance_port", "primary_reserve").sum_connections() @@ -300,8 +293,6 @@ objective_operational_contribution=( param("spillage_cost") * var("spillage_energy") + param("ens_cost") * var("unsupplied_energy") - + param("spillage_cost") * var("spillage_day_ahead") - + param("ens_cost") * var("unsupplied_day_ahead") + param("reserve_not_supplied_cost") * var("unsupplied_reserve") ) .sum() @@ -312,7 +303,6 @@ id="DEMAND_MODEL", parameters=[ float_parameter("demand_energy", TIME_AND_SCENARIO_FREE), - float_parameter("demand_day_ahead", TIME_AND_SCENARIO_FREE), float_parameter("demand_primary_reserve", TIME_AND_SCENARIO_FREE), ], ports=[ModelPort(port_type=RESERVE_PORT_TYPE, port_name="balance_port")], @@ -321,10 +311,6 @@ port_field=PortFieldId("balance_port", "energy"), definition=-param("demand_energy"), ), - PortFieldDefinition( - port_field=PortFieldId("balance_port", "day_ahead"), - definition=-param("demand_day_ahead"), - ), PortFieldDefinition( port_field=PortFieldId("balance_port", "primary_reserve"), definition=-param("demand_primary_reserve"), @@ -351,12 +337,7 @@ ], variables=[ float_variable( - "generation", - lower_bound=literal(0), - structure=ANTICIPATIVE_TIME_VARYING, - ), - float_variable( - "generation_day_ahead", + "total_generation", lower_bound=literal(0), structure=ANTICIPATIVE_TIME_VARYING, ), @@ -392,11 +373,7 @@ port_fields_definitions=[ PortFieldDefinition( port_field=PortFieldId("balance_port", "energy"), - definition=var("generation"), - ), - PortFieldDefinition( - port_field=PortFieldId("balance_port", "day_ahead"), - definition=var("generation_day_ahead"), + definition=var("total_generation") - var("generation_reserve"), ), PortFieldDefinition( port_field=PortFieldId("balance_port", "primary_reserve"), @@ -406,19 +383,24 @@ constraints=[ Constraint( "Max generation", - var("generation") <= param("max_generating"), + var("total_generation") <= param("max_generating"), ), Constraint( "Min generation", - var("generation") >= param("min_generating"), + var("total_generation") >= param("min_generating"), ), Constraint( "Max generation with NODU", - var("generation") <= param("p_max") * var("nb_on"), + var("total_generation") <= param("p_max") * var("nb_on"), ), Constraint( "Min generation with NODU", - var("generation") >= param("p_min") * var("nb_on"), + var("total_generation") >= param("p_min") * var("nb_on"), + ), + Constraint( + "Primary reserve generation above p_min", + var("generation_reserve") + <= var("total_generation") - param("p_min") * var("nb_on"), ), Constraint( "NODU balance", @@ -448,7 +430,7 @@ # It also works by writing ExpressionRange(-param("d_min_down") + 1, 0) as ExpressionRange's __post_init__ wraps integers to literal nodes. However, MyPy does not seem to infer that ExpressionRange's attributes are necessarily of ExpressionNode type and raises an error if the arguments in the constructor are integer (whereas it runs correctly), this why we specify it here with literal(0) instead of 0. ], objective_operational_contribution=( - param("cost") * var("generation") + param("cost") * var("total_generation") + param("startup_cost") * var("nb_start") + param("fixed_cost") * var("nb_on") ) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py index 042d72f8..27df8047 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py @@ -12,11 +12,15 @@ from math import ceil from pathlib import Path +from typing import List +import ortools.linear_solver.pywraplp as pywraplp import pytest from andromede.libs.standard import BALANCE_PORT_TYPE -from andromede.study.data import ComponentParameterIndex +from andromede.simulation import OutputValues +from andromede.study.data import ComponentParameterIndex, ConstantData, DataBase +from andromede.study.parsing import InputComponents from andromede.thermal_heuristic.model import ( AccurateModelBuilder, HeuristicAccurateModelBuilder, @@ -26,8 +30,10 @@ BlockScenarioIndex, ThermalProblemBuilder, TimeScenarioHourParameter, + get_database, + get_network, ) -from tests.functional.conftest import ExpectedOutput, ExpectedOutputIndexes +from andromede.thermal_heuristic.time_scenario_parameter import timesteps from tests.functional.libs.lib_thermal_heuristic import ( DEMAND_WITH_RESERVE_MODEL, NODE_WITH_RESERVE_MODEL, @@ -36,265 +42,353 @@ @pytest.fixture -def data_path() -> str: - return "data/thermal_heuristic_day_ahead_reserve" +def data_path() -> Path: + return Path(__file__).parent.parent / "data/thermal_heuristic_day_ahead_reserve" @pytest.fixture -def models() -> list[Model]: +def models() -> List[Model]: return [NODE_WITH_RESERVE_MODEL, DEMAND_WITH_RESERVE_MODEL] @pytest.fixture -def week_scenario_index() -> BlockScenarioIndex: - return BlockScenarioIndex(0, 0) - - -# def test_milp_with_day_ahead_reserve( -# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -# ) -> None: -# """ """ -# thermal_problem_builder = ThermalProblemBuilder( -# fast=False, -# data_dir=Path(__file__).parent / data_path, -# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, -# port_types=[BALANCE_PORT_TYPE], -# models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, -# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), -# ) - -# cluster = thermal_problem_builder.heuristic_components()[0] - -# main_resolution_step = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) - -# assert main_resolution_step.solver.Objective().Value() == 16805387 - -# expected_output = ExpectedOutput( -# mode="milp", -# index=week_scenario_index, -# dir_path=data_path, -# list_cluster=[cluster], -# output_idx=ExpectedOutputIndexes( -# idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 -# ), -# ) -# expected_output.check_output_values(OutputValues(main_resolution_step)) - - -# def test_milp_without_day_ahead_reserve( -# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -# ) -> None: -# """ """ -# thermal_problem_builder = ThermalProblemBuilder( -# fast=False, -# data_dir=Path(__file__).parent / data_path, -# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, -# port_types=[BALANCE_PORT_TYPE], -# models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, -# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, 168), -# ) - -# cluster = thermal_problem_builder.heuristic_components()[0] - -# main_resolution_step = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) - -# assert main_resolution_step.solver.Objective().Value() == 16805387 - -# expected_output = ExpectedOutput( -# mode="milp", -# index=week_scenario_index, -# dir_path=data_path, -# list_cluster=[cluster], -# output_idx=ExpectedOutputIndexes( -# idx_generation=4, idx_nodu=6, idx_spillage=29, idx_unsupplied=25 -# ), -# ) -# expected_output.check_output_values(OutputValues(main_resolution_step)) - - -# def test_accurate_heuristic_with_day_ahead_reserve( -# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -# ) -> None: -# """ -# Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. -# """ - -# number_hours = 168 -# thermal_problem_builder = ThermalProblemBuilder( -# fast=False, -# data_dir=Path(__file__).parent / data_path, -# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, -# port_types=[BALANCE_PORT_TYPE], -# models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] -# + models, -# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), -# ) - -# cluster = thermal_problem_builder.heuristic_components()[0] - -# # First optimization -# resolution_step_1 = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) - -# # Get number of on units and round it to integer -# thermal_problem_builder.update_database_heuristic( -# OutputValues(resolution_step_1), -# week_scenario_index, -# None, -# param_to_update="nb_units_min", -# var_to_read="nb_on", -# fn_to_apply=lambda x: ceil(round(x, 12)), -# ) -# for time_step in range(number_hours): -# assert ( -# thermal_problem_builder.database.get_value( -# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 -# ) -# == 2 -# if time_step != 12 -# else 3 -# ) - -# # Solve heuristic problem -# resolution_step_accurate_heuristic = ( -# thermal_problem_builder.heuristic_resolution_step( -# week_scenario_index, -# id_component=cluster, -# model=HeuristicAccurateModelBuilder( -# THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP -# ).model, -# ) -# ) - -# thermal_problem_builder.update_database_heuristic( -# OutputValues(resolution_step_accurate_heuristic), -# week_scenario_index, -# None, -# param_to_update="nb_units_min", -# var_to_read="nb_on", -# fn_to_apply=lambda x: ceil(round(x, 12)), -# ) - -# for time_step in range(number_hours): -# assert ( -# thermal_problem_builder.database.get_value( -# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 -# ) -# == 2 -# if time_step != 12 -# else 3 -# ) - -# # Second optimization with lower bound modified -# resolution_step_2 = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) -# assert resolution_step_2.solver.Objective().Value() == 16805387 - -# expected_output = ExpectedOutput( -# mode="accurate", -# index=week_scenario_index, -# dir_path=data_path, -# list_cluster=[cluster], -# output_idx=ExpectedOutputIndexes( -# idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 -# ), -# ) -# expected_output.check_output_values(OutputValues(resolution_step_2)) - - -# def test_accurate_heuristic_without_day_ahead_reserve( -# data_path: str, models: list[Model], week_scenario_index: BlockScenarioIndex -# ) -> None: -# """ -# Solve the same problem as before with the heuristic accurate of Antares. The accurate heuristic is able to retrieve the milp optimal solution because when the number of on units found in the linear relaxation is ceiled, we found the optimal number of on units which is already feasible. -# """ - -# number_hours = 168 -# thermal_problem_builder = ThermalProblemBuilder( -# fast=False, -# data_dir=Path(__file__).parent / data_path, -# id_thermal_cluster_model=THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP.id, -# port_types=[BALANCE_PORT_TYPE], -# models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] -# + models, -# time_scenario_hour_parameter=TimeScenarioHourParameter(1, 1, number_hours), -# ) - -# cluster = thermal_problem_builder.heuristic_components()[0] - -# # First optimization -# resolution_step_1 = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) - -# # Get number of on units and round it to integer -# thermal_problem_builder.update_database_heuristic( -# OutputValues(resolution_step_1), -# week_scenario_index, -# None, -# param_to_update="nb_units_min", -# var_to_read="nb_on", -# fn_to_apply=lambda x: ceil(round(x, 12)), -# ) -# for time_step in range(number_hours): -# assert ( -# thermal_problem_builder.database.get_value( -# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 -# ) -# == 2 -# if time_step != 12 -# else 3 -# ) - -# # Solve heuristic problem -# resolution_step_accurate_heuristic = ( -# thermal_problem_builder.heuristic_resolution_step( -# week_scenario_index, -# id_component=cluster, -# model=HeuristicAccurateModelBuilder( -# THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP -# ).model, -# ) -# ) - -# thermal_problem_builder.update_database_heuristic( -# OutputValues(resolution_step_accurate_heuristic), -# week_scenario_index, -# None, -# param_to_update="nb_units_min", -# var_to_read="nb_on", -# fn_to_apply=lambda x: ceil(round(x, 12)), -# ) - -# for time_step in range(number_hours): -# assert ( -# thermal_problem_builder.database.get_value( -# ComponentParameterIndex(cluster, "nb_units_min"), time_step, 0 -# ) -# == 2 -# if time_step != 12 -# else 3 -# ) - -# # Second optimization with lower bound modified -# resolution_step_2 = thermal_problem_builder.main_resolution_step( -# week_scenario_index -# ) -# assert resolution_step_2.solver.Objective().Value() == 16805387 - -# expected_output = ExpectedOutput( -# mode="accurate", -# index=week_scenario_index, -# dir_path=data_path, -# list_cluster=[cluster], -# output_idx=ExpectedOutputIndexes( -# idx_generation=4, idx_nodu=6, idx_spillage=33, idx_unsupplied=29 -# ), -# ) -# expected_output.check_output_values(OutputValues(resolution_step_2)) +def demand_day_ahead() -> float: + demand_day_ahead = 23.0 + return demand_day_ahead + + +def shift_load( + week_scenario_index: BlockScenarioIndex, + time_scenario_parameters: TimeScenarioHourParameter, + demand_shift: float, + database: DataBase, +) -> None: + for timestep in timesteps(week_scenario_index, time_scenario_parameters): + initial_data = database.get_value( + ComponentParameterIndex("D", "demand_energy"), + timestep, + week_scenario_index.scenario, + ) + database.set_value( + ComponentParameterIndex("D", "demand_energy"), + initial_data + demand_shift, + timestep, + week_scenario_index.scenario, + ) + + +def test_milp_with_day_ahead_reserve( + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, + demand_day_ahead: float, +) -> None: + """ """ + network = get_network( + input_components, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + shift_load( + week_scenario_index, + time_scenario_parameters, + demand_day_ahead, + thermal_problem_builder.database, + ) + + main_resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + status = main_resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + shift_load( + week_scenario_index, + time_scenario_parameters, + -demand_day_ahead, + thermal_problem_builder.database, + ) + + thermal_problem_builder.update_database_heuristic( + OutputValues(main_resolution_step_1), + week_scenario_index, + heuristic_components, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + main_resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + status = main_resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + output = OutputValues(main_resolution_step_2) + assert sum( + output.component("N").var("spillage_energy").value[0] # type:ignore + ) == pytest.approx(358) + assert main_resolution_step_2.solver.Objective().Value() == pytest.approx(7935769) + + +def test_milp_without_day_ahead_reserve( + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, +) -> None: + """ """ + network = get_network( + input_components, + port_types=[BALANCE_PORT_TYPE], + models=[THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP] + models, + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + main_resolution_step = thermal_problem_builder.main_resolution_step( + week_scenario_index + ) + + status = main_resolution_step.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + output = OutputValues(main_resolution_step) + assert sum( + output.component("N").var("spillage_energy").value[0] # type:ignore + ) == pytest.approx(0, abs=1e-10) + assert main_resolution_step.solver.Objective().Value() == pytest.approx(2512645) + + +def print_sum_output(output: OutputValues) -> None: + for var in [ + "spillage_energy", + "unsupplied_energy", + "unsupplied_day_ahead", + "unsupplied_reserve", + ]: + x = sum(output.component("N").var(var).value[0]) # type:ignore + print(f"{var} : {round(x)}") + + for g in ["G1", "G2", "G3"]: + for var in ["total_generation", "nb_start", "nb_on"]: + x = sum(output.component(g).var(var).value[0]) # type:ignore + print(f"{g}_{var} : {round(x)}") + + +def test_accurate_heuristic_with_day_ahead_reserve( + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, + demand_day_ahead: float, +) -> None: + """ """ + + network = get_network( + input_components, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] + + models, + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + shift_load( + week_scenario_index, + time_scenario_parameters, + demand_day_ahead, + thermal_problem_builder.database, + ) + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + ) + + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_heuristic( + OutputValues(resolution_step_1), + week_scenario_index, + heuristic_components, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + for g in heuristic_components: + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=g, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP + ).model, + ) + ) + + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_heuristic( + OutputValues(resolution_step_accurate_heuristic), + week_scenario_index, + [g], + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + shift_load( + week_scenario_index, + time_scenario_parameters, + -demand_day_ahead, + thermal_problem_builder.database, + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + ) + + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + output = OutputValues(resolution_step_2) + assert resolution_step_2.solver.Objective().Value() == pytest.approx(12600136) + assert sum( + output.component("N").var("spillage_energy").value[0] # type:ignore + ) == pytest.approx(667) + + +def test_accurate_heuristic_without_day_ahead_reserve( + data_path: Path, + models: list[Model], + week_scenario_index: BlockScenarioIndex, + input_components: InputComponents, + heuristic_components: List[str], + time_scenario_parameters: TimeScenarioHourParameter, +) -> None: + """ """ + + network = get_network( + input_components, + port_types=[BALANCE_PORT_TYPE], + models=[AccurateModelBuilder(THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP).model] + + models, + ) + database = get_database( + input_components, + data_path, + fast=False, + cluster=heuristic_components, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + thermal_problem_builder = ThermalProblemBuilder( + network=network, + database=database, + time_scenario_hour_parameter=time_scenario_parameters, + ) + + # First optimization + resolution_step_1 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + ) + + status = resolution_step_1.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_heuristic( + OutputValues(resolution_step_1), + week_scenario_index, + heuristic_components, + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + for g in heuristic_components: + # Solve heuristic problem + resolution_step_accurate_heuristic = ( + thermal_problem_builder.heuristic_resolution_step( + week_scenario_index, + id_component=g, + model=HeuristicAccurateModelBuilder( + THERMAL_CLUSTER_WITH_RESERVE_MODEL_MILP + ).model, + ) + ) + + status = resolution_step_accurate_heuristic.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + + thermal_problem_builder.update_database_heuristic( + OutputValues(resolution_step_accurate_heuristic), + week_scenario_index, + [g], + param_to_update="nb_units_min", + var_to_read="nb_on", + fn_to_apply=lambda x: ceil(round(x, 12)), + ) + + # Second optimization with lower bound modified + resolution_step_2 = thermal_problem_builder.main_resolution_step( + week_scenario_index, + ) + + status = resolution_step_2.solver.Solve() + assert status == pywraplp.Solver.OPTIMAL + output = OutputValues(resolution_step_2) + assert resolution_step_2.solver.Objective().Value() == pytest.approx(3415137) + assert sum( + output.component("N").var("spillage_energy").value[0] # type:ignore + ) == pytest.approx(60) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py index 853b8dc1..2a39d0bc 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_one_cluster_with_ramp.py @@ -65,7 +65,7 @@ def test_milp_version( database = get_database( input_components, data_path, - fast=True, + fast=False, cluster=heuristic_components, time_scenario_hour_parameter=time_scenario_parameters, ) From 9a68f0e95e2f969af03287bbb10d6e902c8d4959 Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Fri, 6 Sep 2024 11:10:52 +0200 Subject: [PATCH 92/93] Unused code --- .../test_thermal_heuristic_day_ahead_reserve.py | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py b/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py index 27df8047..5d38a82c 100644 --- a/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py +++ b/tests/functional/thermal_heuristic/test_thermal_heuristic_day_ahead_reserve.py @@ -192,22 +192,6 @@ def test_milp_without_day_ahead_reserve( assert main_resolution_step.solver.Objective().Value() == pytest.approx(2512645) -def print_sum_output(output: OutputValues) -> None: - for var in [ - "spillage_energy", - "unsupplied_energy", - "unsupplied_day_ahead", - "unsupplied_reserve", - ]: - x = sum(output.component("N").var(var).value[0]) # type:ignore - print(f"{var} : {round(x)}") - - for g in ["G1", "G2", "G3"]: - for var in ["total_generation", "nb_start", "nb_on"]: - x = sum(output.component(g).var(var).value[0]) # type:ignore - print(f"{g}_{var} : {round(x)}") - - def test_accurate_heuristic_with_day_ahead_reserve( data_path: Path, models: list[Model], From f9f5134ec7dd8b77c3f2c0d579d4b21256b0d9be Mon Sep 17 00:00:00 2001 From: Juliette-Gerbaux Date: Thu, 24 Oct 2024 15:06:02 +0200 Subject: [PATCH 93/93] api file --- tests/functional/api_workflow_heuristic.py | 113 +++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 tests/functional/api_workflow_heuristic.py diff --git a/tests/functional/api_workflow_heuristic.py b/tests/functional/api_workflow_heuristic.py new file mode 100644 index 00000000..ef25c09e --- /dev/null +++ b/tests/functional/api_workflow_heuristic.py @@ -0,0 +1,113 @@ +# type:ignore + + +def full_workflow(): + + for s in scenarios: + # Initial data + get_network() + get_data() + + # Annual part of hydro heuristic + get_heuristic_model() + get_heuristic_data() + build_heuristic_problem() + solve() + get_output() + set_data() + + # Monthly part of hydro heuristic + for month in range(12): + get_heuristic_model() + get_heuristic_data() + build_heuristic_problem() + solve() + get_output() + set_data() + + # Weekly targets of hydro heuristic + get_weekly_targets() + set_data() + + for w in weeks: + # Iteration 1 + build_main_problem() + solve() + get_output() + set_data() + + # Thermal heuristic + get_heuristic_model() + build_heuristic_problem() + solve() + get_output() + set_data() + + # Iteration 2 + build_main_problem() + solve() + + +class ResolutionWorkflow: + + def get_network(component_file, model_file): + """Initial network (with components and models) used for main resolution steps. + @param component_file : description of all components, their model used during main resolution steps and their connections + @param model_file : description of all models + @output : network""" + pass + + def get_data(component_file, data_dir): + """Initial database that will be used for all resolutions steps. + @param component_file : description of all components, their model used during main resolution steps and their connections + @param data_dir : where to look for complex data + @output : database""" + pass + + def get_heuristic_model(component, model_file): + """Get model used for heuristic steps, we supposed that we have one main model for each component and an undefined number of heuristic models (zero, one or more) for each component. + @param component : component concerned by the heuristic + @param model_file : description of all models + @output : model""" + pass + + def get_heuristic_data(component, data_transformation_functions): + """Get data used only for heuristics. It could be heuristic parameters or combination of parameters of the database (agregation of residual load for example) + @param component : component concerned by the heuristic + @param data_transformation_functions : description of data transformations to perform + """ + pass + + def build_heuristic_problem(component, heuristic_model, database): + """An heuristic problem is usally composed of only one composant in the network. + @param component : component concerned by the heuristic + @param heuristic_model : model to use for the heuristic + @param database : database to use for the heuristic + @output optimization problem""" + pass + + def build_main_problem(network, database): + """Main problem built with the whole network and the current database (correspond to weekly problems solved in iteration 1 and 2) + @param network : network with components and their models used during main resolution steps + @param database : current database + @output : optimization problem""" + pass + + def solve(problem): + """Solve optimization problems + @param problem : could be an heuristic problem or a main problem""" + pass + + def get_output(problem): + """Get optimal solution of relevant variables + @param problem : solved problem + @output : output data""" + pass + + def set_data(output, database, data_update_functions): + """Set data for further optimization problems based on previous resolution + @param output : from previous solved problem + @param database : current database to update + @param data_update_functions : description of operations to perform on output data to update the database + """ + pass