From 5463325f6796d31292b0f39577139e184cae177f Mon Sep 17 00:00:00 2001 From: r_sanchez Date: Wed, 15 Nov 2023 13:41:10 -0500 Subject: [PATCH 01/25] Replace jenkins user to cerc for the env file so that it can find it on the machine --- cerc_persistence.egg-info/.gitignore | 3 --- cerc_persistence/version.py | 2 +- tests/test_db_factory.py | 2 +- 3 files changed, 2 insertions(+), 5 deletions(-) delete mode 100644 cerc_persistence.egg-info/.gitignore diff --git a/cerc_persistence.egg-info/.gitignore b/cerc_persistence.egg-info/.gitignore deleted file mode 100644 index e0a497a..0000000 --- a/cerc_persistence.egg-info/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Except this file -* -!.gitignore \ No newline at end of file diff --git a/cerc_persistence/version.py b/cerc_persistence/version.py index 3eee18b..21f3b91 100644 --- a/cerc_persistence/version.py +++ b/cerc_persistence/version.py @@ -1,4 +1,4 @@ """ CERC Persistence version number """ -__version__ = '0.1.0.1' +__version__ = '0.1.0.2' diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index a89295a..be2e4a4 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -46,7 +46,7 @@ class Control: """ self._skip_test = False # Create test database - dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~'))).resolve() + dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~').replace('jenkins', 'cerc'))).resolve() if not dotenv_path.exists(): self._skip_test = True self._skip_reason = f'.env file missing at {dotenv_path}' From 60e1686421bac566ab88ce3fd145d1762eeff204 Mon Sep 17 00:00:00 2001 From: r_sanchez Date: Wed, 15 Nov 2023 14:09:45 -0500 Subject: [PATCH 02/25] Changed env file path --- tests/test_db_factory.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index be2e4a4..cba6421 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -46,7 +46,7 @@ class Control: """ self._skip_test = False # Create test database - dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~').replace('jenkins', 'cerc'))).resolve() + dotenv_path = Path("{}/.local/etc/hub_api/.env".format(os.path.expanduser('~').replace('jenkins', 'cerc'))).resolve() if not dotenv_path.exists(): self._skip_test = True self._skip_reason = f'.env file missing at {dotenv_path}' From 404f8d561d7670d579f5e510cb637ab16a09d599 Mon Sep 17 00:00:00 2001 From: r_sanchez Date: Mon, 20 Nov 2023 11:10:22 -0500 Subject: [PATCH 03/25] Removed the jenkins replace with cerc --- tests/test_db_factory.py | 29 +++++++++-------------------- tests/test_db_retrieve.py | 5 +++-- 2 files changed, 12 insertions(+), 22 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index cba6421..d0d44d5 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -46,7 +46,7 @@ class Control: """ self._skip_test = False # Create test database - dotenv_path = Path("{}/.local/etc/hub_api/.env".format(os.path.expanduser('~').replace('jenkins', 'cerc'))).resolve() + dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~'))).resolve() if not dotenv_path.exists(): self._skip_test = True self._skip_reason = f'.env file missing at {dotenv_path}' @@ -106,19 +106,13 @@ class Control: self._application_uuid = 'b9e0ce80-1218-410c-8a64-9d9b7026aad8' self._application_id = 1 self._user_id = 1 - try: - self._application_id = self._database.persist_application( - 'test', - 'test', - self.application_uuid - ) - except sqlalchemy.exc.SQLAlchemyError: - self._application_id = self._database.application_info(self.application_uuid).id - try: - self._user_id = self._database.create_user('test', self._application_id, 'test', UserRoles.Admin) - except sqlalchemy.exc.SQLAlchemyError: - self._user_id = self._database.user_info(name='test', password='test', application_id=self._application_id).id + self._application_id = self._database.persist_application( + 'test', + 'test', + self.application_uuid + ) + self._user_id = self._database.create_user('test', self._application_id, 'test', UserRoles.Admin) self._pickle_path = Path('tests_data/pickle_path.bz2').resolve() @@ -279,10 +273,8 @@ TestDBFactory {'yearly_cooling_consumption': yearly_cooling_consumption}, {'monthly_domestic_hot_water_consumption': monthly_domestic_hot_water_consumption}, {'yearly_domestic_hot_water_consumption': yearly_domestic_hot_water_consumption}, - { - 'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption}, - { - 'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption}, + {'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption}, + {'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption}, {'monthly_on_site_electrical_production': monthly_on_site_electrical_production}, {'yearly_on_site_electrical_production': yearly_on_site_electrical_production} ]}) @@ -304,6 +296,3 @@ TestDBFactory control.database.delete_application(control.application_uuid) control.database.delete_user(control.user_id) os.unlink(control.pickle_path) - output_files = glob.glob('./tests_outputs/*') - for output_file in output_files: - os.unlink(output_file) diff --git a/tests/test_db_retrieve.py b/tests/test_db_retrieve.py index c072939..d30228c 100644 --- a/tests/test_db_retrieve.py +++ b/tests/test_db_retrieve.py @@ -109,8 +109,8 @@ control = Control() class TestDBFactory(TestCase): """ - TestDBFactory - """ +TestDBFactory +""" @unittest.skipIf(control.skip_test, control.skip_reason) def test_retrieve_results(self): @@ -129,6 +129,7 @@ class TestDBFactory(TestCase): "skin and system retrofit with pv": ["01002777", "01002773", "01036804"] } + ] } results = control.database.results(control.user_id, control.application_id, request_values) From e9811ddffeebae8688a7203c62e9751bb3b51e83 Mon Sep 17 00:00:00 2001 From: r_sanchez Date: Mon, 20 Nov 2023 12:16:09 -0500 Subject: [PATCH 04/25] Update requirements --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index ca76da0..ec5412d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,3 +2,4 @@ pathlib python-dotenv SQLAlchemy cerc-hub +psycopg2-binary From 6c703cbb64dd95aebf26f0c2b543754aca8a099f Mon Sep 17 00:00:00 2001 From: r_sanchez Date: Wed, 22 Nov 2023 12:09:28 -0500 Subject: [PATCH 05/25] took changes from hub --- cerc_persistence/db_setup.py | 8 ++--- cerc_persistence/models/city.py | 2 +- cerc_persistence/models/city_object.py | 3 +- cerc_persistence/repositories/city_object.py | 34 ++++++++++++++++++- .../repositories/simulation_results.py | 30 ++++++++++++++-- 5 files changed, 66 insertions(+), 11 deletions(-) diff --git a/cerc_persistence/db_setup.py b/cerc_persistence/db_setup.py index 495f3ee..3b76fe1 100644 --- a/cerc_persistence/db_setup.py +++ b/cerc_persistence/db_setup.py @@ -50,14 +50,14 @@ class DBSetup: name = 'AdminTool' description = 'Admin tool to control city persistence and to test the API v1.4' logging.info('Creating default admin tool application...') - application_id = application_repo.insert(name, description, application_uuid) + application = application_repo.insert(name, description, application_uuid) - if isinstance(application_id, dict): - logging.info(application_id) + if isinstance(application, dict): + logging.info(application) else: msg = f'Created Admin tool with application_uuid: {application_uuid}' logging.info(msg) - return application_id + return application.id @staticmethod def _create_admin_user(user_repo, admin_password, application_id): diff --git a/cerc_persistence/models/city.py b/cerc_persistence/models/city.py index cb138ac..6c468b9 100644 --- a/cerc_persistence/models/city.py +++ b/cerc_persistence/models/city.py @@ -33,4 +33,4 @@ class City(Models): self.scenario = scenario self.application_id = application_id self.user_id = user_id - self.hub_release = hub_release + self.hub_release = hub_release \ No newline at end of file diff --git a/cerc_persistence/models/city_object.py b/cerc_persistence/models/city_object.py index d245c93..0b602a3 100644 --- a/cerc_persistence/models/city_object.py +++ b/cerc_persistence/models/city_object.py @@ -50,8 +50,7 @@ class CityObject(Models): self.volume = building.volume self.area = building.floor_area self.roof_area = sum(roof.solid_polygon.area for roof in building.roofs) - self.total_pv_area = sum( - roof.solid_polygon.area * roof.solar_collectors_area_reduction_factor for roof in building.roofs) + self.total_pv_area = sum(roof.solid_polygon.area * roof.solar_collectors_area_reduction_factor for roof in building.roofs) storeys = building.storeys_above_ground wall_area = 0 window_ratio = 0 diff --git a/cerc_persistence/repositories/city_object.py b/cerc_persistence/repositories/city_object.py index afc7542..c464280 100644 --- a/cerc_persistence/repositories/city_object.py +++ b/cerc_persistence/repositories/city_object.py @@ -90,7 +90,7 @@ class CityObject(Repository): session.query(Model).filter(Model.city_id == city_id, Model.name == name).delete() session.commit() except SQLAlchemyError as err: - logging.error('Error while deleting city_object %s', err) + logging.error('Error while deleting application %s', err) raise SQLAlchemyError from err def get_by_name_or_alias_and_city(self, name, city_id) -> Model: @@ -124,3 +124,35 @@ class CityObject(Repository): except IndexError as err: logging.error('Error while fetching city object by name and city, empty result %s', err) raise IndexError from err + + def get_by_name_or_alias_in_cities(self, name, city_ids) -> Model: + """ + Fetch a city object based on name and city ids + :param name: city object name + :param city_ids: a list of city identifiers + :return: [CityObject] with the provided name or alias belonging to the city with id city_id + """ + try: + # search by name first + with Session(self.engine) as session: + city_object = session.execute(select(Model).where(Model.name == name, Model.city_id.in_(tuple(city_ids)))).first() + if city_object is not None: + return city_object[0] + # name not found, so search by alias instead + city_objects = session.execute( + select(Model).where(Model.aliases.contains(name), Model.city_id.in_(tuple(city_ids))) + ).all() + for city_object in city_objects: + aliases = city_object[0].aliases.replace('{', '').replace('}', '').split(',') + for alias in aliases: + if alias == name: + # force the name as the alias + city_object[0].name = name + return city_object[0] + return None + except SQLAlchemyError as err: + logging.error('Error while fetching city object by name and city: %s', err) + raise SQLAlchemyError from err + except IndexError as err: + logging.error('Error while fetching city object by name and city, empty result %s', err) + raise IndexError from err diff --git a/cerc_persistence/repositories/simulation_results.py b/cerc_persistence/repositories/simulation_results.py index f8f0efd..5d7ef08 100644 --- a/cerc_persistence/repositories/simulation_results.py +++ b/cerc_persistence/repositories/simulation_results.py @@ -84,7 +84,7 @@ class SimulationResults(Repository): else: raise NotImplementedError('Missing either city_id or city_object_id') except SQLAlchemyError as err: - logging.error('Error while updating simulation results %s', err) + logging.error('Error while updating city object %s', err) raise SQLAlchemyError from err def delete(self, name: str, city_id=None, city_object_id=None): @@ -135,8 +135,8 @@ class SimulationResults(Repository): logging.error('Error while fetching city by city_id: %s', err) raise SQLAlchemyError from err - def get_simulation_results_by_city_id_city_object_id_and_names(self, city_id, city_object_id, - result_names=None) -> [Model]: + def get_simulation_results_by_city_id_city_object_id_and_names(self, city_id, city_object_id, result_names=None) -> [ + Model]: """ Fetch the simulation results based in the city_id or city_object_id with the given names or all :param city_id: the city id @@ -161,3 +161,27 @@ class SimulationResults(Repository): except SQLAlchemyError as err: logging.error('Error while fetching city by city_id: %s', err) raise SQLAlchemyError from err + + def get_simulation_results_by_city_object_id_and_names(self, city_object_id, result_names=None) -> [Model]: + """ + Fetch the simulation results based in the city_object_id with the given names or all + :param city_object_id: the city object id + :param result_names: if given filter the results + :return: [SimulationResult] + """ + try: + with Session(self.engine) as session: + result_set = session.execute(select(Model).where( + Model.city_object_id == city_object_id + )) + results = [r[0] for r in result_set] + if not result_names: + return results + filtered_results = [] + for result in results: + if result.name in result_names: + filtered_results.append(result) + return filtered_results + except SQLAlchemyError as err: + logging.error('Error while fetching city by city_id: %s', err) + raise SQLAlchemyError from err From 01e85bd38c8d6ad3d1db8a92da6b076bf65db073 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Tue, 28 Nov 2023 13:15:27 -0500 Subject: [PATCH 06/25] change tests_data path to be relative to the src folder --- tests/test_db_factory.py | 6 +++--- tests/test_db_retrieve.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index d0d44d5..a91a0c2 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -71,8 +71,8 @@ class Control: CityObject.__table__.create(bind=repository.engine, checkfirst=True) SimulationResults.__table__.create(bind=repository.engine, checkfirst=True) - city_file = Path('tests_data/test.geojson').resolve() - output_path = Path('tests_outputs/').resolve() + city_file = Path('tests/tests_data/test.geojson').resolve() + output_path = Path('tests/tests_outputs/').resolve() self._city = GeometryFactory('geojson', city_file, height_field='citygml_me', @@ -114,7 +114,7 @@ class Control: ) self._user_id = self._database.create_user('test', self._application_id, 'test', UserRoles.Admin) - self._pickle_path = Path('tests_data/pickle_path.bz2').resolve() + self._pickle_path = Path('tests/tests_data/pickle_path.bz2').resolve() @property def database(self): diff --git a/tests/test_db_retrieve.py b/tests/test_db_retrieve.py index d30228c..4795b2e 100644 --- a/tests/test_db_retrieve.py +++ b/tests/test_db_retrieve.py @@ -57,7 +57,7 @@ class Control: self._application_uuid = '60b7fc1b-f389-4254-9ffd-22a4cf32c7a3' self._application_id = 1 self._user_id = 1 - self._pickle_path = 'tests_data/pickle_path.bz2' + self._pickle_path = 'tests/tests_data/pickle_path.bz2' @property def database(self): From ba2a9a76fdf07be76fd6392613a70fee3c98316c Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Tue, 28 Nov 2023 13:28:26 -0500 Subject: [PATCH 07/25] Replaced tests/tests_data hardcoded to Path(__file__).parent --- tests/test_db_factory.py | 6 +++--- tests/test_db_retrieve.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index a91a0c2..2978d92 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -71,8 +71,8 @@ class Control: CityObject.__table__.create(bind=repository.engine, checkfirst=True) SimulationResults.__table__.create(bind=repository.engine, checkfirst=True) - city_file = Path('tests/tests_data/test.geojson').resolve() - output_path = Path('tests/tests_outputs/').resolve() + city_file = (Path(__file__).parent / 'tests_data/test.geojson').resolve() + output_path = (Path(__file__).parent / 'tests_output').resolve() self._city = GeometryFactory('geojson', city_file, height_field='citygml_me', @@ -114,7 +114,7 @@ class Control: ) self._user_id = self._database.create_user('test', self._application_id, 'test', UserRoles.Admin) - self._pickle_path = Path('tests/tests_data/pickle_path.bz2').resolve() + self._pickle_path = (Path(__file__).parent / 'tests_data/pickle_path.bz2').resolve() @property def database(self): diff --git a/tests/test_db_retrieve.py b/tests/test_db_retrieve.py index 4795b2e..25fdb56 100644 --- a/tests/test_db_retrieve.py +++ b/tests/test_db_retrieve.py @@ -57,7 +57,7 @@ class Control: self._application_uuid = '60b7fc1b-f389-4254-9ffd-22a4cf32c7a3' self._application_id = 1 self._user_id = 1 - self._pickle_path = 'tests/tests_data/pickle_path.bz2' + self._pickle_path = (Path(__file__).parent / 'tests_data/pickle_path.bz2').resolve() @property def database(self): From cbca0e7637e40882ed619c8047181f46d5a1bc58 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Tue, 28 Nov 2023 13:50:06 -0500 Subject: [PATCH 08/25] Update current persistence code base to the hub version --- cerc_persistence/configuration.py | 2 +- cerc_persistence/db_control.py | 51 +++++++++------- cerc_persistence/db_setup.py | 2 +- cerc_persistence/models/city.py | 2 +- cerc_persistence/repositories/__init__.py | 7 --- cerc_persistence/repositories/application.py | 10 +++- cerc_persistence/repositories/city.py | 11 +++- cerc_persistence/repositories/city_object.py | 46 +++++++++++++- .../repositories/simulation_results.py | 22 ++++--- cerc_persistence/repositories/user.py | 6 +- setup.py | 2 +- tests/test_db_factory.py | 60 +++++++++---------- tests/test_db_retrieve.py | 5 +- 13 files changed, 147 insertions(+), 79 deletions(-) diff --git a/cerc_persistence/configuration.py b/cerc_persistence/configuration.py index a71ca59..9ca37e6 100644 --- a/cerc_persistence/configuration.py +++ b/cerc_persistence/configuration.py @@ -16,7 +16,7 @@ Models = declarative_base() class Configuration: """ - Configuration class to hold common persistence configuration + Configuration class to hold common cerc_persistence configuration """ def __init__(self, db_name: str, dotenv_path: str, app_env='TEST'): diff --git a/cerc_persistence/db_control.py b/cerc_persistence/db_control.py index 521c368..93362ed 100644 --- a/cerc_persistence/db_control.py +++ b/cerc_persistence/db_control.py @@ -7,6 +7,7 @@ Project CoderPeter Yefi peteryefi@gmail.com import json from typing import Dict + from cerc_persistence.repositories.application import Application from cerc_persistence.repositories.city import City from cerc_persistence.repositories.city_object import CityObject @@ -74,10 +75,10 @@ class DBControl: : """ cities = self._city.get_by_user_id_application_id_and_scenario(user_id, application_id, scenario) - for city in cities: - result = self.building_info(name, city[0].id) - if result is not None: - return result + c = [c[0].id for c in cities] + result = self._city_object.building_in_cities_info(name, c) + if result is not None: + return result return None def building_info(self, name, city_id) -> CityObject: @@ -89,6 +90,15 @@ class DBControl: """ return self._city_object.get_by_name_or_alias_and_city(name, city_id) + def building_info_in_cities(self, name, cities) -> CityObject: + """ + Retrieve the building info from the database + :param name: Building name + :param cities: [City ID] + :return: CityObject + """ + return self._city_object.get_by_name_or_alias_in_cities(name, cities) + def buildings_info(self, request_values, city_id) -> [CityObject]: """ Retrieve the buildings info from the database @@ -121,24 +131,21 @@ class DBControl: ) if result_sets is None: continue - for result_set in result_sets: - city_id = result_set[0].id + results[scenario_name] = [] + city_ids = [r[0].id for r in result_sets] + for building_name in scenario[scenario_name]: + _building = self._city_object.get_by_name_or_alias_in_cities(building_name, city_ids) + if _building is None: + continue + city_object_id = _building.id + _ = self._simulation_results.get_simulation_results_by_city_object_id_and_names( + city_object_id, + result_names) - results[scenario_name] = [] - for building_name in scenario[scenario_name]: - _building = self._city_object.get_by_name_or_alias_and_city(building_name, city_id) - if _building is None: - continue - city_object_id = _building.id - _ = self._simulation_results.get_simulation_results_by_city_id_city_object_id_and_names( - city_id, - city_object_id, - result_names) - - for value in _: - values = json.loads(value.values) - values["building"] = building_name - results[scenario_name].append(values) + for value in _: + values = value.values + values["building"] = building_name + results[scenario_name].append(values) return results def persist_city(self, city: City, pickle_path, scenario, application_id: int, user_id: int): @@ -151,7 +158,7 @@ class DBControl: :param user_id: User who create the city return identity_id """ - return self._city.insert(city, pickle_path, scenario, application_id, user_id) + return self._city.insert(city, pickle_path, scenario, application_id, user_id) def update_city(self, city_id, city): """ diff --git a/cerc_persistence/db_setup.py b/cerc_persistence/db_setup.py index 3b76fe1..6909fd2 100644 --- a/cerc_persistence/db_setup.py +++ b/cerc_persistence/db_setup.py @@ -48,7 +48,7 @@ class DBSetup: @staticmethod def _create_admin_app(application_repo, application_uuid): name = 'AdminTool' - description = 'Admin tool to control city persistence and to test the API v1.4' + description = 'Admin tool to control city cerc_persistence and to test the API v1.4' logging.info('Creating default admin tool application...') application = application_repo.insert(name, description, application_uuid) diff --git a/cerc_persistence/models/city.py b/cerc_persistence/models/city.py index 6c468b9..cb138ac 100644 --- a/cerc_persistence/models/city.py +++ b/cerc_persistence/models/city.py @@ -33,4 +33,4 @@ class City(Models): self.scenario = scenario self.application_id = application_id self.user_id = user_id - self.hub_release = hub_release \ No newline at end of file + self.hub_release = hub_release diff --git a/cerc_persistence/repositories/__init__.py b/cerc_persistence/repositories/__init__.py index e9bec62..2fb3351 100644 --- a/cerc_persistence/repositories/__init__.py +++ b/cerc_persistence/repositories/__init__.py @@ -1,10 +1,3 @@ """ Repositories Package """ -import datetime -import logging - -from sqlalchemy import select -from sqlalchemy.exc import SQLAlchemyError -from sqlalchemy.orm import Session -from cerc_persistence.repository import Repository diff --git a/cerc_persistence/repositories/application.py b/cerc_persistence/repositories/application.py index 3ca672b..a3c3597 100644 --- a/cerc_persistence/repositories/application.py +++ b/cerc_persistence/repositories/application.py @@ -4,8 +4,16 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca """ + +import datetime +import logging + +from sqlalchemy import select +from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.orm.session import Session + +from cerc_persistence.repository import Repository from cerc_persistence.models import Application as Model -from . import datetime, logging, select, SQLAlchemyError, Session, Repository class Application(Repository): diff --git a/cerc_persistence/repositories/city.py b/cerc_persistence/repositories/city.py index e0686aa..dd1d21b 100644 --- a/cerc_persistence/repositories/city.py +++ b/cerc_persistence/repositories/city.py @@ -4,11 +4,18 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Peter Yefi peteryefi@gmail.com """ +import datetime +import logging + +from sqlalchemy import select +from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.orm import Session + from hub.city_model_structure.city import City as CityHub -from hub.version import __version__ +from cerc_persistence.repository import Repository from cerc_persistence.models import City as Model from cerc_persistence.models import CityObject -from . import datetime, logging, select, SQLAlchemyError, Session, Repository +from hub.version import __version__ class City(Repository): diff --git a/cerc_persistence/repositories/city_object.py b/cerc_persistence/repositories/city_object.py index c464280..927ffd1 100644 --- a/cerc_persistence/repositories/city_object.py +++ b/cerc_persistence/repositories/city_object.py @@ -4,9 +4,17 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca """ +import datetime +import logging +from typing import Union + +from sqlalchemy import select +from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.orm import Session + from hub.city_model_structure.building import Building from cerc_persistence.models import CityObject as Model -from . import datetime, logging, select, SQLAlchemyError, Session, Repository +from cerc_persistence.repository import Repository class CityObject(Repository): @@ -93,7 +101,41 @@ class CityObject(Repository): logging.error('Error while deleting application %s', err) raise SQLAlchemyError from err - def get_by_name_or_alias_and_city(self, name, city_id) -> Model: + def building_in_cities_info(self, name, cities): + """ + Fetch a city object based on name and city id + :param name: city object name + :param cities: city identifiers + :return: [CityObject] with the provided name or alias belonging to the city with id city_id + """ + try: + # search by name first + with Session(self.engine) as session: + city_object = session.execute(select(Model).where( + Model.name == name, Model.city_id.in_(cities)) + ).first() + if city_object is not None: + return city_object[0] + # name not found, so search by alias instead + city_objects = session.execute( + select(Model).where(Model.aliases.contains(name), Model.city_id.in_(cities)) + ).all() + for city_object in city_objects: + aliases = city_object[0].aliases.replace('{', '').replace('}', '').split(',') + for alias in aliases: + if alias == name: + # force the name as the alias + city_object[0].name = name + return city_object[0] + return None + except SQLAlchemyError as err: + logging.error('Error while fetching city object by name and city: %s', err) + raise SQLAlchemyError from err + except IndexError as err: + logging.error('Error while fetching city object by name and city, empty result %s', err) + raise IndexError from err + + def get_by_name_or_alias_and_city(self, name, city_id) -> Union[Model, None]: """ Fetch a city object based on name and city id :param name: city object name diff --git a/cerc_persistence/repositories/simulation_results.py b/cerc_persistence/repositories/simulation_results.py index 5d7ef08..118ffe3 100644 --- a/cerc_persistence/repositories/simulation_results.py +++ b/cerc_persistence/repositories/simulation_results.py @@ -4,11 +4,18 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca """ +import datetime +import logging + from sqlalchemy import or_ +from sqlalchemy import select +from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.orm import Session + +from cerc_persistence.repository import Repository from cerc_persistence.models import City from cerc_persistence.models import CityObject from cerc_persistence.models import SimulationResults as Model -from . import datetime, logging, select, SQLAlchemyError, Session, Repository class SimulationResults(Repository): @@ -69,10 +76,10 @@ class SimulationResults(Repository): with Session(self.engine) as session: if city_id is not None: session.query(Model).filter(Model.name == name, Model.city_id == city_id).update( - { - 'values': values, - 'updated': datetime.datetime.utcnow() - }) + { + 'values': values, + 'updated': datetime.datetime.utcnow() + }) session.commit() elif city_object_id is not None: session.query(Model).filter(Model.name == name, Model.city_object_id == city_object_id).update( @@ -135,8 +142,7 @@ class SimulationResults(Repository): logging.error('Error while fetching city by city_id: %s', err) raise SQLAlchemyError from err - def get_simulation_results_by_city_id_city_object_id_and_names(self, city_id, city_object_id, result_names=None) -> [ - Model]: + def get_simulation_results_by_city_id_city_object_id_and_names(self, city_id, city_object_id, result_names=None) -> [Model]: """ Fetch the simulation results based in the city_id or city_object_id with the given names or all :param city_id: the city id @@ -184,4 +190,4 @@ class SimulationResults(Repository): return filtered_results except SQLAlchemyError as err: logging.error('Error while fetching city by city_id: %s', err) - raise SQLAlchemyError from err + raise SQLAlchemyError from err \ No newline at end of file diff --git a/cerc_persistence/repositories/user.py b/cerc_persistence/repositories/user.py index d4cc87f..75d3a0e 100644 --- a/cerc_persistence/repositories/user.py +++ b/cerc_persistence/repositories/user.py @@ -4,12 +4,16 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project Coder Peter Yefi peteryefi@gmail.com """ +import datetime +import logging +from sqlalchemy import select +from sqlalchemy.exc import SQLAlchemyError +from sqlalchemy.orm import Session from hub.helpers.auth import Auth from cerc_persistence.repository import Repository from cerc_persistence.models import User as Model, Application as ApplicationModel, UserRoles -from . import datetime, logging, select, SQLAlchemyError, Session, Repository class User(Repository): diff --git a/setup.py b/setup.py index 0e9e037..1e19dee 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ with open(version) as f: exec(f.read(), main_ns) setup( - name='cerc-persistence', + name='cerc-cerc_persistence', version=main_ns['__version__'], description="", long_description="", diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 2978d92..35c25c7 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -248,36 +248,36 @@ TestDBFactory for x in building.onsite_electrical_production[cte.MONTH]] yearly_on_site_electrical_production = [x * cte.WATTS_HOUR_TO_JULES for x in building.onsite_electrical_production[cte.YEAR]] - results = json.dumps({cte.INSEL_MEB: [ - {'monthly_cooling_peak_load': monthly_cooling_peak_load}, - {'yearly_cooling_peak_load': yearly_cooling_peak_load}, - {'monthly_heating_peak_load': monthly_heating_peak_load}, - {'yearly_heating_peak_load': yearly_heating_peak_load}, - {'monthly_lighting_peak_load': monthly_lighting_peak_load}, - {'yearly_lighting_peak_load': yearly_lighting_peak_load}, - {'monthly_appliances_peak_load': monthly_appliances_peak_load}, - {'yearly_appliances_peak_load': yearly_appliances_peak_load}, - {'monthly_cooling_demand': monthly_cooling_demand}, - {'yearly_cooling_demand': yearly_cooling_demand}, - {'monthly_heating_demand': monthly_heating_demand}, - {'yearly_heating_demand': yearly_heating_demand}, - {'monthly_lighting_electrical_demand': monthly_lighting_electrical_demand}, - {'yearly_lighting_electrical_demand': yearly_lighting_electrical_demand}, - {'monthly_appliances_electrical_demand': monthly_appliances_electrical_demand}, - {'yearly_appliances_electrical_demand': yearly_appliances_electrical_demand}, - {'monthly_domestic_hot_water_heat_demand': monthly_domestic_hot_water_heat_demand}, - {'yearly_domestic_hot_water_heat_demand': yearly_domestic_hot_water_heat_demand}, - {'monthly_heating_consumption': monthly_heating_consumption}, - {'yearly_heating_consumption': yearly_heating_consumption}, - {'monthly_cooling_consumption': monthly_cooling_consumption}, - {'yearly_cooling_consumption': yearly_cooling_consumption}, - {'monthly_domestic_hot_water_consumption': monthly_domestic_hot_water_consumption}, - {'yearly_domestic_hot_water_consumption': yearly_domestic_hot_water_consumption}, - {'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption}, - {'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption}, - {'monthly_on_site_electrical_production': monthly_on_site_electrical_production}, - {'yearly_on_site_electrical_production': yearly_on_site_electrical_production} - ]}) + results = {cte.INSEL_MEB: { + 'monthly_cooling_peak_load': monthly_cooling_peak_load, + 'yearly_cooling_peak_load': yearly_cooling_peak_load, + 'monthly_heating_peak_load': monthly_heating_peak_load, + 'yearly_heating_peak_load': yearly_heating_peak_load, + 'monthly_lighting_peak_load': monthly_lighting_peak_load, + 'yearly_lighting_peak_load': yearly_lighting_peak_load, + 'monthly_appliances_peak_load': monthly_appliances_peak_load, + 'yearly_appliances_peak_load': yearly_appliances_peak_load, + 'monthly_cooling_demand': monthly_cooling_demand, + 'yearly_cooling_demand': yearly_cooling_demand, + 'monthly_heating_demand': monthly_heating_demand, + 'yearly_heating_demand': yearly_heating_demand, + 'monthly_lighting_electrical_demand': monthly_lighting_electrical_demand, + 'yearly_lighting_electrical_demand': yearly_lighting_electrical_demand, + 'monthly_appliances_electrical_demand': monthly_appliances_electrical_demand, + 'yearly_appliances_electrical_demand': yearly_appliances_electrical_demand, + 'monthly_domestic_hot_water_heat_demand': monthly_domestic_hot_water_heat_demand, + 'yearly_domestic_hot_water_heat_demand': yearly_domestic_hot_water_heat_demand, + 'monthly_heating_consumption': monthly_heating_consumption, + 'yearly_heating_consumption': yearly_heating_consumption, + 'monthly_cooling_consumption': monthly_cooling_consumption, + 'yearly_cooling_consumption': yearly_cooling_consumption, + 'monthly_domestic_hot_water_consumption': monthly_domestic_hot_water_consumption, + 'yearly_domestic_hot_water_consumption': yearly_domestic_hot_water_consumption, + 'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption, + 'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption, + 'monthly_on_site_electrical_production': monthly_on_site_electrical_production, + 'yearly_on_site_electrical_production': yearly_on_site_electrical_production + }} db_building_id = _building.id city_objects_id.append(db_building_id) diff --git a/tests/test_db_retrieve.py b/tests/test_db_retrieve.py index 25fdb56..fd917c7 100644 --- a/tests/test_db_retrieve.py +++ b/tests/test_db_retrieve.py @@ -1,8 +1,8 @@ """ -Test db retrieve +Test db factory SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group -Project Coder Ruben Sanchez ruben.sanchez@mail.concordia.ca +Project Coder Peter Yefi peteryefi@gmail.com """ import distutils.spawn import logging @@ -14,6 +14,7 @@ from unittest import TestCase import sqlalchemy.exc from sqlalchemy import create_engine from sqlalchemy.exc import ProgrammingError + from cerc_persistence.db_control import DBControl from cerc_persistence.repository import Repository From 1c2a405823a943813cab7e1f89aa1ec836613189 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Tue, 28 Nov 2023 14:16:47 -0500 Subject: [PATCH 09/25] Modify setup to produce proper tar.gz --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 1e19dee..0e9e037 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ with open(version) as f: exec(f.read(), main_ns) setup( - name='cerc-cerc_persistence', + name='cerc-persistence', version=main_ns['__version__'], description="", long_description="", From d9e4343a085113302dff7f97b2cbc4df31eef1ea Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 12:52:09 -0500 Subject: [PATCH 10/25] Added test responsible for Montreal.cli (I believe) --- tests/test_exports.py | 150 +++++++ tests/tests_data/one_building_in_kelowna.gml | 409 +++++++++++++++++++ 2 files changed, 559 insertions(+) create mode 100644 tests/test_exports.py create mode 100644 tests/tests_data/one_building_in_kelowna.gml diff --git a/tests/test_exports.py b/tests/test_exports.py new file mode 100644 index 0000000..e719790 --- /dev/null +++ b/tests/test_exports.py @@ -0,0 +1,150 @@ +""" +TestExports test and validate the city export formats +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +import json +import os +from pathlib import Path +from unittest import TestCase + +import hub.helpers.constants as cte +from hub.city_model_structure.city import City +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.exports.exports_factory import ExportsFactory +from hub.helpers.dictionaries import Dictionaries +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.usage_factory import UsageFactory +from hub.imports.weather_factory import WeatherFactory + + +class TestExports(TestCase): + """ + TestExports class contains the unittest for export functionality + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._complete_city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _get_complete_city(self, from_pickle): + if self._complete_city is None: + if from_pickle: + file_path = (self._example_path / 'ConcordiaSWGcampus.pickle').resolve() + self._complete_city = City.load(file_path) + else: + file_path = (self._example_path / 'one_building_in_kelowna.gml').resolve() + self._complete_city = self._get_citygml(file_path) + for building in self._complete_city.buildings: + building.function = Dictionaries().hft_function_to_hub_function[building.function] + building.year_of_construction = 2006 + ConstructionFactory('nrel', self._complete_city).enrich() + UsageFactory('nrcan', self._complete_city).enrich() + cli = (self._example_path / 'weather' / 'inseldb_Summerland.cli').resolve() + self._complete_city.climate_file = Path(cli) + self._complete_city.climate_reference_city = 'Summerland' + dummy_measures = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] + for building in self._complete_city.buildings: + building.heating_demand[cte.MONTH] = dummy_measures + building.cooling_demand[cte.MONTH] = dummy_measures + building.heating_demand[cte.YEAR] = [0.0] + building.cooling_demand[cte.YEAR] = [0.0] + return self._complete_city + + def _export(self, export_type, from_pickle=False): + self._complete_city = self._get_complete_city(from_pickle) + ExportsFactory(export_type, self._complete_city, self._output_path, base_uri='../glb').export() + + def _export_building_energy(self, export_type, from_pickle=False): + self._complete_city = self._get_complete_city(from_pickle) + EnergyBuildingsExportsFactory(export_type, self._complete_city, self._output_path).export() + + def test_obj_export(self): + """ + export to obj + """ + self._export('obj', False) + + def test_cesiumjs_tileset_export(self): + """ + export to cesiumjs tileset + """ + self._export('cesiumjs_tileset', False) + tileset = Path(self._output_path / f'{self._city.name}.json') + self.assertTrue(tileset.exists()) + with open(tileset, 'r') as f: + json_tileset = json.load(f) + self.assertEqual(1, len(json_tileset['root']['children']), "Wrong number of children") + + def test_glb_export(self): + """ + export to glb format + """ + self._export('glb', False) + for building in self._city.buildings: + glb_file = Path(self._output_path / f'{building.name}.glb') + self.assertTrue(glb_file.exists(), f'{building.name} Building glb wasn\'t correctly generated') + + def test_geojson_export(self): + self._export('geojson', False) + geojson_file = Path(self._output_path / f'{self._city.name}.geojson') + self.assertTrue(geojson_file.exists(), f'{geojson_file} doesn\'t exists') + with open(geojson_file, 'r') as f: + geojson = json.load(f) + self.assertEqual(1, len(geojson['features']), 'Wrong number of buildings') + geometry = geojson['features'][0]['geometry'] + self.assertEqual('Polygon', geometry['type'], 'Wrong geometry type') + self.assertEqual(1, len(geometry['coordinates']), 'Wrong polygon structure') + self.assertEqual(11, len(geometry['coordinates'][0]), 'Wrong number of vertices') + os.unlink(geojson_file) # todo: this test need to cover a multipolygon example too + + def test_energy_ade_export(self): + """ + export to energy ADE + """ + self._export_building_energy('energy_ade') + + def test_sra_export(self): + """ + export to SRA + """ + self._export('sra') + + def test_idf_export(self): + """ + export to IDF + """ + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + self.assertIsNotNone(city, 'city is none') + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + ConstructionFactory('nrcan', city).enrich() + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + UsageFactory('nrcan', city).enrich() + WeatherFactory('epw', city).enrich() + print(self._output_path) + try: + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + except Exception: + self.fail("Idf ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/tests_data/one_building_in_kelowna.gml b/tests/tests_data/one_building_in_kelowna.gml new file mode 100644 index 0000000..6036f4e --- /dev/null +++ b/tests/tests_data/one_building_in_kelowna.gml @@ -0,0 +1,409 @@ + + + + + 326011.03601000085 5526048.416990001 -1.6000000000058208 + 329466.6600299999 5529018.72205 9.80000000000291 + + + + + + 291 + + + m2 + + residential + 1996 + 5.3 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 329231.5010599997 5528270.404139999 4.311470000000554 329229.15295 5528271.14002 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 + + + + + + + + + + + + + + + + + 329248.8121399991 5528267.658840001 4.925719999999274 329254.11205999926 5528262.99903 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 + + + + + + + + + + + + + + + + + 329246.16602000035 5528272.533020001 0 329246.16602000035 5528272.533020001 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329253.52796000056 5528272.956 0 329246.16602000035 5528272.533020001 0 + + + + + + + + + + + + + + + + + 329241.7199700009 5528276.307010001 0 329241.7199700009 5528276.307010001 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 329246.16602000035 5528272.533020001 0 329241.7199700009 5528276.307010001 0 + + + + + + + + + + + + + + + + + 329237.9890100006 5528272.159 0 329237.9890100006 5528272.159 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 329241.7199700009 5528276.307010001 0 329237.9890100006 5528272.159 0 + + + + + + + + + + + + + + + + + 329233.3360600006 5528276.213989999 0 329233.3360600006 5528276.213989999 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 329237.9890100006 5528272.159 0 329233.3360600006 5528276.213989999 0 + + + + + + + + + + + + + + + + + 329229.15295 5528271.14002 0 329229.15295 5528271.14002 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 329233.3360600006 5528276.213989999 0 329229.15295 5528271.14002 0 + + + + + + + + + + + + + + + + + 329229.30395000055 5528269.304020001 0 329229.30395000055 5528269.304020001 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 329229.15295 5528271.14002 0 329229.30395000055 5528269.304020001 0 + + + + + + + + + + + + + + + + + 329242.40003000014 5528257.71503 0 329242.40003000014 5528257.71503 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329229.30395000055 5528269.304020001 0 329242.40003000014 5528257.71503 0 + + + + + + + + + + + + + + + + + 329247.3289800007 5528262.52503 0 329247.3289800007 5528262.52503 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 329242.40003000014 5528257.71503 0 329247.3289800007 5528262.52503 0 + + + + + + + + + + + + + + + + + 329254.11205999926 5528262.99903 0 329254.11205999926 5528262.99903 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 329247.3289800007 5528262.52503 0 329254.11205999926 5528262.99903 0 + + + + + + + + + + + + + + + + + 329253.52796000056 5528272.956 0 329253.52796000056 5528272.956 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 329254.11205999926 5528262.99903 0 329253.52796000056 5528272.956 0 + + + + + + + + + + + + + + + + + 329253.52796000056 5528272.956 0 329254.11205999926 5528262.99903 0 329247.3289800007 5528262.52503 0 329242.40003000014 5528257.71503 0 329229.30395000055 5528269.304020001 0 329229.15295 5528271.14002 0 329233.3360600006 5528276.213989999 0 329237.9890100006 5528272.159 0 329241.7199700009 5528276.307010001 0 329246.16602000035 5528272.533020001 0 329253.52796000056 5528272.956 0 + + + + + + + + + + + + + + + + + 329246.16602000035 5528272.533020001 3.8000000000029104 329244.33748999983 5528267.074109999 4.999100000000908 329245.1323099993 5528267.42457 4.930840000000899 329248.8121399991 5528267.658840001 4.925719999999274 329253.52796000056 5528272.956 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 + + + + + + + + + + + + + + + + + 329241.7199700009 5528276.307010001 3.8000000000029104 329242.3462899998 5528267.00502 5.30000000000291 329244.33748999983 5528267.074109999 4.999100000000908 329246.16602000035 5528272.533020001 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 + + + + + + + + + + + + + + + + + 329237.9890100006 5528272.159 3.8000000000029104 329238.32637000084 5528266.609999999 4.6887600000045495 329242.1777599994 5528266.829500001 5.298219999996945 329242.3462899998 5528267.00502 5.30000000000291 329241.7199700009 5528276.307010001 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 + + + + + + + + + + + + + + + + + 329233.3360600006 5528276.213989999 3.8000000000029104 329233.80010999925 5528270.5848900005 4.683640000002924 329238.32637000084 5528266.609999999 4.6887600000045495 329237.9890100006 5528272.159 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 + + + + + + + + + + + + + + + + + 329229.15295 5528271.14002 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 329233.80010999925 5528270.5848900005 4.683640000002924 329233.3360600006 5528276.213989999 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 + + + + + + + + + + + + + + + + + 329242.40003000014 5528257.71503 3.8000000000029104 329242.1777599994 5528266.829500001 5.298219999996945 329238.32637000084 5528266.609999999 4.6887600000045495 329233.80010999925 5528270.5848900005 4.683640000002924 329231.5010599997 5528270.404139999 4.311470000000554 329229.30395000055 5528269.304020001 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 + + + + + + + + + + + + + + + + + 329247.3289800007 5528262.52503 3.8000000000029104 329245.1323099993 5528267.42457 4.930840000000899 329244.33748999983 5528267.074109999 4.999100000000908 329242.3462899998 5528267.00502 5.30000000000291 329242.1777599994 5528266.829500001 5.298219999996945 329242.40003000014 5528257.71503 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 + + + + + + + + + + + + + + + + + 329254.11205999926 5528262.99903 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 329245.1323099993 5528267.42457 4.930840000000899 329247.3289800007 5528262.52503 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 + + + + + + + + + + + From 1a86449e58000a7efd453169620551d99636256c Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:09:32 -0500 Subject: [PATCH 11/25] Change of test to generate montreal cli file --- tests/test_city_merge.py | 108 ++++++++++++++++++++++++++++ tests/test_exports.py | 150 --------------------------------------- 2 files changed, 108 insertions(+), 150 deletions(-) create mode 100644 tests/test_city_merge.py delete mode 100644 tests/test_exports.py diff --git a/tests/test_city_merge.py b/tests/test_city_merge.py new file mode 100644 index 0000000..24bdc80 --- /dev/null +++ b/tests/test_city_merge.py @@ -0,0 +1,108 @@ +""" +TestCityMerge test and validate the merge of several cities into one +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import copy +import distutils.spawn +import subprocess +from pathlib import Path +from unittest import TestCase + +from hub.city_model_structure.city import City +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.results_factory import ResultFactory +from hub.exports.exports_factory import ExportsFactory +import hub.helpers.constants as cte + + +class TestCityMerge(TestCase): + """ + Functional TestCityMerge + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + self._executable = 'sra' + + def test_merge(self): + file_path = Path(self._example_path / 'test.geojson').resolve() + full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city + self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') + odd_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + for building in full_city.buildings: + if int(building.name) % 2 == 0: + even_city.add_city_object(copy.deepcopy(building)) + else: + odd_city.add_city_object(copy.deepcopy(building)) + self.assertEqual(8, len(odd_city.buildings), 'Wrong number of odd buildings') + self.assertEqual(9, len(even_city.buildings), 'Wrong number of par buildings') + merged_city = odd_city.merge(even_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + merged_city = even_city.merge(odd_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + merged_city = full_city.merge(odd_city).merge(even_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + + def test_merge_with_radiation(self): + sra = distutils.spawn.find_executable('sra') + file_path = Path(self._example_path / 'test.geojson').resolve() + + full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city + even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + for building in full_city.buildings: + if int(building.name) % 2 == 0: + even_city.add_city_object(copy.deepcopy(building)) + ExportsFactory('sra', full_city, self._output_path).export() + sra_file = str((self._output_path / f'{full_city.name}_sra.xml').resolve()) + subprocess.run([sra, sra_file], stdout=subprocess.DEVNULL) + ResultFactory('sra', full_city, self._output_path).enrich() + self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') + merged_city = full_city.merge(even_city) + + full_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + full_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + + merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) + + merged_city = even_city.merge(full_city) + merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) + + for building in even_city.buildings: + for surface in building.surfaces: + surface.global_irradiance[cte.YEAR] = [3] + + merged_city = full_city.merge(even_city) + first_merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + first_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + merged_city = even_city.merge(full_city) + second_merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + second_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertAlmostEqual(first_merged_city_building_total_radiation, second_merged_city_building_total_radiation, 8) + diff --git a/tests/test_exports.py b/tests/test_exports.py deleted file mode 100644 index e719790..0000000 --- a/tests/test_exports.py +++ /dev/null @@ -1,150 +0,0 @@ -""" -TestExports test and validate the city export formats -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -import json -import os -from pathlib import Path -from unittest import TestCase - -import hub.helpers.constants as cte -from hub.city_model_structure.city import City -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.exports.exports_factory import ExportsFactory -from hub.helpers.dictionaries import Dictionaries -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.usage_factory import UsageFactory -from hub.imports.weather_factory import WeatherFactory - - -class TestExports(TestCase): - """ - TestExports class contains the unittest for export functionality - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._complete_city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _get_complete_city(self, from_pickle): - if self._complete_city is None: - if from_pickle: - file_path = (self._example_path / 'ConcordiaSWGcampus.pickle').resolve() - self._complete_city = City.load(file_path) - else: - file_path = (self._example_path / 'one_building_in_kelowna.gml').resolve() - self._complete_city = self._get_citygml(file_path) - for building in self._complete_city.buildings: - building.function = Dictionaries().hft_function_to_hub_function[building.function] - building.year_of_construction = 2006 - ConstructionFactory('nrel', self._complete_city).enrich() - UsageFactory('nrcan', self._complete_city).enrich() - cli = (self._example_path / 'weather' / 'inseldb_Summerland.cli').resolve() - self._complete_city.climate_file = Path(cli) - self._complete_city.climate_reference_city = 'Summerland' - dummy_measures = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] - for building in self._complete_city.buildings: - building.heating_demand[cte.MONTH] = dummy_measures - building.cooling_demand[cte.MONTH] = dummy_measures - building.heating_demand[cte.YEAR] = [0.0] - building.cooling_demand[cte.YEAR] = [0.0] - return self._complete_city - - def _export(self, export_type, from_pickle=False): - self._complete_city = self._get_complete_city(from_pickle) - ExportsFactory(export_type, self._complete_city, self._output_path, base_uri='../glb').export() - - def _export_building_energy(self, export_type, from_pickle=False): - self._complete_city = self._get_complete_city(from_pickle) - EnergyBuildingsExportsFactory(export_type, self._complete_city, self._output_path).export() - - def test_obj_export(self): - """ - export to obj - """ - self._export('obj', False) - - def test_cesiumjs_tileset_export(self): - """ - export to cesiumjs tileset - """ - self._export('cesiumjs_tileset', False) - tileset = Path(self._output_path / f'{self._city.name}.json') - self.assertTrue(tileset.exists()) - with open(tileset, 'r') as f: - json_tileset = json.load(f) - self.assertEqual(1, len(json_tileset['root']['children']), "Wrong number of children") - - def test_glb_export(self): - """ - export to glb format - """ - self._export('glb', False) - for building in self._city.buildings: - glb_file = Path(self._output_path / f'{building.name}.glb') - self.assertTrue(glb_file.exists(), f'{building.name} Building glb wasn\'t correctly generated') - - def test_geojson_export(self): - self._export('geojson', False) - geojson_file = Path(self._output_path / f'{self._city.name}.geojson') - self.assertTrue(geojson_file.exists(), f'{geojson_file} doesn\'t exists') - with open(geojson_file, 'r') as f: - geojson = json.load(f) - self.assertEqual(1, len(geojson['features']), 'Wrong number of buildings') - geometry = geojson['features'][0]['geometry'] - self.assertEqual('Polygon', geometry['type'], 'Wrong geometry type') - self.assertEqual(1, len(geometry['coordinates']), 'Wrong polygon structure') - self.assertEqual(11, len(geometry['coordinates'][0]), 'Wrong number of vertices') - os.unlink(geojson_file) # todo: this test need to cover a multipolygon example too - - def test_energy_ade_export(self): - """ - export to energy ADE - """ - self._export_building_energy('energy_ade') - - def test_sra_export(self): - """ - export to SRA - """ - self._export('sra') - - def test_idf_export(self): - """ - export to IDF - """ - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - self.assertIsNotNone(city, 'city is none') - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - ConstructionFactory('nrcan', city).enrich() - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - UsageFactory('nrcan', city).enrich() - WeatherFactory('epw', city).enrich() - print(self._output_path) - try: - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - except Exception: - self.fail("Idf ExportsFactory raised ExceptionType unexpectedly!") From c9cc46f943dafb79c6ea7c55da6645bcd00f9fb0 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:19:17 -0500 Subject: [PATCH 12/25] Replaced previous test with insel export --- tests/test_city_merge.py | 108 - tests/test_insel_exports.py | 136 + .../one_building_in_kelowna_sra_SW.out | 8761 +++++++++++++++++ 3 files changed, 8897 insertions(+), 108 deletions(-) delete mode 100644 tests/test_city_merge.py create mode 100644 tests/test_insel_exports.py create mode 100644 tests/tests_data/one_building_in_kelowna_sra_SW.out diff --git a/tests/test_city_merge.py b/tests/test_city_merge.py deleted file mode 100644 index 24bdc80..0000000 --- a/tests/test_city_merge.py +++ /dev/null @@ -1,108 +0,0 @@ -""" -TestCityMerge test and validate the merge of several cities into one -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca -""" - -import copy -import distutils.spawn -import subprocess -from pathlib import Path -from unittest import TestCase - -from hub.city_model_structure.city import City -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.results_factory import ResultFactory -from hub.exports.exports_factory import ExportsFactory -import hub.helpers.constants as cte - - -class TestCityMerge(TestCase): - """ - Functional TestCityMerge - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - self._executable = 'sra' - - def test_merge(self): - file_path = Path(self._example_path / 'test.geojson').resolve() - full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city - self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') - odd_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - for building in full_city.buildings: - if int(building.name) % 2 == 0: - even_city.add_city_object(copy.deepcopy(building)) - else: - odd_city.add_city_object(copy.deepcopy(building)) - self.assertEqual(8, len(odd_city.buildings), 'Wrong number of odd buildings') - self.assertEqual(9, len(even_city.buildings), 'Wrong number of par buildings') - merged_city = odd_city.merge(even_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - merged_city = even_city.merge(odd_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - merged_city = full_city.merge(odd_city).merge(even_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - - def test_merge_with_radiation(self): - sra = distutils.spawn.find_executable('sra') - file_path = Path(self._example_path / 'test.geojson').resolve() - - full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city - even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - for building in full_city.buildings: - if int(building.name) % 2 == 0: - even_city.add_city_object(copy.deepcopy(building)) - ExportsFactory('sra', full_city, self._output_path).export() - sra_file = str((self._output_path / f'{full_city.name}_sra.xml').resolve()) - subprocess.run([sra, sra_file], stdout=subprocess.DEVNULL) - ResultFactory('sra', full_city, self._output_path).enrich() - self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') - merged_city = full_city.merge(even_city) - - full_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - full_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - - merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) - - merged_city = even_city.merge(full_city) - merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) - - for building in even_city.buildings: - for surface in building.surfaces: - surface.global_irradiance[cte.YEAR] = [3] - - merged_city = full_city.merge(even_city) - first_merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - first_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - merged_city = even_city.merge(full_city) - second_merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - second_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertAlmostEqual(first_merged_city_building_total_radiation, second_merged_city_building_total_radiation, 8) - diff --git a/tests/test_insel_exports.py b/tests/test_insel_exports.py new file mode 100644 index 0000000..591326b --- /dev/null +++ b/tests/test_insel_exports.py @@ -0,0 +1,136 @@ +""" +TestInselExports test +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" + +from pathlib import Path +from unittest import TestCase +import pandas as pd +import hub.helpers.constants as cte +from hub.helpers.monthly_values import MonthlyValues +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.usage_factory import UsageFactory +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.imports.weather_factory import WeatherFactory + + +class TestExports(TestCase): + """ + TestExports class contains the unittest for export functionality + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._complete_city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _set_irradiance_surfaces(self, city): + """ + saves in building surfaces the correspondent irradiance at different time-scales depending on the mode + if building is None, it saves all buildings' surfaces in file, if building is specified, it saves only that + specific building values + :parameter city: city + :return: none + """ + city.level_of_detail.surface_radiation = 2 + path = (self._example_path / "one_building_in_kelowna_sra_SW.out").resolve() + self._results = pd.read_csv(path, sep='\s+', header=0).to_dict(orient='list') + _irradiance = {} + for key in self._results: + header_name = key.split(':') + result = [x / cte.WATTS_HOUR_TO_JULES for x in self._results[key]] + city_object_name = header_name[1] + building = self._city.city_object(city_object_name) + surface_id = header_name[2] + surface = building.surface_by_id(surface_id) + monthly_result = MonthlyValues.get_total_month(result) + yearly_result = [sum(result)] + _irradiance[cte.YEAR] = yearly_result + _irradiance[cte.MONTH] = monthly_result + _irradiance[cte.HOUR] = result + surface.global_irradiance = _irradiance + + def test_insel_monthly_energy_balance_export(self): + """ + export to Insel MonthlyEnergyBalance + """ + city = self._get_citygml('one_building_in_kelowna.gml') + WeatherFactory('epw', city).enrich() + for building in city.buildings: + building.external_temperature[cte.MONTH] = MonthlyValues().\ + get_mean_values(building.external_temperature[cte.HOUR]) + self._set_irradiance_surfaces(city) + + for building in city.buildings: + self.assertIsNotNone(building.external_temperature[cte.MONTH], f'building {building.name} ' + f'external_temperature is none') + for surface in building.surfaces: + if surface.type != 'Ground': + self.assertIsNotNone(surface.global_irradiance[cte.MONTH], f'surface in building {building.name} ' + f'global_irradiance is none') + + for building in city.buildings: + building.year_of_construction = 2006 + if building.function is None: + building.function = 'large office' + building.attic_heated = 0 + building.basement_heated = 0 + ConstructionFactory('nrel', city).enrich() + UsageFactory('comnet', city).enrich() + + # parameters written: + for building in city.buildings: + self.assertIsNotNone(building.volume, f'building {building.name} volume is none') + self.assertIsNotNone(building.average_storey_height, f'building {building.name} average_storey_height is none') + self.assertIsNotNone(building.storeys_above_ground, f'building {building.name} storeys_above_ground is none') + self.assertIsNotNone(building.attic_heated, f'building {building.name} attic_heated is none') + self.assertIsNotNone(building.basement_heated, f'building {building.name} basement_heated is none') + for internal_zone in building.internal_zones: + self.assertIsNotNone(internal_zone.area, f'internal zone {internal_zone.id} area is none') + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self.assertIsNotNone(thermal_zone.indirectly_heated_area_ratio, f'thermal zone {thermal_zone.id} ' + f'indirectly_heated_area_ratio is none') + self.assertIsNotNone(thermal_zone.effective_thermal_capacity, f'thermal zone {thermal_zone.id} ' + f'effective_thermal_capacity is none') + self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, f'thermal zone {thermal_zone.id} ' + f'additional_thermal_bridge_u_value ' + f'is none') + self.assertIsNotNone(thermal_zone.total_floor_area, f'thermal zone {thermal_zone.id} ' + f'total_floor_area is none') + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.type) + self.assertIsNotNone(thermal_boundary.opaque_area) + self.assertIsNotNone(thermal_boundary.window_ratio) + self.assertIsNotNone(thermal_boundary.u_value) + self.assertIsNotNone(thermal_boundary.thermal_openings) + if thermal_boundary.type is not cte.GROUND: + self.assertIsNotNone(thermal_boundary.external_surface.short_wave_reflectance) + + for usage in internal_zone.usages: + self.assertIsNotNone(usage.percentage, f'usage zone {usage.name} percentage is none') + self.assertIsNotNone(usage.internal_gains, f'usage zone {usage.name} internal_gains is none') + self.assertIsNotNone(usage.thermal_control, f'usage zone {usage.name} thermal_control is none') + self.assertIsNotNone(usage.hours_day, f'usage zone {usage.name} hours_day is none') + self.assertIsNotNone(usage.days_year, f'usage zone {usage.name} days_year is none') + self.assertIsNotNone( + usage.mechanical_air_change, + f'usage zone {usage.name} mechanical_air_change is none' + ) + # export files + try: + EnergyBuildingsExportsFactory('insel_monthly_energy_balance', city, self._output_path).export() + except Exception: + self.fail("Insel MonthlyEnergyBalance ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/tests_data/one_building_in_kelowna_sra_SW.out b/tests/tests_data/one_building_in_kelowna_sra_SW.out new file mode 100644 index 0000000..bc60e9c --- /dev/null +++ b/tests/tests_data/one_building_in_kelowna_sra_SW.out @@ -0,0 +1,8761 @@ +#0:BLD109438:2 0:BLD109438:3 0:BLD109438:4 0:BLD109438:5 0:BLD109438:6 0:BLD109438:7 0:BLD109438:8 0:BLD109438:9 0:BLD109438:10 0:BLD109438:11 0:BLD109438:0 0:BLD109438:1 0:BLD109438:13 0:BLD109438:14 0:BLD109438:15 0:BLD109438:16 0:BLD109438:17 0:BLD109438:18 0:BLD109438:19 0:BLD109438:20 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +45 49 39 42 45 47 108 463 380 302 86 196 68 127 65 121 65 152 231 213 +105 113 93 101 107 117 376 820 783 428 311 443 231 316 226 318 228 431 530 522 +134 140 120 127 140 170 641 897 1000 331 488 555 336 411 364 412 369 627 685 708 +151 154 139 140 164 286 858 818 1075 204 606 576 393 437 458 439 464 741 732 790 +95 95 88 86 108 252 471 315 488 112 331 272 218 222 261 222 264 382 346 386 +82 80 79 73 101 304 467 209 410 89 296 204 179 168 230 168 233 332 273 320 +55 53 55 48 88 298 391 95 288 57 207 104 104 95 151 95 157 227 159 205 +18 17 19 15 58 145 164 23 84 18 70 33 34 32 43 32 50 74 38 60 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 39 30 34 35 37 59 155 131 110 63 93 58 74 56 73 56 81 103 98 +89 96 78 85 90 101 293 620 592 332 251 348 193 255 189 256 191 339 413 407 +110 115 98 103 114 139 462 641 711 252 364 411 260 311 279 312 282 461 501 517 +103 104 94 95 111 174 435 417 536 137 339 325 240 260 270 261 273 402 398 425 +112 111 105 102 128 314 599 398 623 132 415 339 268 273 323 273 328 481 435 487 +76 75 72 69 89 123 150 107 138 81 175 158 154 152 163 152 164 182 171 180 +45 43 43 40 54 71 80 54 69 46 98 88 88 86 92 86 93 100 93 98 +14 13 13 12 17 22 23 15 19 14 29 26 26 26 28 26 28 29 27 28 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 15 13 14 15 15 16 16 16 16 28 28 28 28 28 28 28 28 28 28 +23 23 20 21 23 23 24 24 24 24 43 43 43 43 43 43 43 43 43 43 +55 56 49 52 56 61 68 71 73 64 111 113 108 110 109 110 109 114 115 116 +72 73 67 67 77 89 106 104 112 85 157 156 148 150 151 150 151 163 163 165 +75 75 69 68 85 158 265 189 273 88 211 182 155 157 176 157 178 237 219 239 +61 60 58 55 75 167 241 124 214 66 173 131 119 115 142 115 144 190 162 184 +54 52 54 47 81 235 305 87 228 55 182 106 105 98 140 98 145 197 146 181 +8 8 7 7 9 10 10 8 9 8 16 15 15 15 15 15 15 16 15 16 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +59 65 51 56 59 61 141 633 516 415 119 272 94 176 91 169 91 210 320 294 +114 125 100 111 116 131 443 990 941 516 364 527 268 372 261 374 264 510 633 623 +154 163 138 147 161 198 741 1046 1161 394 576 657 400 488 432 489 437 738 807 832 +178 183 165 166 195 335 1000 961 1256 246 726 692 478 531 553 533 560 883 874 941 +174 174 167 159 206 580 1162 759 1213 214 767 614 467 477 581 479 590 902 810 914 +142 137 145 126 190 696 1102 464 967 161 658 429 364 337 493 338 502 750 602 720 +63 60 64 55 97 267 344 103 258 65 216 130 129 121 169 120 174 233 176 214 +25 23 27 21 71 172 194 32 103 24 94 49 51 48 63 48 71 99 57 83 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 34 26 29 31 32 51 139 117 99 51 79 47 61 45 60 45 67 88 83 +60 65 53 57 61 68 129 230 221 143 133 164 115 134 114 135 114 160 184 182 +65 68 58 61 68 82 177 233 253 118 160 175 129 144 134 144 135 190 203 207 +83 84 75 76 89 127 252 244 303 110 223 216 174 184 188 184 190 255 253 267 +94 94 87 85 106 190 312 226 322 110 266 233 202 204 225 204 227 295 275 298 +84 82 81 75 105 267 399 193 353 92 278 204 183 175 224 175 227 308 260 299 +52 51 50 47 64 88 100 64 85 53 115 101 101 98 107 98 108 118 108 115 +20 20 19 18 26 35 37 22 29 20 41 36 36 35 39 35 39 42 38 40 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +56 62 48 54 56 58 127 563 459 373 112 248 91 163 87 157 87 192 290 267 +100 110 88 98 101 115 312 660 627 363 284 389 225 291 220 292 222 377 456 449 +136 144 122 130 142 175 520 720 792 306 450 504 338 394 358 395 361 556 601 618 +115 116 105 106 123 172 329 320 393 151 314 306 253 266 271 266 273 354 352 370 +77 77 73 71 85 105 128 111 129 87 174 167 160 160 165 160 166 181 176 181 +54 52 51 48 60 71 79 66 75 57 114 108 107 106 110 106 110 116 113 116 +30 29 29 27 34 39 41 34 38 31 61 58 58 58 60 58 60 62 60 61 +12 11 11 10 14 16 17 13 15 12 24 22 23 22 23 22 23 24 23 24 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +55 60 47 53 55 57 118 510 416 340 109 231 90 155 86 150 86 181 268 248 +86 94 76 84 88 98 232 465 443 267 228 299 188 233 185 233 186 290 344 339 +84 87 75 78 87 104 265 359 393 166 235 260 183 209 192 210 193 284 306 314 +98 100 89 91 105 149 291 283 349 130 269 262 214 226 230 226 232 306 304 319 +105 105 98 96 119 210 344 251 356 123 299 264 230 232 255 232 258 332 310 335 +94 92 90 85 114 234 331 179 297 102 269 214 199 193 229 193 231 292 256 285 +96 89 106 82 173 670 891 198 653 100 468 223 220 194 336 193 349 516 355 464 +56 52 55 48 191 521 593 62 290 55 229 97 98 96 125 96 157 246 113 194 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +29 31 24 27 29 30 62 270 220 180 49 114 40 73 37 71 37 87 133 122 +66 70 57 62 67 73 192 407 386 226 166 230 130 171 127 171 128 222 271 266 +107 112 96 101 112 135 409 572 628 241 340 384 252 297 267 297 270 424 461 474 +149 153 138 139 163 259 687 668 857 207 544 524 384 419 432 420 437 647 643 686 +139 139 133 127 163 347 624 435 650 171 489 416 345 350 399 351 403 555 511 562 +113 110 112 101 145 390 588 279 522 125 410 298 266 254 328 254 333 455 383 441 +93 87 98 80 153 534 704 172 520 95 395 207 205 183 294 183 303 432 308 392 +45 36 56 34 198 537 612 65 303 40 247 96 102 93 141 93 170 266 124 210 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 69 54 61 63 65 147 733 593 484 129 310 101 197 95 190 95 235 365 334 +129 139 114 124 131 143 437 982 927 527 383 546 291 396 282 398 285 525 648 636 +159 169 143 152 166 203 750 1077 1186 415 596 684 420 510 450 512 455 762 836 860 +181 185 167 169 197 327 1010 984 1279 249 742 712 491 546 566 548 574 902 896 963 +185 185 178 169 217 625 1274 837 1338 227 841 675 509 522 635 524 645 991 892 1006 +157 152 159 139 207 822 1317 545 1158 177 772 496 415 383 571 384 582 883 706 849 +108 98 119 91 197 822 1099 230 803 111 562 255 252 215 397 215 413 622 421 557 +47 38 59 35 218 601 686 69 337 42 272 101 107 98 152 97 185 292 133 229 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 26 22 24 25 25 27 30 29 29 47 49 47 48 47 48 47 48 49 49 +55 58 49 53 55 59 69 80 79 71 112 117 109 112 109 112 109 116 120 119 +77 81 70 73 80 90 112 125 129 101 168 173 160 164 161 164 162 176 180 181 +88 90 81 82 94 113 146 143 159 109 201 199 186 189 190 189 191 211 211 215 +89 88 83 81 99 127 161 137 163 101 206 196 186 187 193 187 194 216 210 217 +78 77 75 71 91 124 151 109 140 84 181 164 160 158 169 158 170 188 177 186 +56 55 54 51 69 96 110 70 93 58 126 110 110 107 117 107 118 129 118 125 +28 28 26 25 37 52 56 30 42 28 57 48 49 47 53 47 53 58 51 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +38 43 33 37 38 40 60 164 137 119 69 102 65 81 62 80 62 88 112 106 +60 64 52 56 61 67 127 234 222 146 131 164 114 134 112 134 112 159 184 182 +65 68 59 62 67 74 86 92 95 80 137 139 132 134 133 134 133 141 143 144 +83 85 77 78 89 105 131 129 142 101 187 185 174 177 178 177 178 195 195 199 +105 105 98 96 120 244 434 306 452 126 341 292 243 247 280 247 283 386 357 391 +55 54 53 50 62 73 81 68 77 59 118 112 111 110 114 110 114 120 117 120 +102 94 112 87 180 693 920 208 676 106 494 241 238 204 359 204 371 543 377 490 +64 60 63 55 206 551 626 72 310 63 256 111 113 110 147 110 180 274 134 219 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +64 70 55 61 63 66 142 744 598 495 131 318 104 202 96 195 96 239 372 340 +130 139 114 125 131 143 434 992 933 537 388 555 295 403 286 405 288 531 656 643 +160 170 144 153 167 203 747 1085 1189 423 601 693 426 519 456 521 461 769 845 869 +181 186 167 169 197 319 1003 984 1274 248 744 717 495 551 569 553 577 904 900 966 +179 179 171 163 208 579 1174 779 1236 218 792 641 489 501 603 503 613 930 840 944 +153 148 154 136 199 763 1217 512 1073 171 730 477 403 374 546 374 556 832 670 801 +108 99 117 92 193 825 1103 228 806 111 564 256 253 209 400 209 415 625 423 560 +68 63 67 58 228 619 704 75 345 66 282 116 118 115 158 115 196 302 143 239 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 68 51 59 59 63 122 555 449 377 122 258 104 174 96 169 96 200 298 274 +100 110 88 98 101 113 279 588 554 337 278 372 228 287 223 288 224 359 430 422 +142 152 128 137 148 185 447 613 664 296 436 482 350 395 364 396 366 520 559 570 +167 173 155 157 184 282 678 668 841 240 584 568 434 468 478 469 483 682 680 720 +164 164 158 150 195 400 705 501 736 206 579 498 418 425 478 425 483 653 605 661 +133 133 119 123 143 251 343 201 311 135 328 279 266 262 292 262 294 348 316 341 +81 82 75 75 101 162 193 102 155 83 181 150 150 145 164 145 165 188 166 180 +44 46 38 41 58 92 100 46 69 46 89 72 74 71 81 71 82 91 77 85 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +26 27 23 25 26 27 29 32 31 31 50 52 50 51 50 51 50 51 52 52 +110 121 96 107 111 124 369 843 790 462 334 476 258 348 249 350 251 455 562 551 +169 179 152 161 176 213 796 1167 1274 455 645 745 458 558 488 560 494 825 908 933 +185 190 171 173 201 320 999 985 1270 254 755 729 508 564 581 566 589 914 910 975 +185 184 176 169 215 582 1171 783 1234 226 807 658 506 519 619 520 628 943 855 958 +159 154 162 142 211 732 1152 501 1018 180 726 491 422 395 555 396 564 822 671 793 +112 102 122 95 197 772 1026 229 753 115 553 271 268 223 404 223 416 609 423 549 +72 67 71 62 232 619 703 80 347 71 292 123 125 123 169 122 207 312 155 250 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +65 73 57 63 65 68 138 744 595 501 135 325 112 209 99 202 99 244 378 345 +133 143 117 128 134 146 430 994 931 545 397 566 307 415 296 417 298 539 666 652 +164 174 147 157 171 207 745 1092 1190 433 614 708 441 534 469 536 475 781 859 882 +186 191 171 174 202 319 1002 991 1276 255 760 735 513 569 586 571 593 920 917 982 +188 188 179 172 218 616 1264 840 1333 229 854 692 526 540 650 541 660 1003 907 1020 +165 160 167 147 216 835 1333 560 1176 186 806 529 447 415 604 416 615 919 741 885 +118 109 129 100 212 919 1227 251 896 122 634 291 287 230 453 230 467 701 476 629 +79 74 77 68 261 701 796 87 390 77 327 133 135 132 187 132 230 349 170 278 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +28 29 24 26 27 28 31 34 33 33 53 55 53 54 52 54 52 54 55 55 +59 63 52 57 60 64 75 88 87 78 121 127 118 122 118 122 118 126 130 130 +87 91 78 82 91 108 219 293 314 157 223 244 187 206 193 207 194 260 277 282 +103 105 94 95 111 159 369 366 457 140 317 310 239 257 262 257 264 369 368 389 +129 128 121 117 147 339 645 444 678 154 479 402 323 330 382 331 387 551 505 559 +100 98 97 89 124 350 533 249 473 109 364 262 233 221 290 221 294 406 340 393 +110 102 119 94 191 769 1021 223 748 113 547 266 263 213 399 213 410 603 417 543 +75 70 75 65 243 642 728 84 359 74 308 129 131 128 181 127 220 328 165 264 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +33 37 28 31 33 35 51 151 125 111 55 87 51 67 48 66 48 73 96 90 +94 103 83 92 95 106 237 490 460 291 250 327 211 259 206 259 207 314 373 366 +81 85 72 76 84 100 206 276 296 148 206 225 171 190 177 190 178 240 257 261 +102 104 93 95 110 151 296 294 358 137 282 277 227 239 243 240 244 320 319 335 +104 103 96 94 117 204 336 248 350 122 297 263 229 232 254 232 256 329 309 333 +94 92 90 84 114 233 330 180 297 101 271 216 201 195 230 195 233 293 258 287 +75 72 77 66 113 299 383 122 289 77 256 162 162 145 206 145 210 274 212 254 +42 38 46 35 120 288 325 53 171 40 164 80 84 79 112 78 126 173 102 145 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +44 50 38 43 44 46 76 312 252 219 81 156 73 111 66 108 66 123 176 163 +75 82 66 72 76 84 176 356 334 215 185 241 159 192 155 193 156 231 273 268 +90 95 81 85 94 111 224 299 319 163 231 253 195 215 201 215 202 268 286 291 +91 92 82 83 97 134 269 267 326 122 249 244 198 209 212 210 214 283 283 297 +108 107 101 98 123 244 434 309 454 129 350 301 253 257 288 257 291 394 366 400 +86 85 82 77 105 218 310 168 279 93 250 198 183 178 212 178 214 271 238 265 +63 61 61 56 87 194 243 91 188 64 179 124 124 114 150 114 152 190 153 178 +35 33 37 30 90 207 232 43 125 34 124 65 68 64 88 63 97 130 81 110 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 22 19 20 22 22 23 24 24 24 41 41 41 41 40 41 40 41 42 41 +42 43 37 40 42 44 48 51 50 48 82 83 81 82 81 82 81 83 84 84 +59 61 53 56 61 65 73 76 78 69 120 122 117 119 118 119 118 123 124 125 +69 70 64 65 73 81 93 92 97 80 146 145 140 141 142 141 142 150 150 151 +87 87 82 80 97 121 149 129 151 100 201 193 184 185 190 185 191 210 204 210 +53 52 50 48 58 66 71 62 68 56 109 105 104 103 106 103 106 111 108 110 +59 57 57 52 72 96 108 72 92 60 131 116 116 114 123 113 123 134 124 130 +30 29 29 27 39 52 55 33 43 30 64 55 56 54 60 54 60 64 58 62 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 17 15 16 17 17 18 18 18 18 32 32 32 32 32 32 32 32 32 32 +41 42 37 39 41 43 46 49 49 47 80 81 79 80 79 80 79 81 82 82 +53 55 48 50 55 58 63 66 66 61 107 108 104 106 105 106 105 109 110 110 +60 61 55 56 63 68 75 74 77 67 122 122 119 119 120 119 120 124 124 125 +43 43 39 39 45 47 49 47 49 45 84 83 82 82 83 82 83 85 84 85 +54 53 51 49 60 68 74 64 71 57 113 109 108 107 110 107 110 115 112 115 +36 35 34 32 41 46 48 40 44 37 73 70 70 69 72 69 72 74 72 73 +26 25 26 22 56 118 131 31 74 26 76 44 46 43 58 43 62 79 53 69 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 67 52 58 59 62 105 530 421 368 121 256 111 177 93 172 93 197 291 267 +127 140 111 124 128 142 425 1023 948 569 405 586 320 430 306 432 309 553 688 671 +170 180 152 162 177 212 724 1079 1164 445 628 726 464 556 489 558 494 791 871 891 +193 198 177 180 209 315 981 982 1253 264 777 756 538 595 608 597 615 933 933 995 +186 186 177 170 215 540 1070 730 1130 226 780 649 511 523 612 524 620 903 825 917 +144 140 143 128 184 542 829 383 735 160 577 416 369 350 459 351 466 643 540 623 +97 92 101 85 153 474 615 167 457 100 383 224 225 192 301 193 306 415 309 381 +49 43 57 40 157 382 431 65 223 46 214 96 102 94 145 93 162 225 129 187 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 +36 37 33 34 37 38 40 42 42 41 70 71 70 70 69 70 69 71 72 72 +27 27 24 25 27 27 28 28 28 28 50 50 50 50 50 50 50 50 50 50 +63 64 58 59 66 72 80 79 82 71 130 130 126 127 127 127 127 133 133 134 +51 50 47 47 54 57 61 58 60 54 101 100 98 98 99 98 99 102 101 102 +36 35 33 33 38 40 41 38 40 37 69 68 68 68 68 68 68 70 69 69 +66 65 65 59 83 114 130 83 110 68 151 132 132 129 141 129 141 155 142 150 +36 35 35 32 47 65 69 39 52 36 76 65 66 64 71 64 72 77 69 74 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +40 44 35 39 40 42 47 58 55 54 79 84 79 81 78 81 78 82 85 85 +68 73 61 66 69 74 89 110 107 94 143 151 139 144 138 144 138 149 156 155 +68 70 61 64 70 76 87 93 94 82 140 143 136 139 137 139 137 145 147 147 +58 59 53 54 61 65 71 70 72 64 117 117 114 115 115 115 115 119 119 120 +59 59 55 54 63 69 74 70 74 64 120 118 116 116 117 116 118 122 121 122 +53 52 50 48 58 65 70 62 67 56 109 105 104 104 106 104 106 111 108 110 +41 39 39 36 46 53 56 46 51 42 84 79 79 78 81 78 82 85 82 84 +24 23 23 21 29 34 35 26 30 24 49 45 46 45 47 45 48 50 47 48 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 21 18 19 21 21 22 23 22 23 39 39 39 39 39 39 39 39 39 39 +44 46 39 42 45 47 50 54 53 51 86 88 86 87 85 87 85 88 90 89 +52 53 47 49 53 56 60 62 63 59 103 104 101 102 101 102 101 104 105 105 +57 58 52 53 60 64 69 68 70 63 115 115 112 113 113 113 113 117 117 118 +47 47 43 43 50 52 55 53 54 50 93 92 91 91 92 91 92 94 93 94 +40 40 37 37 43 46 47 44 46 42 79 78 77 77 78 77 78 80 79 80 +18 17 16 16 18 19 19 18 18 18 33 33 33 33 33 33 33 33 33 33 +13 13 12 12 14 15 15 14 14 13 26 25 25 25 25 25 25 26 25 25 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 25 16 21 1 8 1 3 1 2 1 2 8 7 +83 94 72 82 82 86 142 818 643 572 180 395 167 272 132 263 132 299 450 410 +142 159 124 141 143 160 455 1106 1019 627 460 658 371 490 354 493 357 618 766 746 +190 202 170 183 197 237 772 1158 1241 493 701 808 529 628 554 630 560 874 961 981 +210 215 193 196 227 333 1027 1036 1314 286 842 823 595 654 666 656 674 1004 1006 1070 +209 209 199 191 241 609 1211 827 1281 254 898 750 592 607 707 608 716 1038 950 1054 +183 178 184 163 236 820 1284 558 1134 205 847 586 510 479 657 480 668 954 786 921 +138 128 150 118 242 972 1280 268 931 142 716 361 363 285 535 287 546 785 551 709 +102 95 105 88 312 786 882 113 433 100 414 171 174 170 265 170 308 435 238 357 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 2 2 2 2 2 30 20 25 2 10 2 5 2 3 2 4 11 8 +81 92 70 80 81 84 138 826 647 579 177 397 165 272 129 263 129 299 451 411 +152 165 134 147 153 166 462 1135 1044 645 473 677 383 506 365 508 368 635 787 766 +192 205 172 185 200 240 775 1164 1247 499 709 818 538 637 563 640 568 884 972 991 +208 213 191 194 225 328 1023 1034 1311 283 840 822 593 653 664 655 672 1002 1005 1068 +217 217 206 198 249 646 1302 885 1378 262 957 796 625 641 750 642 760 1109 1014 1126 +190 184 190 169 244 879 1383 593 1220 212 904 620 537 504 698 505 709 1019 837 984 +142 131 154 121 248 989 1300 271 944 146 734 373 375 295 550 298 561 803 566 726 +75 63 94 59 312 812 914 101 443 68 417 146 156 142 263 142 303 440 228 355 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 11 7 9 9 9 10 67 45 57 12 28 12 18 11 15 11 16 30 25 +76 89 65 76 74 78 127 636 501 453 165 329 157 236 129 230 129 255 370 340 +143 160 125 142 144 160 432 1039 955 599 454 639 373 484 357 486 359 600 739 720 +194 206 174 186 201 239 814 1237 1325 520 737 855 553 660 579 663 585 924 1019 1040 +221 227 203 207 239 348 1110 1124 1427 300 911 892 641 707 719 709 727 1089 1092 1161 +213 213 203 195 245 614 1221 835 1291 258 916 767 608 623 724 624 733 1057 969 1073 +173 168 176 154 228 585 869 425 773 195 667 503 456 437 548 438 554 734 628 713 +131 125 130 115 181 412 512 185 393 134 398 282 282 259 338 259 342 421 343 395 +60 61 54 55 83 129 139 64 96 62 125 100 103 98 114 98 115 128 108 120 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 11 7 8 9 9 10 80 53 68 12 31 12 19 11 16 11 16 34 28 +91 104 79 91 90 94 144 778 610 554 199 403 190 289 155 280 156 311 453 416 +147 168 129 148 147 167 377 832 767 504 435 577 375 459 363 460 365 546 653 638 +193 210 174 189 202 252 591 841 893 425 625 698 514 579 530 580 533 740 799 812 +219 228 204 207 242 353 795 804 987 324 764 752 596 637 644 638 649 877 879 923 +206 206 200 189 245 496 879 633 922 260 760 661 558 568 633 568 639 853 794 864 +187 180 191 166 247 665 997 477 884 210 750 559 504 482 611 482 619 828 705 804 +158 149 157 138 217 476 587 221 453 161 471 339 340 314 402 314 407 496 408 467 +73 67 75 62 128 229 250 84 155 71 198 137 143 135 168 135 174 202 158 184 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +8 9 6 7 7 7 9 54 36 46 10 23 10 15 10 13 10 13 25 21 +56 64 47 54 55 57 85 367 291 267 109 200 105 149 89 145 90 158 223 206 +87 96 77 85 88 97 192 400 370 251 222 287 195 233 190 234 190 272 321 314 +114 120 102 108 118 140 316 448 475 230 329 367 272 305 280 306 282 388 419 425 +141 145 129 132 152 214 516 522 646 195 474 466 363 390 395 391 398 548 550 578 +167 167 158 153 192 431 816 570 860 202 652 556 455 465 529 465 535 743 686 753 +181 176 181 162 231 766 1187 522 1048 201 811 572 503 475 638 475 648 908 755 878 +139 129 150 119 238 861 1121 248 815 142 669 362 365 296 513 299 522 727 524 660 +86 72 111 68 360 922 1034 114 495 77 484 167 181 163 311 163 355 509 268 412 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +24 25 21 23 24 25 26 27 27 27 45 46 45 46 45 46 45 46 47 46 +26 27 24 25 27 27 28 28 28 28 50 50 50 50 50 50 50 50 50 50 +34 34 31 32 35 36 36 36 36 36 65 65 64 64 64 64 64 65 65 65 +63 64 58 59 66 71 77 76 79 70 128 128 125 125 126 125 126 130 130 131 +62 62 57 57 66 72 77 73 77 67 126 124 122 122 123 122 123 128 127 128 +51 50 48 46 55 60 63 57 61 53 103 100 99 99 101 99 101 104 102 103 +57 55 56 51 68 84 91 67 81 58 124 114 114 112 119 112 119 126 119 124 +28 27 28 25 34 40 41 31 36 28 58 54 54 53 56 53 57 59 55 57 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +25 25 22 23 25 25 26 28 27 27 46 47 46 47 46 47 46 47 48 47 +72 77 63 70 72 77 92 112 109 98 149 158 146 151 145 151 145 156 162 161 +128 136 114 122 132 158 344 485 513 256 371 412 311 346 319 347 321 434 467 474 +97 99 88 89 104 141 280 283 341 132 273 269 220 233 235 233 236 309 310 323 +101 101 94 92 115 200 329 245 343 120 298 265 231 234 256 234 258 330 310 333 +94 92 90 84 115 235 332 180 297 102 279 223 208 201 238 201 240 301 265 294 +74 71 73 65 104 226 279 104 213 76 215 153 153 141 183 141 185 227 185 213 +36 35 36 32 46 58 61 40 49 36 77 68 70 68 74 68 74 78 72 76 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 12 8 9 9 9 11 82 53 70 12 34 13 21 12 18 12 17 36 30 +51 59 43 50 51 52 73 269 215 201 98 163 96 127 85 125 85 132 178 166 +79 87 69 76 80 87 150 284 264 190 183 225 166 190 162 191 163 215 248 243 +104 110 94 100 108 123 163 191 197 146 239 248 225 233 226 233 227 254 262 263 +180 186 166 169 195 277 714 726 902 252 656 646 497 536 542 537 547 762 765 806 +222 223 215 204 261 587 1103 773 1162 277 907 777 640 653 740 653 748 1029 953 1044 +183 178 182 164 231 792 1231 531 1083 202 841 591 520 490 661 490 671 942 781 910 +143 133 154 123 237 733 939 237 686 146 614 365 369 314 488 316 496 661 496 606 +87 77 105 71 257 580 642 111 330 81 367 174 189 170 271 169 292 381 239 324 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +8 10 6 8 8 8 9 41 28 36 11 21 11 15 11 14 11 13 22 19 +51 58 43 49 51 53 75 344 270 253 98 186 96 138 80 134 80 145 206 189 +101 111 88 98 101 111 229 503 462 313 271 357 238 288 230 288 231 337 401 391 +78 81 70 74 80 88 102 110 112 96 165 168 159 163 160 162 160 170 173 174 +74 75 65 67 78 109 290 295 368 99 235 231 171 187 189 187 191 279 280 297 +81 81 76 74 88 101 116 105 116 90 176 171 166 166 170 166 170 180 177 181 +65 63 61 58 71 81 89 76 85 68 136 130 129 128 132 128 132 138 134 137 +50 48 48 45 57 66 70 57 64 51 104 98 98 97 101 97 101 106 101 104 +24 23 23 21 28 31 31 26 28 24 48 46 46 45 47 45 47 49 47 48 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 5 4 5 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 +38 41 34 37 38 39 43 49 47 47 74 77 74 75 73 75 73 76 78 77 +73 78 64 71 73 78 92 112 109 98 151 160 148 153 147 153 148 158 164 163 +55 56 50 52 56 59 63 65 65 62 109 110 107 108 107 108 107 110 111 111 +81 82 74 75 85 94 108 107 113 93 171 171 165 166 167 166 167 176 176 178 +80 80 75 74 87 100 113 104 114 89 174 169 164 165 168 165 168 178 175 178 +60 59 57 55 66 74 79 70 76 63 124 120 119 118 121 118 121 126 123 125 +49 47 47 43 55 63 66 54 61 49 100 95 95 94 97 94 97 101 97 100 +31 30 31 28 38 44 45 34 39 31 65 59 60 59 62 59 63 65 61 63 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 9 8 8 9 9 9 9 9 9 16 16 16 16 16 16 16 16 16 16 +63 74 54 63 62 65 89 319 254 242 130 207 129 165 115 162 115 170 224 209 +116 130 102 115 117 128 260 568 520 358 320 416 283 339 273 340 274 392 465 454 +191 203 171 183 197 233 666 1009 1068 465 672 770 533 618 551 620 556 818 896 910 +235 241 215 219 252 350 1055 1079 1354 314 935 921 686 748 757 750 765 1100 1106 1168 +235 235 223 215 268 641 1252 862 1320 281 997 846 686 701 803 702 813 1139 1050 1155 +208 202 208 186 264 869 1336 581 1174 230 947 676 601 568 753 568 764 1054 880 1019 +160 149 175 137 280 992 1278 268 918 164 789 435 443 362 613 365 624 854 620 776 +102 86 138 81 412 1009 1120 133 526 92 562 196 226 192 383 192 424 586 324 480 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 7 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 +45 48 39 44 44 46 50 61 57 58 87 92 87 89 86 89 86 89 93 92 +77 85 67 75 77 84 146 282 260 189 178 222 162 187 158 187 158 211 244 239 +151 161 135 145 156 187 428 619 652 319 468 524 390 438 400 439 402 551 595 603 +206 214 191 195 225 316 673 685 832 297 687 679 551 585 589 586 593 779 782 817 +173 172 157 158 184 281 431 331 447 190 449 412 374 377 401 377 403 485 462 489 +135 135 137 132 142 192 232 168 218 137 486 462 456 453 469 453 470 495 480 492 +126 126 116 115 160 274 326 155 256 128 302 243 244 234 271 233 273 314 272 300 +106 92 134 86 328 735 810 135 406 97 468 212 238 208 349 207 373 485 303 411 +35 26 43 25 128 221 213 36 63 26 115 64 69 64 84 64 93 113 69 84 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 7 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 +41 44 36 40 41 42 46 53 51 51 80 83 80 81 79 81 79 82 84 84 +75 84 66 73 76 83 143 277 255 186 175 218 159 183 155 184 155 207 239 234 +98 104 89 95 101 114 143 163 167 132 220 227 210 216 211 216 211 231 237 238 +110 113 102 104 118 141 182 183 201 139 260 259 241 245 246 245 246 273 273 278 +159 159 151 146 183 358 630 454 660 192 560 491 419 425 471 426 476 625 584 633 +86 84 82 76 106 218 306 164 273 93 255 203 189 183 217 183 220 276 242 269 +112 106 117 98 176 459 574 167 422 114 413 268 271 239 341 241 345 440 343 407 +65 59 74 55 151 303 330 78 179 62 219 122 134 120 176 120 184 226 157 197 +27 18 37 18 104 180 173 28 54 18 97 51 58 51 73 51 79 96 58 72 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 7 4 5 5 5 6 60 38 52 6 24 7 14 6 12 6 11 25 20 +54 62 46 52 53 55 75 360 279 268 106 199 106 150 88 147 88 155 220 202 +79 87 69 77 80 87 168 367 335 234 201 263 178 214 172 214 173 247 294 286 +99 105 90 95 102 115 144 164 168 133 222 229 212 218 213 218 213 233 239 240 +111 114 102 104 118 142 182 183 201 139 261 260 242 246 247 246 248 274 274 279 +112 112 106 103 125 161 203 174 206 130 271 258 245 246 254 246 255 283 275 284 +166 162 166 149 212 583 869 402 765 183 670 500 455 434 549 435 556 736 627 713 +173 160 192 148 303 995 1269 279 910 176 822 473 483 403 650 407 661 885 654 807 +106 90 143 84 371 851 936 137 451 95 519 210 245 205 378 205 407 538 322 450 +36 26 47 25 159 282 270 37 71 25 136 67 74 67 95 67 107 133 74 94 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +20 27 16 21 19 19 22 231 145 202 24 92 26 56 23 45 23 41 98 79 +103 118 88 103 101 105 140 818 627 605 241 462 241 346 195 338 195 356 510 467 +169 190 147 168 169 186 455 1153 1041 695 553 769 474 600 451 602 454 713 874 848 +221 234 197 212 228 266 807 1251 1320 566 828 954 654 763 676 765 681 1011 1112 1128 +247 253 226 231 265 361 1092 1121 1403 327 994 981 737 802 810 804 818 1165 1171 1236 +249 248 235 227 282 669 1301 894 1371 294 1061 904 739 754 861 755 870 1208 1115 1224 +221 215 220 197 278 914 1396 601 1221 242 1013 727 651 616 811 616 823 1124 940 1086 +171 159 188 147 302 1049 1340 271 953 174 848 474 486 400 664 404 676 914 667 831 +107 92 148 86 417 987 1086 136 503 97 572 203 247 199 406 199 440 593 338 489 +89 181 23 146 161 308 293 83 44 196 112 117 91 115 78 115 95 110 92 81 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +24 33 20 25 24 24 26 292 181 255 28 115 31 69 28 56 28 50 123 99 +105 120 90 104 103 107 141 896 683 662 251 497 252 369 201 360 200 379 550 502 +134 147 118 130 135 145 362 950 856 568 437 617 372 476 352 478 354 570 703 681 +116 121 102 108 119 137 419 653 690 294 413 479 323 379 334 380 337 508 561 569 +192 196 175 178 205 279 819 840 1050 255 749 739 559 607 613 608 618 876 881 928 +222 222 210 203 252 578 1107 764 1164 263 918 786 648 660 750 661 758 1041 963 1055 +87 85 84 78 100 123 140 112 132 93 196 184 181 179 188 179 188 201 193 200 +118 111 124 103 186 476 592 172 433 120 435 284 289 256 360 257 365 461 361 427 +60 56 69 51 144 290 315 71 166 58 206 110 123 108 164 108 172 211 145 184 +22 18 27 17 76 130 124 22 40 18 73 40 45 40 56 40 61 72 45 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 9 8 9 9 9 9 10 9 10 17 17 17 17 17 17 17 17 17 17 +46 49 40 44 45 46 51 60 57 57 88 93 88 90 87 90 87 90 94 93 +91 100 81 90 91 99 122 160 153 135 197 212 191 200 190 200 190 208 219 217 +62 63 56 58 63 66 71 73 74 69 122 124 120 122 121 121 121 124 125 125 +124 127 114 116 132 162 218 220 245 159 301 300 276 282 283 282 284 319 320 326 +70 70 65 64 74 81 87 82 87 75 143 141 138 138 140 138 140 145 144 145 +107 105 105 97 127 173 209 151 193 115 261 237 231 228 244 228 245 270 254 267 +88 85 88 78 112 156 176 109 146 90 207 180 181 176 194 176 195 212 194 206 +30 28 29 26 34 38 39 31 35 29 60 56 57 56 58 56 58 60 57 59 +9 8 9 8 11 13 13 9 11 9 18 16 17 16 18 16 18 18 17 18 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +26 27 23 25 26 27 28 29 28 29 49 50 49 50 49 50 49 50 50 50 +70 75 62 68 71 75 85 99 96 90 144 150 141 145 141 145 141 148 153 152 +99 104 89 95 102 113 139 156 159 130 218 225 209 215 210 215 211 228 234 234 +106 109 98 100 113 132 163 163 176 130 244 243 229 233 233 233 233 254 254 258 +93 93 87 85 102 119 137 123 137 104 206 200 194 194 198 194 199 212 208 212 +108 106 106 98 129 175 211 152 194 116 264 239 233 231 247 230 248 273 257 270 +58 55 56 51 66 76 81 65 74 58 121 113 114 112 117 112 117 122 117 120 +34 32 33 30 40 46 47 36 41 33 69 64 65 64 67 64 68 70 66 68 +11 10 11 9 14 16 16 11 13 10 22 19 20 19 21 19 21 21 20 21 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 +32 33 29 31 32 33 34 37 36 36 61 62 61 62 61 62 61 62 63 62 +73 81 63 71 73 80 137 272 248 184 169 213 154 179 150 179 150 200 233 228 +223 242 200 218 231 278 682 1020 1069 514 772 871 641 725 657 726 661 912 992 1003 +245 254 227 231 267 370 908 931 1144 345 912 902 715 765 770 766 776 1045 1050 1100 +263 263 249 241 299 641 1186 828 1242 311 1036 898 755 767 861 767 869 1163 1081 1177 +242 234 242 216 305 917 1372 604 1197 265 1054 776 706 671 860 671 871 1158 980 1120 +190 176 211 163 339 1118 1413 285 996 192 929 534 550 460 739 464 750 997 736 908 +121 103 174 97 466 1070 1166 151 529 109 641 229 295 224 472 224 502 662 386 548 +75 92 49 84 255 446 422 76 73 97 190 115 105 114 122 114 151 185 106 121 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +29 43 25 33 30 30 33 356 218 315 36 148 43 94 35 78 35 66 157 126 +72 85 61 72 71 73 95 430 331 329 156 266 157 209 132 207 132 211 289 267 +166 186 145 165 166 181 422 1091 978 669 545 753 475 594 451 596 454 695 849 822 +235 250 210 226 242 281 792 1227 1288 578 863 987 698 804 717 806 723 1038 1138 1152 +263 269 241 246 281 374 1066 1095 1361 344 1024 1013 781 843 850 845 857 1187 1194 1255 +264 263 249 241 298 671 1267 874 1328 310 1088 937 781 795 898 795 907 1227 1137 1242 +236 229 235 210 295 910 1365 592 1188 257 1043 765 695 660 850 660 861 1147 969 1109 +185 172 206 159 328 1052 1324 274 933 187 885 517 533 449 708 452 719 948 704 864 +121 103 172 97 449 1012 1100 150 501 108 619 232 296 224 463 224 489 638 379 531 +73 81 56 74 261 452 427 73 77 84 200 114 107 114 129 114 159 194 108 127 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +39 61 34 48 40 40 44 573 347 508 50 236 62 148 49 122 49 99 250 200 +130 150 112 131 127 132 162 1067 805 802 330 624 334 473 264 467 263 477 683 624 +191 214 167 190 191 208 496 1308 1170 800 651 903 566 711 537 714 540 832 1018 986 +245 260 220 235 253 292 842 1313 1378 613 920 1055 743 857 763 860 769 1109 1216 1231 +278 285 255 260 297 393 1140 1172 1459 361 1099 1087 837 904 912 906 919 1274 1282 1347 +279 279 264 255 315 716 1357 933 1422 326 1167 1005 837 852 963 852 973 1317 1220 1332 +249 241 248 222 311 978 1467 628 1274 271 1122 820 746 707 913 707 925 1233 1040 1192 +195 181 218 168 350 1136 1429 286 1001 197 954 553 572 481 762 484 774 1021 756 930 +128 109 187 102 489 1103 1196 158 537 115 673 247 321 237 504 237 531 693 409 575 +83 97 58 88 297 516 486 83 82 101 224 127 117 126 142 126 178 218 119 140 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +30 41 25 33 29 30 34 218 139 196 39 105 45 75 38 67 38 57 110 92 +55 60 48 54 54 56 63 78 73 73 109 116 109 112 107 112 107 112 117 116 +68 72 60 65 68 71 79 90 88 83 136 141 135 137 134 137 134 140 144 143 +90 94 82 87 93 101 118 128 130 112 193 197 187 191 187 191 188 199 203 203 +100 102 92 94 106 120 142 142 151 119 222 221 211 214 214 214 214 229 230 232 +75 75 70 69 80 88 95 89 94 81 155 152 150 150 152 150 152 157 156 157 +69 68 65 63 76 84 90 79 86 72 143 138 137 136 140 136 140 145 142 144 +62 59 60 55 71 82 87 69 79 63 130 122 122 121 126 121 126 131 126 130 +39 37 39 34 47 54 55 42 48 38 81 74 76 74 79 74 79 81 77 79 +17 16 17 15 23 29 28 17 21 16 35 30 31 30 33 30 34 35 31 33 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +40 61 34 49 39 39 44 481 292 430 53 212 67 141 52 120 52 96 223 181 +110 133 94 113 107 112 146 837 632 636 281 508 284 391 228 389 228 392 553 507 +177 199 155 177 177 193 428 1096 980 684 579 787 511 630 486 632 488 727 881 854 +235 250 211 226 243 279 772 1198 1255 572 864 987 706 809 723 811 729 1034 1132 1145 +266 272 244 248 284 374 1042 1071 1328 345 1028 1017 793 853 860 855 866 1186 1193 1251 +281 281 265 257 316 711 1336 918 1397 327 1168 1008 846 859 969 859 978 1314 1219 1329 +251 243 249 224 312 968 1443 616 1250 272 1121 824 753 714 918 714 929 1230 1039 1188 +198 184 222 170 356 1127 1409 282 982 199 957 562 582 494 770 496 781 1022 760 931 +131 112 193 105 494 1095 1181 160 525 117 679 257 337 241 518 240 540 697 417 580 +76 76 70 70 337 586 549 76 92 77 255 121 119 121 158 121 200 247 119 153 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +22 23 19 21 21 21 23 25 24 25 40 42 41 41 40 41 40 41 42 41 +55 59 48 54 54 56 61 75 70 71 107 113 107 110 106 110 106 110 115 113 +65 68 58 63 66 68 75 83 82 78 130 134 128 131 128 131 128 133 136 135 +74 76 66 70 75 80 87 91 92 85 148 151 146 148 146 147 146 151 153 153 +172 174 157 160 181 231 362 367 427 224 446 444 392 406 407 406 409 484 485 500 +176 175 163 161 192 288 425 328 437 198 471 433 397 400 424 400 427 505 482 508 +174 169 175 156 222 557 801 375 697 189 673 518 481 461 567 461 573 730 629 708 +192 178 215 165 342 1047 1303 270 907 193 901 537 557 477 729 478 740 960 719 876 +134 114 199 108 501 1102 1185 162 523 120 689 266 349 246 531 246 550 707 424 589 +77 75 74 69 360 625 583 77 96 76 271 123 122 123 167 123 213 262 122 160 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +43 67 36 54 42 42 48 503 304 453 58 229 78 156 57 136 57 105 240 195 +123 150 105 128 119 125 163 941 707 719 326 581 329 451 263 450 263 449 632 578 +182 210 158 185 181 200 388 894 802 584 552 714 501 593 482 594 484 666 787 765 +170 180 152 164 175 203 398 568 590 324 497 548 434 475 441 476 443 567 607 612 +169 173 155 158 181 239 433 441 524 230 497 493 420 439 442 440 444 549 551 571 +174 174 166 159 200 381 649 465 674 208 619 547 476 482 531 482 535 684 641 691 +206 199 210 183 267 629 891 431 777 225 779 608 569 547 662 547 669 840 730 816 +132 125 143 115 218 572 702 180 497 133 522 336 346 306 434 306 439 551 428 508 +83 75 100 70 193 360 383 96 201 78 279 160 184 154 235 154 239 284 203 250 +38 30 50 28 169 286 267 38 67 30 147 66 77 68 105 67 120 143 75 99 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 15 13 14 15 15 15 16 16 16 28 28 28 28 28 28 28 28 28 28 +55 60 48 54 54 56 62 74 70 71 108 114 108 111 107 111 107 111 116 114 +103 116 90 103 103 112 180 349 317 245 254 309 237 268 230 268 231 292 334 327 +240 254 214 230 247 284 695 1055 1101 535 821 926 688 775 702 777 707 964 1048 1058 +289 296 265 270 308 398 1009 1035 1272 371 1048 1038 831 886 892 888 898 1194 1200 1254 +302 301 285 276 338 709 1284 891 1336 349 1178 1028 879 890 993 890 1002 1314 1224 1327 +267 258 266 238 332 948 1386 606 1198 288 1130 848 784 746 939 746 950 1230 1049 1189 +211 196 239 181 382 1163 1440 292 995 212 1008 603 627 539 819 539 830 1072 803 978 +142 121 215 114 528 1140 1220 171 533 127 726 290 384 264 571 264 584 743 452 621 +86 84 83 78 411 708 657 86 105 86 311 137 136 137 191 137 245 299 136 181 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 84 44 68 50 51 57 616 369 558 72 288 103 201 71 178 71 133 301 246 +147 171 126 149 143 149 181 1106 827 851 393 694 396 541 312 543 311 536 751 688 +208 234 181 208 207 225 499 1326 1177 833 712 970 632 779 600 781 603 892 1083 1048 +265 281 237 254 273 311 845 1318 1378 637 984 1121 812 926 831 929 836 1170 1279 1291 +302 308 276 281 321 414 1142 1173 1452 383 1165 1153 910 975 982 977 989 1336 1343 1407 +303 302 285 277 339 739 1360 933 1414 349 1233 1071 910 923 1034 922 1044 1379 1281 1392 +268 260 266 239 331 998 1468 623 1263 289 1181 878 810 769 977 769 988 1288 1093 1244 +194 180 218 167 344 990 1218 265 844 194 875 537 558 485 718 485 728 928 704 849 +132 114 195 107 459 967 1031 157 457 119 634 271 353 247 507 246 516 648 404 545 +80 75 82 70 398 683 632 80 103 76 305 130 132 130 188 130 241 293 131 177 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +51 80 43 65 50 50 57 503 304 458 75 250 102 181 74 164 73 125 260 216 +143 167 122 146 139 144 176 1015 759 785 377 652 382 513 304 515 304 507 704 646 +199 224 174 199 199 216 464 1219 1081 772 671 907 599 733 570 735 572 835 1009 977 +253 268 226 243 260 297 781 1213 1266 595 922 1047 766 870 783 872 788 1091 1191 1202 +287 293 263 268 305 395 1056 1084 1339 366 1092 1081 859 918 925 920 931 1248 1255 1312 +289 288 272 264 323 690 1255 864 1303 332 1154 1005 859 870 972 870 981 1287 1197 1299 +258 250 256 230 319 931 1358 582 1168 278 1110 831 770 732 923 732 934 1208 1028 1167 +207 192 235 178 368 1023 1252 284 868 207 920 574 597 522 760 522 770 974 744 893 +149 125 220 118 495 1015 1078 178 488 131 691 314 399 287 560 286 569 705 451 597 +65 46 93 44 414 718 660 62 118 45 323 112 131 115 205 115 254 310 127 189 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 18 16 17 17 18 18 19 19 19 33 33 33 33 33 33 33 33 33 33 +37 38 33 35 37 38 39 42 41 41 70 71 70 71 70 71 70 71 72 71 +54 56 48 51 54 56 59 62 61 61 104 106 104 105 103 105 103 106 107 107 +70 72 63 66 72 75 80 83 83 79 139 140 137 138 137 138 137 141 142 142 +107 109 98 100 113 128 150 149 158 126 237 236 226 228 229 228 229 244 244 247 +130 129 124 119 146 188 236 200 238 150 322 306 292 293 303 293 304 336 327 337 +124 120 122 111 149 205 245 173 224 132 309 279 273 269 289 269 290 320 300 315 +155 148 163 137 233 482 571 199 416 156 497 360 370 341 433 341 437 518 426 485 +90 81 110 75 209 381 400 102 208 84 301 177 204 169 257 169 261 306 221 269 +41 35 50 32 149 241 223 40 63 35 139 71 81 72 106 72 118 135 78 100 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +57 94 49 76 55 56 63 605 361 554 86 301 122 220 80 198 80 148 312 258 +149 175 128 153 145 151 183 1045 778 813 400 684 406 541 325 544 325 533 736 676 +209 235 182 209 208 226 473 1247 1104 796 704 947 633 769 602 772 604 871 1050 1017 +251 265 224 240 258 294 738 1139 1186 572 893 1010 750 846 765 848 769 1049 1142 1152 +266 272 243 248 283 365 911 933 1145 341 970 961 775 825 830 827 836 1100 1106 1154 +269 268 254 246 302 613 1081 751 1118 310 1026 901 779 788 875 788 882 1137 1061 1147 +201 194 203 179 256 663 946 426 813 217 813 624 584 558 687 558 694 879 756 850 +145 136 159 125 239 552 662 195 469 145 535 363 376 339 456 339 461 561 446 520 +113 101 151 94 314 609 641 129 304 104 444 230 279 214 370 214 375 451 306 389 +64 47 92 45 397 679 620 61 114 46 313 110 130 112 203 112 249 299 124 186 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 27 22 24 25 25 26 29 28 29 47 49 47 48 47 48 47 48 49 48 +91 111 78 95 89 92 117 314 249 259 197 267 199 231 182 232 182 229 280 264 +152 173 133 153 152 165 305 721 642 479 457 590 419 493 402 495 404 548 647 628 +240 255 215 231 247 282 681 1042 1084 534 836 942 707 794 720 796 725 977 1061 1070 +305 311 279 284 324 409 954 976 1188 384 1050 1040 854 904 909 905 915 1180 1186 1234 +321 320 302 293 358 673 1140 807 1175 366 1131 1004 882 891 978 890 986 1242 1166 1252 +270 259 277 239 351 909 1291 581 1109 294 1126 864 811 774 953 774 962 1215 1046 1175 +192 183 201 169 287 574 675 244 493 193 605 445 457 423 531 423 536 628 521 590 +136 118 178 110 339 620 649 158 332 122 495 286 334 272 422 271 428 501 359 440 +30 28 31 26 43 54 51 30 36 29 61 52 55 52 59 52 59 61 54 57 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +26 27 23 25 25 26 27 30 28 30 48 50 48 49 48 49 48 49 50 49 +94 115 80 98 92 95 121 482 366 385 225 348 229 287 196 287 196 282 371 344 +205 230 179 204 204 221 457 1228 1083 786 699 940 630 765 599 768 601 863 1041 1007 +286 301 255 273 294 331 851 1326 1380 660 1046 1184 879 992 895 994 901 1229 1339 1350 +324 330 296 302 343 435 1144 1172 1445 403 1225 1212 975 1039 1046 1041 1053 1391 1398 1460 +314 313 295 287 350 718 1272 875 1313 357 1218 1068 925 935 1039 935 1047 1348 1257 1359 +278 270 275 249 341 1010 1460 608 1245 297 1218 913 852 809 1018 809 1029 1321 1124 1274 +209 194 239 180 376 1024 1239 278 845 208 930 583 611 534 773 534 783 980 750 897 +91 83 114 77 215 388 405 103 207 85 308 180 210 171 264 171 267 311 225 274 +50 42 63 39 212 346 315 48 77 42 186 85 98 86 136 86 156 179 93 126 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +74 128 63 104 71 72 80 795 468 734 122 409 174 304 105 280 105 204 423 350 +169 200 145 176 165 171 206 1172 868 921 466 788 476 629 382 631 383 615 845 776 +220 248 192 221 220 237 478 1269 1119 819 744 992 675 813 642 816 644 913 1095 1060 +294 310 263 281 302 340 863 1344 1397 672 1073 1213 904 1019 921 1021 927 1257 1368 1380 +336 342 306 312 355 447 1161 1188 1463 414 1257 1244 1005 1069 1077 1072 1083 1424 1430 1493 +337 335 316 308 373 776 1380 944 1423 381 1323 1159 1004 1014 1128 1014 1138 1465 1366 1476 +309 300 307 276 379 1014 1438 628 1229 330 1253 961 903 862 1062 861 1072 1350 1162 1305 +237 219 275 203 438 1230 1489 313 1005 235 1106 683 718 624 916 623 928 1167 885 1065 +169 142 261 135 583 1170 1224 197 532 148 804 367 473 327 657 326 668 816 522 690 +87 62 129 60 497 830 750 82 149 60 406 150 181 153 277 153 330 388 168 251 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +77 133 65 108 73 74 83 796 468 738 128 417 182 312 109 290 109 210 430 356 +151 186 128 161 146 151 192 1109 817 871 431 739 442 587 354 589 354 573 793 726 +233 261 203 233 232 250 505 1362 1199 879 799 1068 725 875 690 878 692 981 1178 1140 +296 312 265 283 304 341 857 1334 1386 671 1076 1215 910 1023 926 1026 932 1259 1369 1380 +336 342 306 312 355 446 1150 1176 1447 413 1255 1242 1007 1070 1078 1072 1084 1419 1426 1487 +180 179 172 165 205 361 580 418 594 210 604 541 484 488 530 488 534 658 620 662 +131 127 130 117 158 218 260 181 236 139 330 297 291 287 308 286 310 341 320 336 +167 156 190 145 294 734 879 220 602 166 690 449 470 416 582 416 589 724 563 665 +83 79 86 73 120 164 168 89 120 81 190 157 164 156 178 156 179 191 168 181 +41 40 42 36 65 85 79 41 50 41 85 69 74 69 80 69 81 84 72 78 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 17 15 16 17 17 17 17 17 18 31 31 31 31 31 31 31 31 31 31 +44 45 38 41 43 44 46 50 48 49 82 85 82 83 82 83 82 83 85 84 +105 115 92 104 104 112 134 170 162 149 226 241 222 230 220 230 220 236 248 246 +170 182 152 165 175 203 353 489 504 304 478 520 429 462 434 463 435 533 567 570 +118 121 110 112 126 144 171 171 182 142 269 268 255 259 259 259 260 279 279 282 +191 189 178 174 211 314 454 347 461 215 526 484 448 450 477 450 480 561 535 563 +151 147 150 136 185 278 344 219 306 160 401 351 343 336 368 336 370 417 385 409 +136 128 152 119 229 521 617 178 429 136 506 343 358 322 433 322 438 529 420 489 +126 112 171 104 344 640 663 142 314 115 485 263 317 244 411 244 416 490 340 425 +50 43 64 40 212 342 308 48 75 43 186 84 98 85 138 85 157 178 92 126 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +69 111 57 88 64 65 75 471 287 442 119 281 151 222 107 213 106 166 288 246 +149 190 126 163 143 149 194 783 589 631 392 596 400 496 345 497 345 485 632 587 +206 240 179 213 204 225 385 852 759 588 612 766 572 656 551 657 552 715 828 806 +237 251 212 229 244 279 507 718 740 431 693 757 618 669 625 670 628 777 828 833 +197 202 181 185 211 278 485 492 581 267 592 587 508 529 532 530 534 648 650 672 +238 237 230 217 276 486 768 555 784 283 817 732 657 661 719 661 723 887 836 892 +181 176 181 162 227 419 550 297 478 192 561 465 448 434 499 434 502 592 529 576 +130 125 133 115 176 262 293 158 230 130 327 272 277 266 302 266 304 335 297 321 +114 113 114 103 182 275 281 120 179 116 273 209 223 208 250 207 252 274 229 254 +57 58 55 52 104 143 132 57 68 61 123 93 101 94 113 93 115 121 98 109 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +65 109 55 87 62 63 71 515 307 483 114 296 151 230 98 221 98 166 303 256 +110 136 93 116 107 110 139 596 445 480 276 433 283 356 240 357 240 347 460 425 +55 56 49 51 55 56 59 61 60 60 104 106 104 105 104 105 104 105 107 106 +98 101 88 93 100 107 121 130 131 117 205 209 200 203 200 203 200 210 213 214 +63 63 57 58 64 66 69 68 69 66 121 121 120 120 120 120 120 122 122 122 +191 190 182 174 219 404 658 465 671 224 678 603 537 540 591 540 595 740 694 744 +275 267 273 246 337 892 1249 536 1058 292 1113 857 812 773 949 773 958 1195 1029 1153 +222 206 259 191 405 1033 1228 287 825 220 965 619 653 575 813 574 823 1011 781 926 +152 131 228 124 487 936 966 171 422 136 670 328 414 295 558 294 566 676 446 576 +57 48 73 45 192 295 266 54 82 48 186 97 114 99 149 99 162 179 107 137 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +58 94 48 74 55 55 63 382 232 361 97 228 124 181 86 176 85 135 233 199 +139 176 118 151 134 140 178 745 557 602 363 560 372 464 319 465 319 452 593 549 +194 219 169 195 193 208 373 932 821 625 609 787 563 661 539 663 541 727 857 832 +260 274 232 249 267 301 673 1023 1058 545 886 989 765 848 776 850 780 1019 1101 1108 +230 236 212 216 247 330 742 755 921 308 847 839 694 733 738 734 742 949 953 991 +136 135 130 124 157 261 397 291 403 160 426 384 348 350 378 350 380 460 435 462 +177 171 179 157 226 506 689 324 587 189 646 511 489 469 560 469 565 689 601 667 +113 107 121 98 174 323 372 143 268 112 342 254 263 243 303 243 306 354 294 332 +100 90 127 84 235 409 418 110 212 93 333 200 234 190 289 190 293 336 245 296 +81 61 119 58 407 656 583 74 129 59 345 135 169 139 251 139 288 328 153 224 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +54 77 45 61 51 52 59 191 129 183 92 147 103 127 88 125 87 108 149 134 +110 136 94 117 106 110 138 356 281 300 244 324 248 285 229 285 229 279 337 319 +164 187 144 166 164 176 277 575 514 409 448 547 423 477 410 478 411 513 586 571 +180 192 161 174 185 214 401 575 592 340 547 600 485 528 491 528 493 615 657 661 +162 166 149 152 174 231 405 410 485 221 493 489 423 440 443 440 445 541 542 560 +267 266 258 244 310 584 958 669 975 315 1000 888 791 795 872 795 878 1091 1023 1096 +306 297 303 273 373 888 1213 548 1030 324 1138 897 857 821 986 821 994 1213 1057 1173 +234 215 280 199 433 1039 1224 308 821 230 1001 657 693 615 851 615 861 1045 815 960 +178 152 281 144 609 1171 1200 200 506 156 830 396 508 351 690 350 700 836 544 708 +93 68 138 65 442 703 624 84 146 65 384 157 196 161 286 161 324 366 178 256 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +36 38 31 34 35 35 37 42 40 43 66 69 67 68 66 68 66 67 69 69 +79 88 68 79 76 79 89 115 106 109 157 170 158 164 155 164 155 163 172 169 +36 36 32 34 37 37 37 37 37 38 67 68 67 68 67 68 67 68 68 68 +38 38 35 35 39 39 40 39 39 40 72 72 71 71 71 71 71 72 72 72 +43 43 39 40 44 45 45 45 45 45 81 81 81 81 81 81 81 82 82 82 +104 104 98 96 113 127 140 129 139 114 225 220 215 215 219 215 219 230 226 230 +96 94 93 87 108 125 135 113 127 101 209 199 197 196 203 196 203 212 205 210 +80 76 79 71 93 108 113 88 101 80 170 159 160 157 165 157 166 172 164 169 +63 58 64 54 79 93 94 66 77 60 133 119 123 119 128 119 129 133 124 129 +48 45 50 41 74 94 88 46 56 46 99 80 86 81 94 81 95 98 84 91 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +47 68 38 53 45 45 51 177 116 170 76 128 87 109 71 108 71 91 130 116 +100 126 85 107 97 100 126 414 315 343 235 338 241 288 215 289 215 281 355 332 +121 139 105 123 120 130 197 385 345 281 309 373 294 328 285 329 286 351 398 388 +134 143 121 131 138 155 194 226 229 184 313 325 299 309 301 309 301 329 338 339 +138 142 129 131 148 175 217 217 236 172 333 331 311 317 317 317 318 347 347 353 +134 134 129 122 156 259 392 286 396 158 425 383 348 349 377 349 380 458 432 460 +131 126 131 117 158 207 240 174 218 138 323 294 290 285 305 285 306 332 313 327 +72 69 70 64 82 92 95 78 87 72 149 141 142 140 145 140 145 150 144 148 +51 48 50 44 59 66 66 52 58 49 102 95 97 95 100 95 100 102 97 100 +20 19 19 17 23 24 24 20 21 19 38 36 37 36 38 36 38 38 37 37 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 12 5 7 5 5 6 41 19 46 7 20 8 14 7 11 7 8 19 14 +77 136 64 107 72 73 83 564 333 538 144 344 189 273 121 270 119 201 350 298 +162 206 137 179 156 162 202 1018 744 824 465 749 482 614 404 616 404 591 793 730 +228 257 200 229 228 244 435 1143 999 767 756 980 702 825 671 827 672 902 1066 1033 +249 263 222 238 255 287 616 929 958 507 838 931 731 806 741 807 744 956 1030 1036 +199 204 183 186 214 283 572 579 698 266 681 674 571 598 602 599 605 755 757 785 +180 179 173 164 208 361 560 400 566 211 606 543 491 493 536 493 539 655 617 657 +223 214 227 198 285 694 945 414 793 237 887 692 664 633 766 633 772 945 819 912 +236 219 282 204 439 1060 1239 296 815 232 1013 660 701 619 862 619 872 1055 820 966 +179 154 287 145 617 1164 1180 197 488 158 832 401 517 357 696 356 706 836 545 708 +100 75 161 72 589 941 823 90 159 72 477 162 218 168 345 167 397 450 189 298 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 3 0 1 0 0 0 16 6 19 0 6 1 3 0 2 0 0 6 3 +108 192 91 155 102 103 115 808 474 773 216 506 284 405 181 402 178 300 515 439 +200 258 168 225 190 199 251 1122 826 916 563 869 581 724 499 726 499 698 917 849 +254 298 220 264 250 276 454 1020 902 717 774 962 730 832 704 834 705 896 1034 1006 +197 207 177 189 202 228 349 465 475 313 512 549 472 500 476 501 477 559 588 590 +213 215 194 197 223 286 455 457 535 275 590 585 519 536 539 537 541 637 639 657 +202 200 190 184 225 336 478 361 480 227 570 524 488 489 519 489 522 606 577 607 +194 190 190 175 237 393 497 282 430 201 545 464 453 441 495 440 498 569 516 555 +171 168 175 155 242 400 450 201 332 173 465 370 381 360 424 359 426 476 412 452 +129 128 133 118 215 325 327 133 200 131 332 252 272 252 305 252 307 332 277 307 +63 63 64 59 97 123 114 62 71 65 153 129 137 130 147 130 147 151 134 142 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +27 28 24 26 27 27 28 29 29 30 50 51 51 51 50 51 50 51 51 51 +51 53 45 48 50 51 53 58 56 57 96 99 96 97 96 97 96 97 99 98 +70 72 62 66 70 72 77 82 81 80 136 139 135 137 135 137 135 138 140 140 +83 85 75 78 85 88 94 98 98 93 165 167 163 165 163 165 163 168 169 169 +90 91 83 84 94 99 107 106 108 99 183 183 179 180 180 180 180 186 186 187 +51 51 47 47 53 54 55 53 54 53 97 97 97 97 97 97 97 98 97 98 +101 98 97 91 114 131 141 118 133 105 219 208 207 205 212 205 213 222 215 220 +124 117 130 108 166 229 248 147 199 123 307 262 268 258 287 258 289 311 282 300 +60 56 60 52 72 83 83 62 71 57 123 113 116 113 120 113 120 123 116 120 +29 27 29 25 35 39 38 28 31 27 56 51 53 52 55 52 55 56 53 54 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 12 5 8 6 6 7 25 14 28 9 17 10 14 9 12 9 10 16 13 +61 89 50 71 57 58 66 210 140 205 106 168 120 146 101 146 101 124 169 153 +152 197 128 170 145 151 191 707 528 587 400 585 412 498 364 499 365 481 613 572 +222 252 194 225 221 236 354 718 639 523 604 725 576 642 559 642 559 682 771 753 +265 281 237 256 272 310 545 770 789 473 789 858 711 766 718 767 721 876 931 935 +396 399 359 366 414 488 965 971 1161 458 1212 1200 1039 1082 1089 1083 1093 1324 1327 1370 +340 338 331 311 396 692 1068 756 1074 398 1196 1073 976 978 1062 978 1069 1289 1214 1292 +309 296 319 273 399 961 1292 561 1078 329 1249 979 944 901 1085 901 1093 1326 1151 1279 +251 228 304 212 455 944 1081 323 727 243 971 675 713 643 847 643 855 1004 806 929 +184 157 284 148 575 1036 1038 199 446 161 782 409 512 376 667 375 675 783 531 671 +109 80 169 77 500 768 667 96 162 77 440 181 239 187 345 187 378 417 210 301 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +16 45 12 21 14 14 15 154 64 175 18 73 24 50 18 37 18 20 68 48 +113 211 95 169 106 107 119 855 494 824 235 546 310 439 197 441 192 326 553 472 +192 250 163 219 184 191 236 1185 859 969 571 905 595 749 505 751 506 717 954 879 +268 300 235 268 267 285 487 1289 1122 876 894 1147 837 975 800 977 802 1057 1242 1204 +355 369 317 336 363 396 867 1325 1364 714 1228 1362 1076 1183 1089 1186 1094 1398 1503 1512 +409 412 371 378 427 513 1151 1158 1410 471 1406 1390 1180 1235 1245 1237 1251 1554 1557 1614 +409 406 379 373 442 831 1357 918 1365 443 1466 1303 1175 1178 1290 1177 1299 1588 1488 1591 +342 332 335 305 407 1030 1386 579 1153 357 1330 1042 1006 958 1157 958 1165 1411 1225 1361 +271 252 332 234 516 1204 1386 332 895 266 1167 767 820 725 1002 725 1012 1211 944 1109 +197 168 320 159 668 1222 1220 212 499 172 896 447 573 406 759 405 769 896 593 761 +116 86 192 83 652 1015 874 102 175 82 535 185 261 192 405 191 452 503 220 344 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 27 11 17 13 13 14 61 31 69 18 38 21 31 18 27 18 20 36 29 +75 118 61 93 69 70 80 315 199 307 141 241 164 206 132 206 130 170 244 217 +123 156 105 134 119 123 153 388 303 333 281 370 287 328 266 328 266 319 383 362 +244 274 213 245 243 259 429 1085 947 748 782 990 735 848 704 850 706 915 1068 1036 +330 345 295 314 338 371 728 1073 1102 614 1048 1151 933 1014 942 1016 946 1178 1259 1265 +377 381 343 349 395 472 943 946 1136 439 1189 1176 1018 1059 1067 1061 1072 1301 1302 1346 +261 259 254 238 304 517 780 556 782 305 888 799 731 733 793 733 798 954 899 955 +213 206 217 190 271 533 691 339 582 223 718 586 570 549 638 549 643 754 668 731 +238 218 294 203 448 966 1103 300 723 231 971 659 702 628 842 627 851 1004 795 924 +141 124 195 116 357 601 598 150 286 127 499 299 355 286 437 286 442 498 362 437 +91 73 131 69 365 548 474 82 126 72 332 151 195 155 269 155 290 315 172 236 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 70 17 31 20 20 20 229 92 263 23 108 33 75 23 56 23 27 101 70 +121 233 102 186 113 114 127 920 527 892 260 597 343 482 220 484 214 360 604 515 +202 265 171 233 193 200 247 1180 855 973 598 929 623 775 536 778 536 741 976 902 +285 318 249 285 284 302 497 1287 1120 886 929 1179 874 1010 837 1012 839 1089 1271 1233 +357 371 319 338 365 398 816 1225 1258 682 1181 1302 1046 1142 1058 1144 1062 1333 1428 1435 +461 462 416 424 477 548 1090 1091 1306 510 1396 1381 1204 1250 1260 1252 1264 1520 1522 1570 +518 514 469 472 540 818 1192 868 1191 540 1427 1310 1220 1222 1303 1221 1309 1512 1441 1514 +419 408 403 376 482 1026 1328 620 1118 435 1378 1124 1096 1053 1227 1053 1234 1447 1283 1401 +285 257 356 240 539 1144 1300 360 852 274 1162 793 845 757 1011 756 1021 1200 953 1105 +210 177 324 168 637 1116 1106 224 480 181 871 474 587 446 751 445 760 869 600 748 +116 86 188 83 564 857 735 101 169 82 484 188 262 195 383 194 417 456 223 328 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +49 53 42 48 47 47 50 61 56 61 92 97 93 95 91 95 91 93 97 96 +45 46 40 42 45 45 46 48 48 49 84 85 84 84 83 84 83 84 85 85 +86 90 76 82 86 89 96 106 104 101 171 176 169 172 169 172 169 174 178 177 +86 88 78 81 88 92 98 101 101 96 172 174 170 172 170 172 170 175 176 176 +93 94 85 87 96 102 109 108 110 101 188 188 184 185 185 185 186 191 191 192 +93 93 87 86 99 107 113 106 112 99 192 188 186 186 188 186 188 194 192 194 +87 85 83 79 95 104 109 96 104 90 179 173 173 172 176 172 176 181 177 180 +75 72 72 67 85 93 96 80 88 75 153 146 147 145 150 145 150 154 149 152 +58 54 57 50 68 75 75 59 65 55 116 108 110 108 114 108 114 116 111 114 +35 32 36 30 44 49 47 34 38 32 69 62 65 63 68 63 68 69 64 66 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 4 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +51 56 44 50 49 49 52 64 59 64 95 101 97 99 95 99 95 97 102 100 +95 107 81 96 91 94 106 142 129 135 192 209 193 201 189 201 189 199 211 207 +95 111 82 97 94 103 154 310 275 229 243 296 231 260 224 260 224 276 316 307 +68 68 61 63 69 71 73 74 74 72 130 131 129 130 130 130 130 131 132 132 +74 74 67 68 76 78 81 80 81 78 144 144 142 142 142 142 143 145 145 145 +74 73 68 68 77 80 83 79 81 77 144 143 142 142 143 142 143 145 144 145 +134 129 138 118 175 323 409 209 344 141 427 350 342 330 382 329 384 448 397 433 +156 146 180 135 262 490 547 187 371 153 523 380 401 367 465 367 468 536 441 499 +104 95 127 88 211 326 321 108 174 97 299 203 231 201 270 200 272 298 233 268 +60 55 65 51 95 118 107 57 69 57 127 102 111 104 121 104 121 124 107 115 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +30 90 23 43 27 27 28 242 100 279 34 127 51 95 35 79 35 42 119 87 +112 211 92 165 103 104 119 682 399 668 239 481 299 399 216 400 211 312 485 420 +199 264 168 232 190 196 241 1020 743 853 566 847 589 718 519 720 519 686 886 822 +278 311 243 279 277 294 458 1114 972 786 862 1073 818 932 787 934 788 995 1149 1116 +326 352 293 320 336 386 739 1079 1106 633 1096 1200 980 1063 990 1064 994 1226 1309 1315 +391 403 363 368 423 532 900 897 1052 501 1199 1186 1051 1086 1094 1087 1098 1295 1296 1334 +202 201 196 184 234 404 609 425 606 233 700 628 576 577 625 577 629 750 706 751 +302 288 313 266 391 839 1084 493 899 317 1123 901 880 842 994 842 999 1181 1036 1140 +232 212 284 197 421 818 915 287 606 223 862 610 648 588 760 587 767 885 717 819 +211 177 313 167 577 965 946 222 434 180 800 467 565 453 701 452 708 795 570 693 +131 100 196 95 476 692 592 113 178 96 454 221 292 229 387 229 404 432 256 338 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +34 118 27 53 30 30 32 319 127 371 39 165 62 123 39 103 39 49 154 111 +116 220 95 172 106 107 122 700 408 688 249 499 312 415 228 416 222 324 502 436 +220 294 186 260 210 217 266 1145 831 959 639 956 666 812 587 814 587 774 999 927 +304 338 267 303 304 321 508 1305 1133 911 989 1242 937 1073 898 1075 900 1147 1332 1292 +408 420 364 383 417 444 847 1245 1275 721 1275 1392 1145 1238 1156 1240 1160 1421 1513 1520 +465 465 419 427 481 553 1087 1082 1296 511 1423 1407 1233 1278 1289 1279 1294 1546 1546 1594 +470 466 430 428 498 870 1345 915 1337 497 1548 1391 1279 1278 1387 1278 1395 1657 1561 1657 +389 378 376 348 453 1125 1476 599 1210 402 1481 1170 1143 1088 1302 1088 1309 1560 1359 1503 +303 281 384 261 597 1316 1482 356 927 294 1301 864 933 826 1127 825 1139 1340 1049 1226 +223 190 378 180 773 1362 1329 232 523 193 1020 520 670 494 874 493 885 1013 675 860 +138 102 246 99 772 1162 976 117 196 97 633 214 338 222 509 222 545 591 270 420 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +37 159 30 67 35 35 35 436 165 509 41 220 77 163 42 136 42 57 204 144 +137 267 114 212 127 128 142 907 518 893 305 637 390 527 278 529 270 406 641 553 +215 291 183 258 206 213 258 1205 866 1008 650 991 680 837 596 839 596 794 1036 959 +296 329 259 295 295 312 484 1207 1049 851 939 1170 892 1016 857 1019 858 1083 1252 1216 +379 392 339 358 388 417 821 1222 1252 696 1239 1357 1109 1202 1119 1204 1123 1386 1479 1486 +239 245 222 225 257 340 604 601 718 316 793 783 685 710 717 711 720 863 863 891 +375 372 348 341 407 673 1001 699 992 405 1181 1068 990 989 1067 989 1072 1258 1189 1258 +359 348 350 321 423 925 1187 526 981 371 1243 1005 986 944 1107 944 1112 1303 1148 1258 +224 204 272 190 396 727 805 274 539 215 787 570 605 552 701 552 707 806 660 748 +158 144 190 134 307 459 448 163 251 147 447 317 355 316 408 315 411 444 355 403 +108 85 158 81 370 529 450 94 141 83 357 180 239 187 310 186 321 339 208 270 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 49 19 30 23 22 24 89 46 103 32 62 40 53 32 51 32 36 60 50 +81 98 68 86 76 76 84 128 107 129 155 177 160 169 154 169 154 161 177 171 +65 68 57 62 64 65 68 76 73 75 124 128 124 126 123 126 123 126 129 128 +132 146 115 133 130 139 166 216 204 191 292 313 287 299 284 299 284 305 321 318 +151 161 136 148 155 173 215 249 252 205 358 371 343 354 344 354 345 374 385 386 +160 165 150 152 172 205 257 255 279 200 400 397 374 380 381 380 382 417 417 424 +140 139 135 129 157 186 214 186 211 155 330 318 309 309 317 309 318 339 331 339 +143 137 145 127 173 222 251 182 225 148 353 321 319 314 335 314 336 360 340 354 +141 131 162 122 230 391 429 168 296 137 434 327 344 319 392 318 395 443 371 414 +113 102 139 94 229 346 337 115 182 104 323 221 251 221 293 220 295 320 251 289 +99 86 118 81 226 302 263 91 116 86 254 169 199 173 233 173 237 245 183 213 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +42 178 34 77 39 39 40 448 169 526 48 237 94 181 49 161 49 70 220 158 +142 281 119 223 132 133 148 913 520 904 322 658 411 548 304 549 295 426 660 571 +219 299 186 267 209 216 260 1192 855 1003 662 1000 694 848 612 850 611 804 1043 966 +302 335 265 301 301 318 495 1277 1104 897 991 1240 943 1076 904 1079 906 1146 1327 1288 +417 428 373 391 426 453 875 1298 1328 744 1345 1469 1209 1307 1220 1309 1224 1499 1596 1603 +510 508 457 466 524 586 1081 1070 1270 542 1464 1447 1288 1329 1340 1330 1345 1576 1574 1619 +477 473 435 434 503 834 1243 856 1228 501 1484 1343 1248 1246 1343 1246 1350 1577 1491 1576 +428 418 409 384 487 1085 1382 599 1137 441 1465 1189 1169 1119 1310 1119 1315 1532 1353 1480 +323 299 407 278 617 1262 1400 374 879 313 1291 885 953 852 1133 852 1143 1323 1052 1215 +238 201 394 191 771 1311 1265 245 512 203 1023 549 696 543 888 541 898 1013 693 866 +150 109 268 106 754 1108 922 124 205 103 640 234 376 251 537 250 559 598 299 442 +0 0 14 0 320 421 284 0 0 0 93 0 0 0 31 0 70 63 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +47 199 38 87 43 43 44 477 180 562 56 260 111 203 57 186 57 83 242 176 +152 309 127 244 141 142 158 1003 566 997 351 725 452 604 337 605 327 468 727 628 +232 319 197 287 222 228 274 1292 922 1089 716 1085 752 920 663 923 662 870 1132 1047 +319 352 279 316 318 334 520 1368 1180 960 1063 1332 1011 1155 969 1158 971 1229 1425 1382 +415 426 371 390 424 450 832 1215 1242 715 1291 1404 1168 1257 1178 1259 1182 1431 1519 1525 +512 510 459 468 526 588 1073 1060 1258 544 1464 1446 1291 1331 1343 1332 1347 1573 1572 1616 +508 504 460 463 530 849 1241 864 1223 529 1510 1374 1284 1282 1376 1282 1382 1598 1515 1597 +430 420 411 386 488 1081 1371 593 1126 442 1465 1190 1172 1122 1311 1122 1316 1530 1352 1477 +328 304 415 283 628 1269 1403 377 877 318 1304 897 967 865 1146 865 1157 1335 1064 1227 +240 202 398 192 774 1308 1257 245 508 205 1025 554 702 553 892 552 902 1014 696 868 +152 111 273 107 758 1107 917 125 204 104 643 236 385 257 547 255 564 600 305 448 +0 0 14 0 309 404 271 0 0 0 91 0 0 0 30 0 70 62 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 212 42 96 46 46 48 485 185 572 64 274 126 218 65 206 65 95 255 188 +154 319 125 249 139 140 160 987 558 984 357 726 457 607 350 608 341 473 727 629 +242 333 206 298 231 239 287 1236 888 1049 724 1071 758 916 675 919 674 868 1114 1034 +338 371 296 334 337 354 525 1300 1126 929 1061 1308 1014 1146 975 1148 976 1212 1393 1353 +449 458 401 418 458 480 846 1214 1239 734 1328 1437 1211 1296 1220 1298 1223 1462 1547 1552 +540 537 483 492 552 599 1011 997 1165 561 1416 1401 1271 1305 1314 1305 1318 1508 1506 1544 +524 519 472 477 542 816 1151 823 1132 541 1444 1327 1251 1248 1329 1249 1335 1519 1447 1517 +421 411 403 378 479 1012 1269 568 1045 433 1383 1135 1120 1074 1245 1074 1249 1441 1280 1393 +327 303 409 282 609 1184 1300 375 821 316 1240 869 935 842 1097 841 1107 1267 1020 1168 +242 203 390 193 738 1223 1171 246 488 205 984 550 687 556 862 554 872 972 679 837 +155 112 272 109 713 1030 853 127 204 105 619 243 389 266 537 265 548 580 310 442 +53 36 76 36 364 459 323 35 49 30 186 76 90 81 126 80 164 155 80 88 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +47 164 37 79 42 41 44 347 138 410 59 208 107 169 61 165 60 84 195 147 +134 259 109 202 121 122 139 725 420 725 296 559 368 474 295 475 289 378 559 489 +227 311 193 277 217 224 270 1043 757 892 648 934 677 807 610 809 609 766 970 903 +317 350 278 315 316 333 480 1112 968 810 948 1153 910 1020 878 1021 879 1073 1223 1190 +339 365 304 332 348 397 693 981 1001 609 1080 1170 983 1053 991 1055 994 1191 1262 1267 +380 390 353 357 409 513 849 838 984 477 1170 1155 1033 1064 1073 1065 1077 1258 1256 1292 +292 288 283 265 335 552 798 555 784 328 974 879 819 817 882 817 886 1034 976 1032 +316 305 326 281 403 740 916 451 756 325 1029 852 843 811 931 811 936 1070 955 1035 +226 211 260 196 363 590 637 262 441 220 683 527 555 516 623 516 627 694 589 652 +175 157 213 147 340 497 478 176 266 160 490 350 393 354 450 353 453 486 390 441 +107 92 130 87 242 318 274 97 122 92 271 180 217 188 252 187 254 262 197 228 +33 27 38 26 98 117 89 27 32 25 79 53 59 54 69 54 75 73 54 58 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +36 69 27 43 32 31 33 113 60 131 46 86 59 75 47 75 47 53 82 69 +92 112 76 98 85 85 94 148 122 150 175 202 182 193 175 193 175 183 202 194 +150 197 126 171 143 147 180 441 340 390 353 455 363 410 340 410 339 394 468 444 +211 246 184 220 209 225 331 709 620 526 624 752 601 669 581 670 581 702 796 775 +220 237 197 216 226 260 445 627 639 395 694 751 633 677 637 678 639 764 809 812 +228 234 212 214 246 325 521 513 606 302 716 706 630 650 656 650 658 771 770 792 +221 218 213 201 252 372 504 371 494 247 644 590 558 556 592 557 595 677 644 676 +124 119 122 111 143 168 181 145 167 128 279 262 262 259 270 258 271 283 272 280 +190 184 210 170 288 451 485 214 342 189 535 424 444 417 492 416 495 542 467 512 +147 140 165 128 253 356 342 148 207 144 368 280 307 283 342 283 344 365 304 336 +93 88 101 80 174 220 192 89 103 92 203 153 172 157 192 157 193 197 161 178 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +37 105 28 54 32 32 34 202 86 238 42 127 71 105 44 105 43 58 119 92 +66 106 53 82 62 62 69 222 142 224 118 187 136 164 118 164 117 138 187 168 +112 148 93 128 106 109 135 344 263 304 258 340 267 304 248 304 247 291 350 331 +152 178 131 159 149 161 230 439 388 336 408 483 395 434 384 435 384 453 508 496 +262 282 235 256 269 307 549 788 804 482 860 934 781 839 787 840 789 951 1010 1013 +257 263 238 241 277 361 628 617 736 330 852 839 742 767 775 767 778 921 919 948 +287 284 280 261 333 573 840 570 821 325 1015 909 846 842 914 843 919 1079 1014 1076 +373 362 363 334 435 981 1232 509 996 383 1329 1073 1062 1014 1190 1013 1194 1386 1219 1335 +292 270 374 252 559 1060 1152 331 715 281 1113 780 843 758 988 758 997 1135 912 1044 +228 194 377 184 719 1181 1117 228 449 196 944 523 661 538 829 536 838 930 645 798 +146 109 268 105 705 1007 821 120 186 104 594 224 382 257 526 256 532 559 296 425 +34 504 31 10 415 527 349 640 103 899 125 286 81 216 49 204 104 95 229 108 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +62 253 49 119 54 54 57 525 197 627 77 318 165 259 87 260 78 125 296 222 +156 334 128 260 141 142 160 971 541 979 374 739 476 623 374 625 371 486 738 640 +239 336 203 303 228 235 279 1199 854 1028 726 1068 765 919 683 921 682 866 1107 1028 +339 372 298 335 339 354 526 1352 1162 966 1117 1380 1070 1210 1028 1213 1029 1276 1468 1425 +441 450 394 411 450 472 862 1260 1285 746 1389 1506 1264 1356 1274 1357 1277 1532 1624 1629 +525 522 470 479 538 607 1113 1090 1301 552 1552 1531 1371 1412 1426 1413 1431 1666 1662 1709 +529 524 476 481 547 852 1211 841 1183 545 1529 1396 1317 1313 1404 1313 1410 1608 1527 1604 +460 450 434 414 511 1085 1341 582 1093 471 1496 1232 1223 1172 1355 1172 1358 1554 1382 1501 +344 319 446 298 667 1270 1377 385 844 332 1332 931 1008 906 1183 905 1193 1358 1089 1248 +249 211 419 200 798 1308 1232 249 489 212 1047 578 733 596 920 594 930 1030 714 883 +168 123 312 119 802 1139 925 135 211 115 681 258 442 299 604 298 612 640 342 488 +62 39 99 39 430 532 365 37 55 31 221 84 105 90 154 90 198 183 89 100 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +57 196 45 99 50 50 53 381 151 455 75 246 139 205 84 205 77 110 230 178 +151 306 123 239 136 137 155 819 467 829 351 651 434 556 350 557 348 442 649 568 +222 306 188 273 212 218 261 937 680 813 621 877 651 766 590 767 589 725 906 846 +202 236 176 212 199 214 299 562 496 434 547 641 531 580 516 581 517 603 672 656 +274 296 246 269 281 322 533 740 753 477 845 911 776 826 781 827 783 926 977 981 +506 504 454 462 519 572 928 908 1058 532 1332 1317 1204 1232 1242 1233 1246 1413 1410 1444 +527 523 474 480 544 813 1128 799 1099 542 1453 1336 1268 1263 1344 1263 1349 1522 1450 1518 +284 270 298 250 369 742 917 409 741 293 1018 827 822 785 916 785 920 1060 935 1021 +279 252 373 236 555 1026 1107 324 685 263 1091 766 829 747 970 746 979 1110 892 1021 +229 193 375 183 695 1121 1053 227 432 194 921 526 658 541 815 540 823 906 639 781 +160 118 293 114 737 1037 840 129 198 111 631 246 415 287 562 285 569 593 324 455 +65 41 108 40 483 595 405 38 57 32 242 87 109 93 166 93 217 199 92 104 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 39 29 35 33 33 34 41 37 43 63 67 64 66 63 66 63 64 67 65 +101 126 83 109 93 94 104 167 136 170 195 226 203 216 194 216 194 204 226 217 +158 210 133 182 150 154 188 456 351 407 376 482 388 436 363 436 363 418 495 469 +309 341 270 307 307 323 449 1000 870 745 905 1086 875 970 845 972 846 1014 1146 1116 +358 371 320 339 366 393 695 1000 1019 608 1124 1216 1027 1099 1035 1100 1037 1237 1308 1313 +225 231 210 212 244 317 523 512 607 290 722 711 634 653 660 654 663 777 775 798 +308 304 300 280 356 627 922 612 895 346 1125 1004 936 931 1013 932 1019 1195 1121 1190 +304 289 318 267 393 821 1016 434 815 313 1124 907 902 860 1009 860 1013 1170 1028 1125 +252 228 334 213 495 897 964 290 598 238 959 679 735 663 856 662 864 976 787 898 +242 205 401 194 745 1200 1123 239 451 206 979 554 697 572 866 570 875 962 675 828 +160 118 284 114 684 953 771 128 194 110 599 248 404 288 537 286 544 564 319 439 +43 29 64 28 182 220 154 28 37 26 119 59 75 64 97 64 110 104 62 71 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 18 15 16 17 17 17 18 18 18 32 32 32 32 32 32 32 32 32 32 +31 31 27 29 30 31 31 32 31 32 56 57 57 57 56 57 56 57 57 57 +84 91 74 83 82 84 90 105 99 103 164 172 165 169 163 169 163 168 173 171 +109 115 96 106 108 112 123 139 135 132 221 230 220 224 219 224 219 226 232 231 +118 123 107 113 121 128 140 148 148 138 247 251 243 246 243 246 243 252 255 255 +112 112 103 104 116 123 132 130 134 122 230 229 225 226 226 226 226 233 233 234 +126 125 119 116 137 152 165 150 161 135 273 266 262 262 267 262 267 277 273 277 +111 107 107 100 124 138 144 123 135 113 235 225 225 223 230 223 230 238 231 235 +75 72 72 67 83 88 89 78 83 74 149 144 145 143 147 143 148 150 146 148 +51 49 49 45 56 59 58 51 54 49 98 94 96 94 97 94 97 98 95 97 +26 25 25 23 28 29 29 25 26 25 49 47 48 47 48 47 49 49 47 48 +13 11 13 10 16 17 15 11 12 11 24 21 22 22 23 21 23 23 21 22 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +46 132 35 71 40 40 42 233 98 280 54 158 95 133 62 133 55 77 148 117 +92 175 75 135 85 85 94 418 243 426 194 340 234 293 193 294 192 236 338 298 +88 118 73 101 84 86 104 286 214 254 197 268 206 237 189 237 189 225 276 259 +160 185 139 165 159 169 250 581 501 428 499 610 482 540 463 541 464 565 646 627 +322 336 288 306 329 357 661 972 990 575 1082 1175 984 1056 991 1058 994 1196 1268 1273 +360 363 328 333 378 465 869 845 1022 413 1211 1191 1057 1090 1104 1091 1108 1308 1303 1344 +409 404 378 372 439 755 1106 727 1069 433 1374 1234 1158 1151 1247 1152 1253 1453 1367 1446 +360 349 352 321 425 972 1203 467 954 368 1324 1065 1062 1010 1189 1010 1193 1377 1207 1323 +292 270 399 252 603 1127 1205 324 715 280 1174 813 889 794 1045 793 1054 1194 951 1094 +236 202 413 192 783 1268 1176 232 446 203 1013 557 714 578 895 576 904 993 684 848 +139 107 260 103 653 907 725 114 164 102 549 209 365 253 492 251 498 515 280 394 +53 33 97 32 399 486 324 31 44 27 199 67 89 73 140 73 179 163 71 82 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +81 338 65 168 71 70 74 639 234 776 105 419 233 348 136 349 109 179 389 297 +182 390 152 308 167 168 185 1044 577 1067 456 844 565 722 453 725 450 569 839 733 +260 376 222 341 249 255 298 1286 905 1116 811 1187 863 1029 772 1031 771 964 1226 1139 +349 381 306 344 349 363 522 1329 1137 965 1154 1413 1113 1249 1070 1252 1071 1307 1496 1452 +452 460 404 421 461 481 851 1232 1254 743 1420 1532 1301 1389 1310 1391 1314 1556 1644 1649 +534 531 478 488 547 619 1095 1062 1267 558 1574 1551 1402 1439 1454 1440 1460 1681 1676 1721 +511 506 462 465 531 843 1192 808 1151 528 1531 1394 1320 1313 1408 1314 1413 1607 1523 1601 +424 413 405 380 484 1068 1308 522 1042 432 1471 1198 1197 1142 1331 1142 1334 1526 1348 1469 +325 302 435 281 645 1168 1243 358 746 312 1242 877 955 859 1113 859 1122 1262 1016 1160 +245 208 414 197 759 1206 1116 239 440 209 992 565 714 586 882 585 891 972 683 836 +165 123 311 119 763 1054 839 131 192 116 649 250 435 303 582 302 589 607 334 466 +50 31 90 31 351 426 283 30 41 27 179 62 83 68 129 68 162 147 66 77 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 19 16 17 18 18 19 19 19 20 34 34 34 34 34 34 34 34 34 34 +44 46 39 42 43 43 45 48 46 49 81 84 82 83 81 83 81 82 84 83 +71 74 62 68 70 71 74 81 78 80 135 139 135 137 134 137 134 136 139 138 +92 95 82 88 92 94 100 108 105 105 181 185 180 182 179 182 180 183 187 186 +121 125 110 116 124 131 143 151 151 141 253 257 249 252 249 252 249 258 261 261 +78 78 71 72 80 82 84 83 84 82 151 150 149 150 150 149 150 151 151 152 +87 87 81 80 91 95 98 94 96 91 172 170 169 169 170 169 171 173 172 173 +63 62 58 58 66 67 68 65 66 64 121 119 119 119 120 119 120 121 120 121 +109 99 134 92 193 312 329 124 214 103 335 247 266 244 304 243 306 340 280 315 +99 87 132 81 214 310 289 97 147 88 283 190 222 194 258 194 260 278 214 248 +61 51 83 47 164 214 176 53 66 51 156 88 119 97 144 96 145 148 101 124 +25 19 35 18 95 112 78 18 22 18 62 33 40 35 51 35 58 54 34 38 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +23 23 20 22 22 22 23 24 23 25 41 42 42 42 42 42 42 42 42 42 +60 64 52 58 58 58 61 70 65 71 111 117 113 115 111 115 111 113 117 115 +88 94 77 86 86 87 93 108 102 107 171 179 172 176 170 176 170 174 180 178 +78 79 69 73 78 79 82 86 85 85 149 152 149 150 149 150 149 151 152 152 +63 63 57 59 64 65 66 66 66 66 120 120 119 120 119 120 119 120 120 120 +68 68 62 63 70 71 72 71 71 71 130 130 129 129 129 129 129 130 130 130 +87 87 81 80 91 95 98 93 96 91 172 170 169 169 170 169 171 173 172 173 +93 91 88 84 100 107 110 99 105 95 188 182 182 181 185 181 185 189 185 187 +80 76 76 71 88 94 95 82 88 78 159 152 154 152 156 152 157 159 155 157 +60 56 57 52 67 71 70 59 63 57 116 110 112 110 114 110 115 116 112 114 +23 22 22 21 25 25 25 23 24 23 44 42 43 43 43 43 43 43 43 43 +7 6 6 6 7 7 7 6 7 6 13 12 12 12 12 12 13 12 12 12 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +27 90 21 47 24 24 25 154 61 188 33 105 63 89 41 89 34 50 98 77 +50 52 43 47 48 49 50 55 53 56 92 95 93 94 92 94 92 93 95 94 +48 48 42 45 48 48 49 50 49 50 89 90 89 89 89 89 89 89 90 90 +144 167 125 149 143 152 216 469 406 355 424 511 411 457 397 457 397 475 538 523 +162 174 145 158 166 189 324 459 467 289 520 562 476 508 479 509 480 571 604 606 +116 118 107 108 125 165 273 264 316 148 362 355 316 325 330 325 331 391 389 401 +79 78 72 73 82 84 86 83 85 81 153 152 151 151 152 151 152 154 153 154 +91 88 85 82 97 103 106 96 101 92 181 177 177 176 179 176 179 182 179 181 +70 68 66 63 76 80 80 72 75 69 137 133 134 132 135 132 135 137 134 136 +53 51 51 47 58 61 61 53 56 51 102 98 100 98 101 98 101 102 99 101 +45 41 45 38 54 58 54 42 46 41 86 79 82 80 85 80 85 85 80 83 +25 19 36 18 96 112 78 19 22 19 62 33 40 35 52 35 58 54 34 38 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +93 334 74 178 81 80 84 568 216 695 132 412 253 352 168 353 139 202 385 304 +184 392 150 308 165 165 186 936 522 968 458 802 557 696 457 698 454 555 796 700 +273 387 233 350 261 267 310 1131 806 999 797 1116 844 984 766 986 765 924 1147 1072 +302 334 264 302 300 314 445 1114 951 820 1002 1219 970 1084 933 1086 934 1129 1287 1250 +361 373 323 341 369 394 647 906 920 576 1092 1170 1010 1071 1016 1072 1018 1187 1248 1251 +306 312 285 287 330 419 669 647 764 380 970 954 863 885 896 886 899 1036 1031 1060 +469 464 429 426 495 825 1171 765 1121 489 1512 1366 1295 1285 1385 1285 1391 1589 1498 1579 +400 389 386 358 466 936 1118 471 890 406 1310 1083 1087 1040 1197 1040 1200 1352 1203 1303 +173 157 213 146 294 458 477 192 316 163 530 405 433 401 486 400 489 535 450 499 +125 111 142 103 188 236 223 121 155 113 289 238 255 240 275 240 277 286 251 269 +83 70 112 65 206 263 216 72 88 69 211 130 168 141 198 141 199 201 146 172 +35 26 51 25 118 137 96 25 30 25 84 47 59 51 73 50 80 75 49 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 11 10 11 11 11 12 11 11 12 21 21 21 21 21 21 21 21 21 21 +45 46 39 42 44 44 45 48 47 49 82 84 83 84 82 84 82 83 84 84 +35 35 31 32 35 35 36 35 35 36 65 65 65 65 65 65 65 65 65 65 +59 59 53 55 59 60 61 62 61 62 111 111 111 111 110 111 110 111 112 112 +109 112 99 103 112 116 124 128 128 122 221 224 218 220 219 220 219 224 226 226 +89 89 81 82 91 94 97 96 97 93 173 173 171 172 172 172 172 174 174 175 +91 90 84 84 95 99 102 98 100 95 180 178 177 177 178 177 178 181 180 181 +152 144 154 134 182 222 240 179 214 154 362 333 334 328 348 328 349 367 348 361 +135 124 143 115 174 213 217 144 178 128 314 278 286 277 301 277 302 315 291 305 +109 97 119 91 151 180 172 106 129 98 240 206 218 208 231 208 232 238 215 227 +32 30 31 28 35 37 36 31 32 30 60 57 59 58 60 58 60 60 58 59 +24 20 26 19 33 35 30 20 22 20 43 37 41 38 43 38 43 42 38 40 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +24 24 21 22 23 23 24 25 24 26 43 44 44 44 44 44 44 44 44 44 +50 52 44 48 49 49 51 55 53 56 93 96 94 95 93 95 93 94 96 95 +44 44 39 41 44 45 45 46 45 46 82 83 82 82 82 82 82 82 83 83 +147 175 126 156 144 155 214 408 357 321 404 474 394 431 383 431 383 445 496 484 +89 90 80 83 91 93 96 98 98 96 174 175 172 173 172 173 172 175 176 176 +181 186 171 172 195 230 280 273 298 220 456 452 429 434 437 434 438 472 471 478 +180 177 178 165 208 260 305 249 295 199 465 439 427 425 443 425 444 478 462 476 +172 162 180 151 215 280 310 211 269 174 442 397 398 389 420 389 421 450 420 440 +96 91 94 85 109 120 121 99 109 93 198 186 189 186 194 186 194 198 190 195 +66 62 64 58 75 81 79 65 70 63 130 122 125 123 128 123 128 129 124 127 +104 97 124 91 189 230 194 97 108 99 275 218 245 226 265 226 266 267 229 247 +26 22 28 20 36 39 33 22 24 22 47 40 44 41 46 41 46 45 41 43 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +61 149 46 91 52 52 54 221 102 268 86 182 127 161 98 161 89 108 172 144 +95 155 75 124 85 85 95 274 177 285 185 269 209 243 185 243 185 208 267 244 +114 157 94 136 107 110 134 333 252 303 269 351 281 317 261 317 260 300 359 339 +141 163 122 146 139 147 207 454 391 346 419 503 407 451 393 452 393 467 529 514 +235 252 210 230 241 272 454 637 647 408 766 824 706 751 710 751 712 835 881 883 +216 221 203 203 235 310 474 456 538 281 694 682 619 634 642 634 644 741 737 757 +302 297 287 274 337 613 886 552 840 325 1125 1001 944 935 1020 936 1025 1188 1110 1179 +596 593 533 543 621 1094 1259 607 1031 606 1592 1383 1390 1345 1491 1344 1493 1630 1492 1583 +329 305 473 285 698 1235 1283 352 729 314 1314 923 1019 912 1186 911 1196 1331 1066 1217 +255 216 433 205 752 1136 1025 242 407 216 974 579 727 606 880 605 888 950 683 822 +173 130 343 126 801 1070 827 135 184 123 677 261 468 331 614 330 621 627 350 482 +54 35 96 34 271 316 207 33 42 32 156 65 90 71 127 70 146 132 68 79 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 66 7 18 8 7 8 61 10 93 9 37 15 31 10 22 10 10 30 18 +111 447 88 236 96 94 99 725 259 899 164 537 332 461 218 462 177 260 499 393 +211 466 175 370 192 193 211 1082 590 1132 548 953 669 832 550 833 546 661 943 830 +292 429 250 391 280 285 326 1293 903 1149 910 1287 969 1134 876 1136 874 1058 1321 1231 +395 423 348 384 395 408 537 1310 1119 984 1255 1503 1222 1352 1179 1354 1179 1397 1578 1534 +536 536 478 491 546 553 866 1199 1216 774 1523 1621 1423 1499 1430 1500 1433 1640 1715 1719 +665 656 588 602 669 705 1082 1039 1203 650 1664 1644 1535 1561 1575 1561 1579 1743 1736 1771 +635 631 558 578 634 928 1224 847 1168 639 1687 1562 1505 1496 1583 1496 1588 1750 1672 1740 +491 482 465 443 558 1148 1357 536 1064 499 1618 1341 1352 1292 1486 1291 1489 1667 1484 1605 +377 352 534 329 779 1356 1402 399 800 362 1460 1039 1143 1027 1323 1026 1334 1477 1191 1355 +269 229 504 218 910 1401 1254 254 449 229 1152 646 838 683 1033 681 1043 1120 779 956 +172 131 361 127 861 1150 882 135 182 124 712 259 486 338 645 336 652 657 357 500 +73 45 143 44 421 491 316 41 55 38 231 86 125 94 184 94 215 191 90 107 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 49 5 14 6 6 6 45 8 68 8 28 12 24 8 18 8 8 23 14 +34 36 29 33 33 33 33 37 35 38 62 64 63 63 62 63 62 62 64 63 +113 219 91 173 102 102 113 447 259 469 254 411 301 364 255 364 254 297 406 362 +241 346 204 311 229 234 272 924 658 829 693 951 734 847 670 848 669 793 974 912 +290 323 253 291 288 301 397 868 748 668 863 1020 842 924 815 925 815 953 1067 1039 +356 368 318 337 364 388 601 820 831 543 1038 1106 969 1021 974 1022 976 1119 1171 1174 +319 325 297 299 344 433 671 644 758 391 1000 983 896 917 929 918 932 1063 1057 1086 +202 198 202 184 237 313 380 295 365 224 558 520 504 501 527 501 529 577 553 574 +128 123 125 115 145 164 172 142 159 130 279 265 265 262 272 262 272 281 272 278 +96 91 94 85 109 119 120 99 108 93 196 186 188 185 193 185 193 197 189 193 +69 64 67 60 78 84 82 67 73 65 135 127 130 127 133 127 133 134 129 132 +39 36 38 34 44 46 44 37 39 36 74 70 72 70 73 70 73 73 70 72 +13 12 12 11 15 15 14 12 13 12 24 23 23 23 24 23 24 24 23 23 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 +39 42 34 38 38 37 38 44 41 46 71 74 72 74 71 74 71 72 74 73 +53 56 47 51 52 52 54 58 56 60 99 102 100 101 99 101 99 100 102 101 +124 141 106 128 118 121 135 177 160 173 253 275 256 266 251 266 251 261 277 271 +99 103 88 95 99 102 107 115 113 113 196 200 195 197 194 197 194 198 201 201 +169 180 153 166 173 190 225 252 253 218 396 407 384 393 384 393 385 410 419 419 +146 151 138 138 161 214 329 315 372 192 472 463 419 429 435 429 437 504 501 516 +160 156 161 144 193 303 404 275 382 180 526 473 451 447 482 447 485 551 518 547 +170 160 187 148 235 394 457 222 362 171 551 456 461 441 506 441 508 566 504 545 +221 199 301 186 424 684 701 240 427 205 766 564 615 560 701 559 706 773 635 713 +266 225 471 214 816 1222 1089 249 415 225 1045 615 780 648 945 646 953 1016 726 875 +198 146 403 143 908 1197 914 151 205 137 773 304 541 388 705 386 712 713 403 550 +110 96 206 92 680 783 505 95 99 94 367 157 198 158 288 158 344 305 157 171 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 103 10 31 12 11 12 93 15 142 14 58 25 50 15 38 15 15 48 29 +121 480 96 258 103 102 107 739 262 924 189 571 363 494 247 496 206 286 530 422 +220 490 182 389 199 199 218 1082 587 1142 575 982 699 862 579 863 575 687 969 856 +301 444 258 406 289 294 334 1283 893 1151 938 1311 999 1162 906 1164 904 1083 1343 1253 +409 436 360 396 410 421 539 1293 1103 983 1281 1524 1252 1377 1209 1379 1209 1419 1594 1551 +558 556 498 509 568 571 863 1178 1192 777 1543 1634 1450 1520 1456 1521 1459 1651 1722 1725 +704 692 619 635 704 729 1071 1026 1176 676 1681 1662 1567 1589 1603 1590 1606 1750 1743 1774 +661 658 577 603 655 933 1201 839 1142 663 1695 1578 1529 1518 1600 1518 1604 1751 1678 1741 +507 498 483 458 581 1145 1336 536 1043 515 1629 1360 1375 1315 1504 1315 1508 1675 1496 1613 +380 354 546 331 789 1346 1377 399 776 364 1461 1046 1155 1039 1331 1037 1341 1477 1193 1354 +293 248 543 237 950 1426 1265 274 461 247 1205 696 893 736 1089 734 1098 1170 826 1003 +207 152 418 148 926 1213 924 156 212 142 794 320 561 405 726 403 733 733 419 567 +114 98 217 94 685 786 505 97 101 96 373 160 206 161 297 161 351 311 161 176 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 128 12 40 14 14 14 115 17 176 17 72 31 62 18 48 18 18 59 36 +123 488 98 264 105 104 109 739 262 927 197 579 371 503 254 504 215 293 538 429 +225 517 184 408 201 201 222 1124 606 1190 598 1024 729 899 603 899 599 714 1010 891 +342 488 294 446 329 335 376 1318 928 1189 1014 1386 1076 1238 983 1240 981 1157 1417 1327 +350 381 307 345 349 361 476 1185 1005 895 1155 1384 1127 1246 1086 1248 1087 1284 1451 1410 +439 448 393 410 448 467 770 1093 1107 685 1386 1482 1288 1363 1295 1364 1298 1500 1575 1578 +414 415 376 381 431 523 908 860 1040 456 1374 1348 1224 1253 1271 1254 1276 1465 1455 1496 +896 897 737 820 818 897 990 843 962 859 1574 1555 1546 1544 1558 1543 1559 1582 1571 1581 +403 392 402 361 490 930 1082 447 842 408 1321 1098 1112 1062 1218 1062 1222 1357 1210 1306 +291 261 426 245 610 1017 1037 313 596 268 1119 803 886 798 1020 797 1028 1129 913 1035 +254 216 464 206 801 1191 1054 237 391 216 1016 595 759 629 920 627 928 986 702 847 +218 160 453 156 1004 1312 993 164 221 148 855 339 603 433 781 431 789 787 446 607 +132 74 288 75 797 916 574 65 91 58 428 145 234 159 349 159 401 350 152 188 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +24 150 14 47 15 15 15 134 19 206 18 84 36 72 20 57 19 19 68 41 +121 458 95 252 103 101 107 679 244 853 196 543 355 474 248 476 214 282 506 406 +182 403 148 318 163 163 180 840 460 892 465 778 561 686 469 687 466 549 767 679 +213 311 180 279 202 207 240 791 560 717 613 834 650 746 594 747 593 697 852 798 +463 480 410 437 467 474 558 1133 986 903 1239 1424 1218 1313 1184 1315 1185 1343 1477 1444 +421 430 376 393 430 448 692 951 962 626 1238 1316 1159 1219 1165 1220 1167 1330 1391 1394 +481 479 432 440 495 563 874 831 976 508 1350 1329 1231 1254 1269 1255 1272 1422 1414 1447 +488 483 443 443 510 800 1065 700 1003 503 1465 1337 1286 1275 1363 1275 1368 1524 1444 1512 +442 431 434 397 527 972 1122 477 877 447 1391 1168 1182 1133 1289 1132 1293 1428 1279 1376 +339 314 490 294 702 1173 1192 356 672 323 1284 925 1021 920 1174 919 1182 1296 1050 1189 +249 211 444 201 755 1109 979 231 372 211 960 573 725 605 873 603 880 931 670 804 +138 106 228 101 440 559 433 108 138 102 417 218 318 252 388 252 391 389 257 318 +61 42 102 40 225 255 168 39 47 38 151 76 104 82 134 82 144 131 79 91 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 52 9 22 11 10 11 47 13 70 14 35 20 31 14 27 14 14 30 21 +67 135 49 91 55 55 58 175 92 214 95 164 125 150 103 149 99 110 156 135 +90 102 76 92 84 84 90 115 103 119 170 185 175 180 170 180 170 174 184 180 +95 102 83 93 93 94 100 114 108 114 185 193 186 190 184 190 184 188 194 192 +95 98 85 91 95 97 102 108 106 106 186 190 186 188 185 188 185 188 191 190 +89 89 80 83 90 92 95 96 96 94 172 173 171 171 171 171 171 173 174 174 +84 84 76 77 86 88 90 88 89 87 161 161 160 160 161 160 161 162 162 162 +73 72 66 67 75 76 77 75 76 75 139 138 138 138 138 138 138 139 139 139 +67 66 62 61 70 72 72 69 70 68 128 127 127 127 128 127 128 129 128 128 +84 80 80 75 92 97 97 85 90 82 166 159 161 159 163 159 164 166 161 164 +97 88 101 82 122 137 131 93 107 88 201 181 189 183 197 182 197 200 186 193 +39 37 38 34 44 45 44 37 39 37 73 70 72 70 73 70 73 73 70 72 +32 27 35 25 44 46 39 27 29 27 58 50 55 52 57 52 58 56 51 53 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 +20 20 17 18 20 19 20 20 20 20 36 36 36 36 36 36 36 36 36 36 +45 46 40 43 45 45 46 48 47 49 84 85 84 85 84 85 84 84 85 85 +91 96 80 88 89 90 95 107 102 107 176 183 177 180 175 180 175 178 183 181 +149 163 131 149 147 154 174 211 200 196 322 340 320 329 317 329 317 332 345 341 +207 225 187 206 212 240 309 371 373 296 542 566 519 537 520 537 521 570 589 589 +226 232 214 213 248 324 480 457 538 291 732 718 658 672 681 672 683 776 771 792 +167 164 163 152 187 217 240 207 232 179 393 377 371 369 380 369 381 400 390 398 +142 135 141 126 163 187 195 158 178 142 316 297 298 294 307 294 307 318 306 314 +153 139 167 129 204 252 253 160 200 142 364 318 330 318 349 317 350 364 333 351 +92 83 94 78 112 124 119 88 99 83 187 170 176 171 183 171 183 185 174 180 +43 40 42 37 49 51 48 40 43 40 81 76 79 77 80 77 80 80 77 78 +16 15 15 14 18 18 17 14 15 14 29 27 28 28 29 28 29 29 28 28 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 +36 38 31 35 35 35 36 39 37 40 66 68 66 67 66 67 66 66 68 67 +38 38 33 35 37 37 38 39 38 39 69 70 69 70 69 70 69 69 70 70 +32 32 29 29 32 32 32 32 32 32 59 59 59 59 59 59 59 59 59 59 +32 32 29 30 33 33 33 32 32 33 60 60 60 60 60 60 60 60 60 60 +42 42 38 39 43 43 43 42 42 43 78 78 78 78 78 78 78 78 78 78 +155 156 144 145 163 178 196 192 201 173 342 339 331 333 334 333 334 348 347 350 +154 151 148 140 169 190 206 182 199 163 344 333 329 328 335 328 336 349 342 348 +145 138 144 128 167 192 201 161 183 145 324 304 306 301 315 301 315 327 314 322 +122 113 124 105 146 165 166 125 143 115 262 241 246 241 255 240 255 262 248 255 +99 89 102 83 123 138 132 94 107 89 203 183 191 185 199 184 199 202 188 195 +68 60 72 56 89 96 87 60 68 59 133 117 125 120 131 120 131 131 120 125 +25 18 43 17 101 114 73 17 19 17 56 23 36 25 49 25 53 47 24 29 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +16 88 9 33 10 10 10 76 12 118 12 51 26 45 13 39 13 12 42 27 +30 31 26 28 29 29 30 31 30 32 54 55 55 55 54 55 54 54 55 55 +44 45 39 41 43 43 44 46 45 47 81 82 81 82 81 82 81 81 82 82 +131 183 107 160 121 124 149 355 267 331 315 403 330 368 308 368 307 347 409 387 +77 89 66 79 77 80 107 229 196 180 211 254 207 229 199 229 199 235 265 258 +254 273 228 249 260 292 459 630 637 420 819 875 764 806 767 807 769 884 927 929 +219 223 205 205 237 306 473 447 531 271 719 705 644 658 668 658 670 764 758 779 +163 159 166 147 199 308 399 269 373 182 537 484 465 460 496 460 498 561 527 555 +170 161 191 148 242 432 497 209 378 170 596 485 495 469 547 469 549 613 538 586 +192 172 276 161 388 616 618 202 358 177 684 500 551 499 629 499 633 688 562 632 +157 133 260 125 420 594 520 143 216 133 535 337 416 354 491 354 495 518 384 452 +152 115 290 111 593 752 564 117 147 111 520 238 383 289 480 287 485 478 291 378 +91 54 196 54 462 519 320 49 61 48 260 97 163 106 228 106 247 215 100 127 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +54 335 27 123 29 30 29 284 35 453 33 188 90 163 35 145 35 35 152 92 +144 561 114 315 123 120 126 777 270 990 263 655 440 578 316 579 291 350 609 492 +232 554 190 439 207 207 227 1110 587 1197 634 1061 771 939 643 939 639 746 1043 922 +324 480 278 438 311 315 352 1263 872 1156 1004 1369 1069 1227 975 1230 974 1139 1394 1305 +448 469 395 428 450 459 548 1261 1075 989 1350 1579 1328 1445 1285 1447 1286 1476 1641 1599 +652 637 581 585 662 649 879 1138 1147 810 1614 1688 1542 1598 1546 1599 1549 1700 1756 1758 +832 813 721 745 818 799 1057 1011 1123 761 1735 1722 1663 1677 1686 1676 1689 1779 1773 1793 +778 777 659 711 742 963 1156 850 1097 768 1736 1651 1621 1612 1671 1611 1675 1773 1719 1764 +560 554 543 509 657 1145 1294 567 1008 569 1666 1422 1444 1387 1560 1386 1566 1704 1540 1645 +405 380 592 355 833 1347 1346 417 745 389 1500 1099 1215 1099 1386 1097 1395 1512 1235 1390 +307 260 591 249 989 1427 1235 281 440 258 1240 735 941 782 1132 780 1142 1198 856 1029 +216 157 454 154 952 1211 895 159 206 147 814 345 588 431 750 429 757 744 432 577 +128 71 298 72 703 782 480 62 81 59 385 131 238 144 338 144 365 315 136 178 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +62 372 30 141 32 32 32 310 38 501 37 210 105 183 41 168 39 38 170 103 +147 569 116 321 124 122 128 778 269 993 274 663 449 586 323 588 303 357 616 499 +234 561 192 444 209 209 228 1106 585 1197 641 1067 779 947 650 947 646 753 1048 927 +327 485 280 442 313 318 354 1259 869 1155 1012 1375 1078 1235 984 1237 982 1146 1400 1310 +453 474 401 432 456 464 549 1256 1070 989 1359 1585 1338 1453 1295 1455 1296 1483 1646 1605 +669 652 596 598 680 663 883 1132 1140 816 1626 1696 1556 1610 1561 1611 1563 1707 1761 1763 +541 537 483 493 552 616 927 875 1023 556 1479 1457 1363 1384 1400 1385 1404 1550 1540 1573 +438 433 404 398 466 743 974 623 905 455 1368 1245 1203 1190 1275 1190 1280 1421 1343 1408 +335 322 363 297 454 831 951 378 717 336 1180 970 991 942 1089 941 1094 1211 1071 1160 +256 233 375 218 527 840 837 265 471 238 933 681 754 682 861 681 866 939 765 862 +253 214 469 204 771 1099 950 230 353 213 969 587 744 623 888 621 895 936 677 808 +222 161 467 157 968 1226 903 161 209 150 829 356 602 442 765 440 772 757 440 588 +155 83 376 85 867 959 585 71 95 67 471 154 295 170 419 170 447 384 160 214 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +70 400 33 158 35 35 34 327 41 537 40 228 118 199 47 188 42 42 185 113 +154 583 121 332 130 127 134 784 273 1003 292 680 465 603 339 604 323 372 632 514 +237 568 194 450 211 211 230 1104 582 1197 648 1074 787 955 659 954 655 759 1055 934 +329 489 282 446 316 320 356 1254 864 1154 1019 1380 1085 1241 991 1244 989 1151 1404 1315 +457 476 403 434 459 467 549 1249 1064 987 1363 1588 1343 1458 1301 1460 1301 1486 1648 1606 +658 642 586 589 668 654 872 1122 1130 807 1615 1685 1545 1599 1550 1600 1552 1696 1750 1752 +848 828 734 759 831 808 1051 1004 1111 771 1739 1728 1674 1687 1696 1686 1698 1780 1774 1792 +797 796 671 729 754 966 1144 848 1085 785 1739 1661 1634 1626 1681 1625 1684 1773 1723 1764 +574 570 562 524 680 1142 1280 577 997 584 1674 1437 1461 1405 1573 1405 1579 1710 1551 1651 +412 386 604 361 843 1346 1336 422 736 396 1508 1112 1230 1114 1399 1113 1407 1520 1245 1398 +305 257 554 245 894 1260 1088 277 414 255 1135 702 880 743 1044 741 1052 1097 803 951 +219 158 444 154 895 1126 829 158 204 147 780 352 574 429 722 427 728 713 424 559 +160 85 390 88 860 947 577 73 98 69 473 158 308 178 430 176 451 387 164 222 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +75 404 34 166 36 36 36 323 43 539 43 233 127 205 52 199 45 44 190 118 +152 585 120 333 128 126 132 777 268 997 296 677 464 602 339 603 328 370 629 512 +237 572 194 454 212 211 231 1095 576 1191 652 1074 790 957 662 956 658 761 1054 934 +330 491 283 447 317 321 356 1245 857 1149 1022 1381 1088 1243 995 1246 993 1152 1403 1314 +456 476 403 434 459 467 545 1238 1054 982 1362 1584 1343 1456 1301 1458 1301 1483 1643 1602 +417 440 373 402 426 464 810 1188 1200 725 1561 1677 1448 1537 1455 1538 1459 1695 1785 1787 +677 667 596 611 678 709 986 934 1063 657 1606 1588 1512 1529 1543 1529 1546 1664 1655 1682 +680 677 588 620 666 900 1091 777 1027 680 1628 1534 1503 1493 1558 1492 1562 1668 1608 1657 +526 518 535 477 657 1137 1280 541 978 533 1651 1396 1423 1362 1543 1361 1550 1689 1517 1625 +420 395 594 369 818 1272 1259 428 711 404 1451 1090 1200 1093 1353 1092 1361 1462 1211 1350 +315 266 612 255 1004 1425 1221 286 433 264 1255 754 962 802 1151 800 1160 1210 870 1041 +223 160 469 156 956 1202 878 160 205 150 820 360 599 442 757 440 764 747 432 579 +148 79 360 81 766 839 510 69 89 65 424 144 285 164 394 163 405 347 149 203 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 11 10 10 11 11 11 11 11 11 20 20 20 20 20 20 20 20 20 20 +59 66 50 60 55 54 56 69 62 73 106 114 110 113 107 112 107 108 113 111 +115 137 95 123 105 105 113 160 136 167 221 247 229 239 221 239 221 227 245 238 +153 181 129 164 144 147 166 237 207 232 324 360 330 346 321 346 321 337 362 353 +180 203 157 186 175 185 218 287 267 261 414 446 412 428 406 428 406 431 454 448 +196 211 178 194 200 222 268 306 308 261 482 498 466 478 467 478 468 500 513 514 +159 160 148 149 167 182 199 194 202 176 348 346 338 340 341 340 342 355 354 357 +157 154 151 143 173 193 207 184 200 166 350 339 335 334 342 334 342 355 348 353 +185 173 213 160 269 452 510 223 385 183 633 520 532 505 585 505 588 648 572 620 +132 121 136 113 161 183 182 134 155 124 287 262 270 263 280 262 280 287 270 279 +102 91 106 85 126 140 133 96 109 91 208 188 196 190 204 190 204 206 192 199 +77 66 82 62 101 110 98 67 75 65 149 131 140 134 147 134 147 146 134 139 +55 40 85 38 145 156 106 38 42 38 112 68 92 73 108 73 109 100 69 79 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 264 28 119 30 29 30 208 36 349 36 160 95 142 45 142 38 37 132 86 +155 593 122 341 131 128 134 768 261 991 310 684 474 610 349 611 344 379 635 518 +239 579 196 460 214 213 232 1077 565 1178 658 1075 797 960 670 960 666 765 1054 935 +332 496 285 451 318 322 357 1228 843 1139 1028 1381 1095 1247 1002 1249 1000 1155 1402 1314 +456 476 403 434 459 467 538 1218 1036 973 1361 1579 1344 1455 1303 1457 1303 1479 1636 1595 +673 655 599 601 683 666 867 1102 1108 808 1621 1687 1557 1607 1561 1608 1563 1696 1747 1748 +853 832 736 762 835 810 1039 991 1092 775 1734 1724 1675 1686 1695 1686 1697 1772 1766 1783 +808 809 677 739 760 965 1127 839 1067 796 1737 1664 1641 1632 1684 1632 1687 1767 1721 1758 +422 409 456 378 567 984 1108 453 832 424 1420 1183 1210 1154 1321 1153 1328 1453 1293 1393 +278 254 422 238 588 925 910 285 498 259 1033 756 841 759 958 758 964 1039 847 953 +183 153 327 146 517 715 613 164 240 153 650 409 509 432 600 431 605 627 463 545 +152 113 276 108 519 639 472 112 138 108 471 243 361 282 440 281 444 433 275 348 +123 68 279 69 548 595 363 61 76 59 321 123 231 142 307 141 308 267 127 169 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +62 245 31 117 33 33 33 192 40 321 43 156 98 140 54 140 46 45 131 89 +103 240 76 160 84 82 86 289 136 364 174 294 226 270 186 270 185 195 278 240 +127 213 99 175 111 110 122 321 206 347 261 361 293 333 264 333 263 286 356 326 +162 235 135 208 152 154 180 476 344 448 426 551 449 503 417 504 416 470 558 527 +399 425 351 387 399 409 478 1064 905 853 1193 1385 1179 1276 1142 1277 1142 1296 1434 1397 +226 243 202 222 231 258 406 565 568 375 757 808 708 747 711 747 712 815 855 856 +143 144 132 134 150 159 170 166 172 156 302 300 295 296 297 296 297 306 305 307 +142 140 135 130 153 166 175 160 170 148 303 295 293 292 297 292 298 306 301 305 +197 183 212 171 253 326 349 231 294 194 516 460 467 454 492 454 494 523 486 509 +180 160 207 150 256 325 321 184 239 163 450 382 402 383 430 383 431 449 403 428 +100 90 104 85 124 136 129 95 107 90 205 185 193 187 201 187 201 203 190 196 +75 65 80 61 97 105 94 65 73 64 146 129 137 131 143 131 143 143 131 136 +56 40 88 38 148 159 106 38 42 38 112 67 93 73 109 73 110 100 68 79 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +82 361 38 168 39 38 39 278 47 474 50 223 136 199 68 200 55 53 185 122 +145 531 110 312 118 115 121 668 229 867 282 607 425 543 317 544 312 340 563 461 +223 542 183 431 199 198 215 984 514 1082 613 995 742 891 626 891 622 710 974 865 +301 459 257 417 288 292 324 1119 764 1044 945 1270 1008 1148 922 1150 920 1060 1288 1206 +383 412 336 375 383 393 466 1119 941 886 1229 1442 1215 1322 1174 1324 1174 1343 1496 1455 +770 735 684 675 781 742 866 1022 1025 822 1591 1631 1553 1583 1555 1583 1557 1636 1666 1667 +250 254 234 234 270 342 497 466 548 303 790 774 717 730 740 730 743 832 825 846 +206 200 207 186 240 297 340 271 321 222 538 506 497 493 515 493 517 551 531 547 +197 183 212 171 253 323 346 230 291 193 514 459 465 453 490 452 492 520 483 506 +181 161 208 151 257 326 321 184 240 164 452 384 404 385 432 385 434 451 405 430 +156 133 186 124 242 293 265 141 176 133 359 292 319 298 345 298 346 352 306 328 +78 68 83 63 102 110 98 67 76 66 151 133 142 136 149 136 149 148 135 141 +57 41 90 39 150 160 107 39 43 39 114 69 95 75 112 75 112 102 70 81 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +66 247 33 122 35 34 35 191 42 322 46 161 103 145 59 145 50 48 135 93 +148 535 112 316 120 117 123 664 228 864 289 611 431 548 323 549 319 346 567 465 +187 376 149 305 163 162 179 617 353 677 448 668 522 608 455 608 453 503 656 592 +268 384 227 346 254 258 290 807 574 761 739 955 781 874 724 875 723 815 967 912 +358 387 314 352 356 367 428 896 766 730 1031 1187 1021 1099 990 1100 990 1114 1226 1197 +474 477 424 438 483 493 657 841 845 617 1225 1281 1172 1214 1175 1215 1177 1289 1332 1333 +142 146 135 134 158 205 297 279 327 181 455 445 410 418 425 418 426 482 477 490 +160 157 153 146 175 195 208 185 201 168 355 344 340 339 347 339 347 359 352 358 +116 112 111 105 126 135 138 122 130 116 237 229 230 228 234 228 234 238 233 236 +167 149 185 140 225 275 271 169 211 152 398 347 362 347 383 347 384 397 362 381 +110 98 116 91 139 155 146 102 117 97 227 203 213 205 222 205 222 224 208 216 +60 54 60 50 71 74 69 54 58 53 113 104 108 105 111 105 112 111 105 108 +39 33 42 31 51 52 45 32 35 32 70 62 67 64 70 64 70 68 62 65 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 +16 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 +37 37 33 34 37 37 37 37 37 38 67 68 68 68 67 68 67 67 68 68 +105 149 86 130 99 100 115 288 209 273 249 322 263 295 244 295 243 274 326 307 +91 106 77 94 90 94 119 245 209 199 244 290 242 264 233 264 233 268 301 292 +144 149 131 138 147 154 166 173 174 164 302 306 298 301 298 301 298 307 310 310 +121 123 112 112 131 169 253 235 280 148 380 372 342 348 354 348 355 403 399 410 +137 133 140 122 168 257 324 213 297 150 445 400 388 382 413 382 415 463 434 457 +156 147 186 135 235 396 442 185 326 154 551 448 461 437 508 437 511 563 494 536 +149 130 199 121 266 379 369 151 230 132 444 340 373 343 415 342 417 443 372 411 +133 111 193 104 279 363 314 117 158 110 363 255 301 266 341 266 343 351 278 314 +69 61 72 57 86 91 83 61 67 60 133 120 126 122 131 122 131 130 121 125 +30 26 30 24 35 36 32 25 27 25 53 49 51 50 53 50 53 52 49 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 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 14 12 13 14 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 +16 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 +83 149 65 118 74 74 79 230 139 253 159 235 185 214 162 214 161 177 230 208 +101 144 83 126 95 96 110 278 202 265 238 310 253 283 234 284 233 263 314 295 +113 132 96 118 111 116 147 293 250 240 307 360 304 331 294 331 294 335 373 363 +121 130 108 118 124 139 206 279 280 194 363 387 340 358 341 359 342 390 408 409 +88 88 81 82 91 92 94 92 93 92 170 170 169 169 170 169 170 171 171 171 +109 108 101 100 114 119 122 116 119 112 217 214 213 213 215 213 215 218 216 218 +82 80 76 75 86 88 89 84 86 83 159 156 156 156 158 156 158 159 157 158 +199 176 279 164 374 544 529 201 315 179 637 483 532 487 595 486 599 636 531 588 +107 96 112 90 134 148 139 100 113 95 220 198 207 200 215 200 216 218 203 210 +73 64 76 60 92 98 89 64 71 63 140 126 133 128 138 128 139 138 128 132 +65 46 101 44 162 172 115 44 48 44 128 78 108 86 126 86 125 114 80 92 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +75 275 35 140 37 36 37 207 44 355 47 178 115 161 66 162 53 51 149 103 +154 590 120 349 128 126 131 711 227 934 317 667 475 601 357 602 352 379 618 508 +135 279 108 224 119 119 129 451 253 500 318 481 374 438 324 437 323 358 471 424 +225 342 189 307 211 214 243 749 517 708 663 876 706 797 650 798 648 736 886 831 +137 165 116 147 131 141 181 338 292 282 377 437 374 404 362 404 362 408 452 440 +142 153 127 139 146 162 257 362 363 239 479 513 448 473 450 474 451 517 543 544 +158 162 151 149 175 227 324 303 355 200 509 497 461 469 476 469 478 536 531 545 +175 171 175 157 207 341 440 269 398 188 617 552 535 527 572 527 574 641 600 632 +165 154 198 143 248 412 457 193 336 162 578 472 487 461 535 461 538 590 519 562 +162 144 235 134 319 473 457 163 262 146 537 400 444 404 501 403 503 537 442 493 +294 248 591 238 931 1275 1065 262 370 246 1153 709 902 757 1067 755 1075 1106 803 953 +185 130 347 126 631 763 550 128 158 124 564 291 435 339 530 337 534 516 324 412 +96 58 188 57 327 347 214 54 62 54 216 102 171 120 213 119 210 185 104 132 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +117 469 51 236 52 51 52 345 62 604 71 302 193 273 106 274 82 77 252 171 +178 670 139 399 148 145 152 797 255 1049 370 762 547 688 415 689 410 438 706 583 +261 632 213 507 232 231 249 1083 560 1208 722 1144 869 1033 739 1032 735 826 1118 996 +355 534 305 486 341 345 376 1210 825 1146 1087 1434 1159 1307 1066 1309 1064 1207 1449 1361 +502 513 445 469 507 512 550 1190 1013 980 1424 1627 1414 1515 1374 1517 1374 1530 1675 1636 +781 745 694 684 793 754 892 1073 1075 848 1683 1729 1640 1675 1642 1675 1643 1734 1770 1770 +970 941 824 860 933 868 1032 987 1059 850 1775 1771 1751 1755 1759 1754 1761 1791 1788 1795 +885 890 724 813 809 976 1094 847 1038 868 1754 1707 1695 1688 1722 1687 1724 1772 1742 1766 +633 634 631 582 750 1120 1211 620 946 648 1690 1491 1520 1470 1613 1469 1619 1716 1580 1664 +442 418 654 391 886 1326 1280 444 696 427 1544 1169 1294 1180 1451 1178 1459 1549 1286 1429 +336 284 667 272 1041 1417 1182 299 415 281 1296 806 1021 860 1202 858 1211 1243 909 1074 +280 187 582 184 1090 1323 937 183 230 174 945 451 715 539 885 537 892 857 509 671 +203 101 489 104 897 952 557 86 109 83 519 180 388 236 514 233 504 426 186 268 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +39 93 22 57 25 24 24 74 29 118 34 72 54 67 40 67 37 36 64 50 +100 242 73 162 81 79 83 276 123 355 169 286 221 264 182 264 180 188 269 232 +237 553 192 446 210 208 226 924 485 1032 634 990 759 897 649 896 646 721 967 864 +272 407 230 368 257 261 291 866 600 825 795 1038 846 949 780 950 779 878 1048 986 +272 307 236 278 268 278 332 703 596 578 813 942 807 871 782 872 782 879 972 947 +300 315 268 288 306 330 481 652 653 453 930 985 880 921 882 922 884 990 1033 1033 +346 348 318 320 365 444 670 621 738 387 1110 1088 1014 1030 1046 1031 1049 1167 1156 1184 +200 195 201 180 237 378 480 300 435 214 688 618 601 592 640 592 643 713 668 703 +230 215 279 200 347 570 628 267 461 225 821 675 696 660 763 660 767 837 738 799 +220 194 327 182 441 649 625 221 354 197 754 565 627 570 705 570 709 753 622 693 +193 158 328 150 488 646 545 167 230 156 621 411 503 435 581 434 585 598 455 525 +167 119 285 114 484 575 420 117 143 113 458 262 366 296 434 295 437 422 285 348 +96 60 170 58 278 293 185 55 63 55 200 107 164 124 198 123 197 175 109 133 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 16 14 14 15 15 15 16 15 16 28 28 28 28 28 28 28 28 28 28 +50 53 43 49 48 47 48 54 51 57 90 94 92 94 91 94 91 91 94 92 +108 187 83 153 93 92 102 270 169 298 215 303 246 280 219 280 218 236 297 271 +130 186 105 164 118 121 142 329 243 318 314 398 332 368 310 368 309 343 402 380 +137 145 121 133 136 139 150 167 161 162 280 289 279 284 277 284 277 285 291 290 +151 156 137 144 154 161 174 182 182 173 318 323 314 318 314 318 314 324 327 327 +158 159 147 148 166 178 191 186 193 173 340 338 332 333 335 333 335 345 344 347 +140 137 132 128 150 160 167 153 162 145 293 286 285 284 288 284 288 295 291 294 +94 92 88 85 99 103 104 96 100 94 184 180 181 180 182 180 182 184 182 183 +124 115 125 108 145 160 158 124 138 117 260 242 248 243 255 243 255 259 247 254 +95 86 96 81 112 120 115 89 98 86 188 174 180 176 186 176 186 187 177 182 +170 119 309 115 540 645 463 117 142 114 493 266 388 307 466 306 470 452 293 366 +167 87 381 88 675 712 418 76 92 74 404 153 310 198 402 196 394 336 157 220 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 18 15 16 17 17 17 18 17 19 32 32 32 32 32 32 32 32 32 32 +39 41 35 37 39 38 39 41 40 43 72 73 72 73 72 73 72 72 73 73 +92 100 78 92 87 86 91 108 99 112 172 183 176 180 172 180 172 174 182 179 +62 63 56 58 62 62 63 65 64 66 116 118 117 117 116 117 116 117 118 117 +86 87 77 81 86 87 89 92 91 92 164 166 164 165 164 165 164 165 167 166 +107 108 97 100 108 111 114 116 116 114 209 210 208 209 208 209 208 210 211 211 +182 187 174 172 202 260 363 339 395 229 587 574 535 543 552 544 554 617 611 626 +78 77 71 72 80 82 82 80 81 80 149 148 148 148 148 148 148 149 149 149 +113 110 108 102 122 130 131 118 124 113 229 222 223 221 226 221 226 229 225 228 +91 87 87 81 100 104 104 91 96 89 179 173 175 173 178 173 178 179 175 177 +92 84 92 79 108 115 110 87 95 84 182 169 174 170 179 170 179 180 171 176 +51 48 50 44 58 60 57 47 50 47 96 91 94 92 95 92 95 95 91 93 +17 16 16 15 18 18 17 16 16 16 31 30 30 30 30 30 30 30 30 30 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 9 8 8 9 9 9 9 9 9 17 17 17 17 17 17 17 17 17 17 +32 32 28 30 32 31 32 33 32 34 58 59 59 59 58 59 58 58 59 59 +58 60 51 55 57 57 58 62 60 63 108 110 109 110 108 110 108 108 110 109 +82 84 72 78 81 81 84 89 86 90 155 158 155 157 154 157 154 156 158 157 +78 79 70 73 79 80 81 82 82 83 149 150 149 149 148 149 148 149 150 150 +89 89 80 82 90 91 93 93 93 93 170 171 169 170 169 170 169 171 171 171 +93 93 85 86 96 97 99 97 98 97 180 180 179 179 179 179 179 181 181 181 +84 83 77 77 86 88 89 86 87 86 161 160 160 159 160 159 160 161 161 161 +42 41 38 38 42 43 43 42 42 42 78 77 77 77 77 77 77 78 77 78 +92 88 88 82 101 106 105 92 97 90 181 175 177 175 180 175 180 181 177 179 +97 88 98 83 115 124 118 91 100 88 194 179 185 180 191 180 191 192 182 187 +70 62 71 58 84 88 81 61 67 60 132 120 126 122 130 122 131 130 122 125 +26 24 25 22 29 30 28 23 25 23 47 45 46 45 47 45 47 47 45 46 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 87 19 53 21 20 21 66 25 109 29 66 49 62 36 62 32 31 58 45 +68 198 49 124 55 54 56 222 83 293 110 211 156 193 122 193 120 126 196 163 +107 185 81 151 91 90 99 262 164 292 210 296 241 274 214 273 213 230 290 264 +115 166 94 146 107 108 124 299 216 289 276 353 292 325 272 325 271 301 356 335 +130 154 111 139 127 133 165 319 271 267 358 415 356 385 345 385 345 387 428 417 +196 211 176 193 200 223 326 442 442 312 628 668 595 623 596 624 597 671 701 701 +175 178 164 163 190 245 369 340 408 211 606 592 548 557 567 558 569 639 632 649 +148 143 153 132 182 273 335 220 304 160 480 433 423 416 449 416 450 497 466 490 +120 116 115 108 131 139 141 125 133 120 245 237 238 236 242 236 242 246 240 244 +126 117 127 109 147 161 159 125 139 118 263 245 251 246 258 246 259 262 250 257 +185 150 294 142 423 545 458 157 210 148 544 375 450 395 512 394 515 524 408 465 +147 105 236 100 380 444 325 103 123 100 369 223 302 250 352 249 354 341 240 286 +118 69 225 68 367 383 233 63 72 63 251 123 204 149 250 148 247 216 125 159 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +111 376 49 207 51 49 50 265 60 474 72 256 174 235 107 236 87 81 216 153 +72 159 52 109 59 58 60 174 83 226 107 178 139 165 115 165 115 118 167 144 +227 524 183 424 200 198 214 827 433 936 599 918 714 837 615 836 612 675 895 802 +317 486 271 441 302 305 334 1019 692 982 959 1251 1025 1148 945 1150 943 1056 1261 1185 +416 441 366 402 416 424 461 1016 856 846 1234 1417 1230 1320 1193 1321 1192 1326 1456 1420 +564 559 503 512 574 573 736 941 940 703 1445 1506 1393 1437 1395 1438 1396 1510 1557 1557 +695 684 609 627 693 711 903 854 947 671 1543 1529 1480 1491 1501 1490 1503 1581 1573 1592 +658 656 570 601 648 889 1046 722 965 664 1635 1539 1518 1504 1572 1504 1576 1669 1607 1654 +368 353 428 327 521 828 897 395 657 366 1224 1028 1061 1011 1149 1010 1154 1243 1111 1191 +175 154 257 144 343 491 467 173 267 156 572 431 479 437 536 436 539 569 472 524 +154 126 254 119 370 479 400 131 175 125 464 313 381 331 437 330 439 446 343 393 +158 112 252 106 400 466 341 109 132 106 393 241 323 268 375 268 378 364 258 306 +142 79 283 79 464 485 289 71 82 71 309 142 249 177 308 176 304 264 145 189 +41 21 66 21 88 83 44 18 20 19 52 36 45 37 53 37 53 43 36 37 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +95 283 45 163 48 46 47 203 57 354 68 201 142 186 94 186 80 75 172 127 +185 667 143 415 152 148 155 739 228 990 388 753 558 688 433 689 428 448 698 582 +263 626 214 508 232 230 248 992 509 1126 717 1104 858 1006 737 1006 733 808 1076 962 +350 532 301 484 336 339 367 1104 750 1068 1055 1370 1126 1259 1039 1260 1037 1159 1379 1297 +539 541 479 496 547 549 560 1158 987 982 1467 1655 1463 1556 1424 1557 1424 1561 1695 1658 +686 665 611 610 697 678 815 1000 998 784 1578 1630 1535 1572 1536 1572 1538 1633 1672 1672 +879 857 753 784 855 820 976 930 1002 797 1684 1678 1653 1658 1663 1657 1665 1704 1700 1710 +824 829 681 757 765 933 1038 798 978 818 1678 1628 1618 1610 1646 1609 1648 1696 1664 1688 +594 593 615 545 728 1059 1129 589 870 607 1614 1422 1456 1406 1543 1405 1548 1634 1504 1583 +427 401 640 375 853 1232 1171 424 632 409 1469 1122 1244 1137 1386 1136 1393 1466 1225 1354 +332 280 661 268 996 1318 1080 291 383 277 1241 791 996 846 1160 844 1168 1187 880 1030 +301 192 629 189 1119 1328 918 186 228 179 969 474 746 568 915 566 922 876 528 688 +244 116 571 120 973 1014 577 97 121 94 580 204 448 286 578 283 568 478 209 311 +41 0 103 2 149 136 47 0 0 0 30 0 16 0 32 0 33 11 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +148 502 64 281 66 63 64 347 76 629 98 346 238 319 148 320 121 111 292 209 +171 539 126 349 136 132 138 589 204 787 335 617 466 567 370 567 366 381 574 484 +222 465 177 381 194 193 208 698 384 789 546 803 640 738 560 738 557 606 783 708 +275 409 228 368 253 257 293 757 536 737 759 965 806 893 750 894 748 827 971 917 +328 377 283 342 320 334 394 727 625 624 910 1035 909 969 883 970 883 972 1061 1036 +398 419 357 384 406 437 590 765 763 570 1151 1211 1102 1145 1103 1145 1105 1214 1260 1259 +304 311 291 287 334 423 575 537 623 375 978 958 899 912 925 912 928 1023 1014 1037 +424 413 410 382 476 685 821 551 748 444 1261 1158 1138 1123 1194 1123 1198 1295 1229 1279 +291 269 348 250 421 612 655 335 497 280 920 778 803 767 865 767 869 931 836 893 +253 233 360 218 443 614 582 247 360 237 783 620 676 627 740 626 743 776 666 724 +198 169 316 163 401 507 427 172 220 171 617 470 538 488 591 488 593 599 499 548 +145 116 180 108 243 271 216 115 130 116 293 229 263 240 286 240 287 280 236 255 +75 59 89 54 114 117 89 57 60 58 129 105 120 111 128 111 128 123 106 113 +20 14 23 13 29 28 19 15 14 15 27 22 26 24 27 24 27 25 22 23 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 162 30 97 33 31 32 116 38 201 43 116 84 108 58 109 51 48 100 75 +109 309 79 203 86 84 88 334 125 445 192 346 263 319 211 319 209 216 322 272 +136 292 106 236 118 117 126 438 237 498 322 486 382 445 331 444 329 360 473 425 +175 272 145 243 162 164 186 524 361 511 497 646 532 594 491 595 490 546 650 611 +158 187 136 169 154 161 195 418 349 349 481 562 481 520 464 520 464 521 579 563 +200 215 179 197 204 226 325 440 438 314 638 677 606 634 607 634 608 679 709 709 +237 241 223 222 257 327 488 449 536 281 831 812 756 768 781 769 783 873 864 886 +276 268 270 247 316 545 695 397 617 289 1042 933 912 896 972 896 976 1079 1008 1062 +286 270 355 251 436 710 768 314 546 280 1041 858 891 844 973 844 977 1057 934 1008 +267 239 419 225 560 814 768 262 409 243 953 712 797 723 895 722 900 948 782 870 +296 247 565 236 837 1093 895 256 333 244 1048 682 849 728 983 726 989 1003 753 874 +282 182 558 178 955 1123 779 176 215 169 850 439 666 518 806 516 811 771 484 615 +212 103 478 105 797 827 470 88 106 86 485 179 379 249 483 247 477 402 183 268 +75 50 130 45 182 169 85 74 59 74 93 81 82 73 95 73 95 78 82 75 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +178 609 74 342 74 72 73 409 86 758 113 417 287 385 177 386 144 130 350 249 +200 739 155 464 165 160 167 798 236 1078 430 828 618 759 481 760 476 495 767 640 +275 646 223 526 243 241 258 990 509 1132 742 1128 886 1033 765 1033 760 832 1098 985 +379 578 327 527 365 368 394 1170 790 1140 1142 1476 1221 1361 1128 1362 1126 1251 1484 1397 +548 548 487 502 556 558 563 1141 973 978 1474 1657 1473 1562 1435 1563 1435 1564 1694 1657 +866 812 769 744 880 821 900 1039 1036 875 1721 1752 1697 1719 1697 1718 1698 1752 1775 1774 +862 841 739 769 840 811 963 918 989 787 1671 1663 1638 1643 1648 1642 1650 1691 1687 1697 +792 795 659 726 742 918 1024 777 960 789 1657 1601 1591 1582 1622 1581 1624 1676 1640 1667 +573 571 606 525 718 1043 1107 572 843 585 1593 1398 1434 1384 1522 1383 1527 1612 1480 1559 +424 397 640 372 848 1211 1143 419 615 405 1456 1115 1237 1132 1376 1130 1382 1450 1214 1339 +360 306 724 293 1079 1413 1149 316 405 302 1345 865 1086 926 1261 924 1269 1285 958 1117 +327 206 665 203 1142 1342 924 198 243 190 1007 510 786 607 954 604 961 911 563 723 +254 119 587 123 976 1011 569 99 123 97 588 208 458 298 586 295 578 485 212 320 +88 54 158 49 222 206 99 83 65 82 105 88 92 78 108 78 108 87 89 81 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +183 618 75 350 76 73 74 412 87 768 118 425 294 393 183 394 150 135 357 255 +204 752 159 474 168 163 170 805 236 1090 440 842 631 773 492 774 487 505 779 651 +285 693 233 564 253 251 268 1063 536 1219 790 1211 948 1107 816 1108 811 888 1177 1054 +385 587 333 535 372 374 400 1172 792 1146 1155 1489 1235 1375 1142 1376 1140 1264 1497 1409 +559 556 498 509 568 569 571 1140 973 982 1486 1666 1486 1573 1448 1574 1448 1574 1702 1665 +462 486 414 446 471 505 777 1120 1113 744 1680 1790 1593 1671 1594 1672 1597 1793 1876 1875 +973 944 823 862 933 863 973 935 984 857 1702 1702 1698 1699 1699 1698 1700 1706 1706 1707 +837 843 687 769 772 927 1018 796 961 831 1666 1625 1617 1610 1640 1609 1642 1681 1654 1675 +589 588 616 541 728 1041 1100 585 844 602 1597 1411 1446 1397 1530 1396 1535 1615 1488 1564 +435 409 649 383 856 1212 1142 430 620 417 1468 1132 1253 1149 1389 1148 1396 1461 1228 1352 +342 288 648 275 948 1227 1002 298 378 284 1195 788 976 841 1124 839 1131 1144 866 1001 +297 191 556 187 916 1067 744 184 226 176 840 458 670 532 800 530 805 765 499 620 +216 109 438 110 697 720 417 91 112 90 460 198 370 261 458 259 453 389 202 276 +76 27 128 28 171 157 73 17 22 18 88 46 74 53 90 52 91 68 45 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 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 21 18 20 21 20 20 21 21 22 38 38 38 38 38 38 38 38 38 38 +61 66 52 60 58 57 58 67 62 71 110 116 113 115 111 115 111 111 115 113 +120 139 100 126 110 109 116 152 133 161 228 249 236 244 229 244 229 232 247 241 +193 285 159 255 178 180 205 492 352 485 503 634 534 589 498 589 497 545 636 602 +197 222 171 204 190 199 229 296 273 276 450 483 450 466 443 466 443 466 489 482 +213 228 193 210 216 236 275 310 309 274 515 531 503 514 503 514 503 532 544 544 +221 224 210 208 238 273 315 302 326 257 556 549 530 534 539 534 539 571 567 575 +169 165 162 154 184 202 212 190 204 175 371 359 357 356 363 356 364 374 367 372 +160 151 159 141 183 204 208 169 188 156 350 331 334 329 343 329 343 352 339 346 +195 171 227 160 275 336 322 189 240 171 478 409 433 412 460 412 462 475 428 452 +103 93 105 87 123 131 124 96 105 92 205 189 196 191 202 191 202 203 192 197 +73 65 74 60 87 90 83 64 69 63 137 125 132 127 135 127 136 134 127 130 +82 54 128 52 188 194 124 51 55 51 150 92 130 106 149 105 149 134 93 109 +23 17 27 15 33 31 22 17 16 17 32 27 31 28 33 28 33 30 27 28 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +117 357 50 209 53 51 51 237 61 440 79 250 177 233 115 233 100 90 212 154 +119 378 87 246 95 92 96 397 132 539 224 416 315 383 249 383 246 254 385 323 +149 284 116 235 129 127 137 396 230 451 331 470 383 436 340 436 338 362 458 417 +138 201 111 177 124 126 147 329 241 326 334 419 355 390 331 390 331 361 421 398 +151 161 134 149 149 153 165 187 179 182 313 325 313 319 310 319 310 319 327 325 +167 173 152 161 170 178 193 204 204 193 358 364 353 358 353 358 354 364 369 369 +90 90 82 82 97 123 182 167 199 106 291 284 263 267 272 268 273 306 303 311 +169 162 175 150 207 303 365 240 328 180 546 494 485 477 513 477 515 563 529 554 +236 215 285 201 346 497 527 269 397 225 746 630 652 623 703 622 706 754 677 723 +271 236 391 222 502 691 649 262 384 238 857 664 733 674 809 674 813 849 717 787 +261 214 407 203 558 698 581 221 280 212 739 531 627 558 703 557 707 712 570 638 +174 125 273 119 416 475 344 122 141 120 419 268 352 297 403 296 405 389 284 330 +167 93 299 92 452 465 279 82 95 82 331 171 277 211 329 210 328 288 175 219 +110 49 193 49 267 245 114 49 50 50 127 81 108 79 131 79 132 99 81 80 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +55 119 30 79 33 32 32 87 38 145 48 96 75 91 57 91 54 51 84 68 +73 164 52 114 59 57 59 170 79 225 109 180 142 167 118 167 117 119 168 145 +129 254 101 208 112 110 119 356 202 407 286 414 334 383 294 383 293 315 403 365 +249 390 208 351 232 234 260 736 500 725 727 939 779 867 720 868 719 794 943 886 +250 287 215 262 244 253 295 648 537 547 787 913 788 849 761 850 761 847 938 911 +335 349 300 320 341 362 507 693 687 495 1056 1117 1010 1052 1010 1053 1011 1118 1164 1162 +237 240 223 221 256 325 478 440 523 280 833 815 762 773 785 773 788 874 865 886 +199 193 201 178 236 367 451 278 402 210 683 616 605 594 641 594 643 704 661 693 +235 218 296 203 362 564 602 262 430 226 834 690 718 680 781 680 785 844 747 805 +247 216 393 204 519 739 689 239 369 218 881 659 739 671 827 670 832 872 720 800 +221 179 409 171 588 755 612 185 240 175 739 490 606 523 696 522 701 706 536 618 +303 190 596 186 984 1141 782 182 220 177 881 465 699 548 839 546 845 799 509 640 +242 114 533 117 857 881 492 96 116 95 531 197 420 284 529 282 525 441 205 298 +130 52 234 52 325 298 133 52 52 53 144 84 120 83 150 83 150 108 85 84 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +192 606 79 356 80 77 78 391 91 744 132 428 304 398 196 399 171 152 361 262 +214 786 166 505 176 171 178 814 234 1115 467 876 664 808 522 809 516 530 810 679 +298 721 243 590 264 261 278 1069 534 1239 823 1248 986 1146 851 1147 846 920 1211 1086 +403 614 349 559 390 391 415 1173 791 1158 1192 1525 1275 1413 1182 1415 1179 1298 1529 1441 +429 480 372 441 420 434 491 1211 989 1012 1479 1728 1483 1603 1429 1604 1429 1598 1776 1724 +478 502 427 460 486 519 780 1123 1112 760 1721 1831 1637 1714 1637 1715 1640 1831 1914 1912 +1192 1145 984 1043 1114 971 1036 1002 1028 993 1851 1862 1888 1882 1874 1881 1875 1831 1836 1824 +1075 1101 832 1000 917 967 994 887 967 1049 1711 1745 1750 1754 1733 1752 1733 1704 1725 1709 +721 737 692 675 803 1032 1070 691 873 751 1634 1513 1537 1505 1592 1504 1595 1645 1563 1611 +438 414 610 386 786 1063 1000 433 578 422 1339 1064 1165 1080 1274 1079 1280 1329 1141 1240 +342 288 628 274 897 1143 929 296 367 283 1141 771 945 821 1079 819 1085 1092 840 961 +330 207 630 203 1020 1178 810 198 241 190 930 505 745 591 888 588 894 846 550 683 +263 124 560 127 886 910 510 103 126 101 565 220 451 311 561 309 558 472 229 325 +128 54 226 54 312 286 130 54 54 55 145 88 123 87 151 87 151 112 88 88 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 31 5 22 5 5 5 9 5 33 6 16 11 15 7 15 7 6 12 7 +118 357 49 211 51 49 50 230 59 437 78 248 176 231 114 231 102 90 209 152 +113 324 82 218 89 87 90 332 121 451 202 358 277 332 223 332 221 226 332 282 +100 182 77 149 87 86 92 245 146 280 199 281 230 261 204 261 203 217 274 249 +140 204 112 181 125 127 147 328 240 327 338 423 359 394 336 395 335 365 424 401 +266 322 227 295 255 268 328 628 529 542 796 913 798 854 772 855 772 851 935 910 +275 296 246 271 280 307 408 528 524 404 807 850 775 804 774 805 775 850 883 882 +386 389 359 359 411 483 632 592 673 437 1098 1080 1027 1038 1050 1038 1053 1139 1130 1151 +441 430 424 397 491 654 753 538 689 458 1192 1109 1097 1083 1141 1083 1144 1218 1164 1204 +476 467 512 430 609 849 890 486 681 480 1307 1149 1181 1139 1250 1139 1254 1318 1212 1275 +424 397 650 372 853 1193 1114 417 593 404 1460 1122 1246 1141 1381 1140 1387 1447 1215 1337 +349 295 695 283 1006 1292 1039 303 374 291 1260 828 1032 886 1188 884 1195 1203 908 1050 +311 191 627 188 1029 1190 807 183 220 178 912 475 723 564 869 561 875 825 521 657 +249 113 562 117 902 925 508 96 114 96 548 192 432 288 545 285 542 452 202 300 +142 46 265 48 367 333 140 41 44 42 152 75 123 77 159 77 159 109 75 76 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +16 16 15 15 16 16 16 17 16 17 30 30 30 30 30 30 30 30 30 30 +33 33 29 31 33 33 33 34 33 34 60 61 61 61 60 61 60 60 61 61 +103 186 79 153 89 88 94 249 149 285 205 288 236 268 210 268 209 223 281 255 +128 187 102 165 114 115 134 301 219 300 304 383 324 357 302 357 302 329 384 363 +151 160 133 147 148 152 163 183 176 179 309 321 309 315 307 315 307 315 323 320 +139 142 126 132 141 146 153 157 157 153 282 285 280 282 280 282 280 285 287 287 +145 146 134 135 151 157 164 161 164 155 299 298 294 295 296 295 296 301 301 302 +151 145 157 134 186 271 324 212 290 161 485 439 432 424 456 424 458 500 469 492 +150 135 182 126 224 323 341 169 253 141 469 391 407 387 440 387 442 473 421 452 +176 153 264 144 345 477 444 169 250 155 570 432 483 440 537 440 540 563 469 519 +240 197 457 188 654 836 673 203 255 194 816 540 671 578 770 576 775 779 590 681 +324 199 646 195 1048 1208 820 190 228 185 936 494 745 584 893 582 899 847 541 678 +264 120 583 123 926 948 521 101 121 100 572 206 453 306 568 304 566 474 219 318 +153 53 281 54 389 353 150 49 51 50 166 86 137 87 173 87 174 121 86 87 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 54 7 38 7 7 7 13 7 58 9 25 18 25 10 25 10 9 19 10 +183 550 76 330 77 74 75 346 88 669 133 394 285 369 189 370 174 153 334 246 +159 487 116 329 125 121 126 494 167 676 309 547 424 508 341 508 338 344 508 430 +166 310 129 259 142 140 151 415 243 477 366 511 422 476 376 477 375 398 498 454 +201 299 165 268 184 186 210 493 352 492 521 652 554 609 517 609 516 561 654 618 +202 240 173 219 196 204 243 476 399 412 592 682 595 637 575 638 575 634 698 679 +173 192 155 175 176 199 270 352 348 270 526 557 504 525 503 525 504 556 580 579 +231 235 218 216 250 310 428 397 463 273 748 733 690 699 709 699 711 780 773 790 +220 211 230 196 270 385 457 305 410 233 712 647 638 627 672 627 674 731 689 720 +504 496 544 457 649 911 954 510 722 509 1408 1236 1271 1226 1347 1225 1351 1420 1304 1372 +422 396 628 370 815 1119 1044 415 572 403 1392 1083 1198 1102 1319 1101 1325 1378 1167 1277 +366 310 716 297 1025 1307 1049 318 386 306 1292 859 1065 919 1221 917 1228 1233 938 1080 +356 215 713 212 1151 1325 896 206 247 199 1028 542 820 642 982 639 989 930 594 743 +282 128 608 132 955 977 538 107 129 106 601 225 479 329 596 327 596 500 238 340 +163 57 298 59 413 374 159 53 55 55 177 92 147 93 186 93 186 130 92 93 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 53 7 37 7 7 7 13 7 56 9 25 18 24 10 25 10 9 18 10 +201 605 81 364 82 79 80 376 93 735 145 433 313 405 206 406 192 167 366 268 +216 788 167 517 176 171 178 792 226 1097 472 874 668 808 528 810 523 533 807 677 +296 720 242 591 262 259 275 1036 512 1212 818 1233 981 1136 849 1137 844 911 1195 1072 +397 616 343 560 383 384 408 1138 762 1135 1178 1504 1263 1397 1170 1398 1168 1279 1506 1419 +427 484 369 446 417 431 486 1184 962 1000 1472 1718 1479 1597 1425 1599 1425 1587 1762 1710 +469 493 419 452 477 509 754 1091 1075 747 1698 1807 1621 1695 1619 1696 1622 1805 1887 1883 +1140 1098 946 1000 1072 951 1019 984 1013 965 1818 1825 1845 1841 1835 1839 1836 1802 1805 1797 +1026 1049 804 953 892 990 1040 881 997 1010 1773 1781 1781 1781 1779 1780 1779 1773 1777 1774 +632 636 642 584 759 1022 1062 621 828 651 1603 1442 1476 1434 1546 1432 1550 1614 1506 1569 +425 399 627 373 811 1105 1031 417 569 406 1384 1082 1194 1100 1313 1099 1319 1369 1163 1271 +316 264 633 253 907 1159 925 271 332 261 1135 747 932 801 1071 799 1078 1082 817 944 +324 200 622 196 981 1124 766 191 229 185 896 491 722 574 858 572 863 813 534 658 +269 125 562 128 872 890 493 104 126 103 561 222 450 316 556 313 556 470 234 325 +157 55 284 57 393 355 151 50 53 51 173 90 144 92 181 92 181 128 90 91 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 12 3 9 4 3 3 6 4 13 5 8 7 8 5 8 5 5 7 5 +87 200 44 132 48 46 47 135 55 239 77 159 124 151 93 151 90 83 139 111 +162 491 118 335 127 123 128 491 168 675 314 552 430 513 347 514 344 349 512 434 +241 529 192 438 210 207 221 737 386 859 611 893 721 827 631 828 628 673 867 782 +339 516 288 468 322 324 348 911 621 911 960 1214 1026 1131 954 1132 952 1038 1215 1147 +222 263 190 241 215 223 263 551 456 474 686 795 690 741 666 742 666 736 813 790 +193 208 172 191 196 215 300 409 403 301 619 657 592 618 592 618 593 656 684 683 +561 556 499 510 569 613 793 744 837 567 1411 1392 1341 1352 1363 1351 1366 1450 1441 1462 +686 687 585 628 664 845 944 698 874 692 1543 1479 1470 1458 1505 1458 1507 1565 1522 1554 +520 513 566 473 678 960 1003 525 750 527 1487 1300 1340 1290 1421 1289 1426 1499 1373 1447 +96 92 91 85 104 108 107 95 100 93 187 181 183 181 186 181 186 187 182 185 +47 46 44 43 49 50 49 46 47 47 88 87 87 87 88 87 88 88 87 87 +87 76 91 71 108 113 101 74 81 73 165 148 158 152 163 152 164 161 150 155 +59 49 63 46 75 76 63 46 49 46 103 91 98 94 102 94 102 99 91 94 +16 14 17 13 20 19 16 12 13 13 27 24 26 25 27 25 27 26 24 24 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +18 18 16 16 17 17 17 18 17 18 32 32 32 32 32 32 32 32 32 32 +141 366 102 260 110 106 111 365 145 495 258 425 339 398 281 398 279 282 396 342 +193 380 150 318 164 162 174 508 286 590 447 631 519 588 460 589 458 487 614 558 +129 189 103 167 115 116 134 298 216 300 306 385 327 359 305 359 304 330 385 364 +218 259 187 237 211 219 258 543 448 469 678 785 682 733 658 734 658 727 804 781 +259 278 231 256 263 287 381 498 492 383 771 813 741 770 740 770 741 811 843 842 +287 292 274 270 314 397 545 506 590 349 980 960 904 916 929 916 931 1022 1013 1035 +279 268 291 249 339 504 605 386 538 294 963 873 861 846 908 846 912 989 931 974 +277 252 345 235 418 611 641 307 466 262 932 782 813 774 878 774 882 939 839 898 +203 173 280 162 354 468 436 191 269 173 592 465 512 473 561 473 563 584 498 543 +162 136 187 127 228 258 229 139 165 132 349 296 321 303 340 303 341 341 305 322 +148 116 181 109 232 252 201 114 128 113 291 234 266 245 286 244 286 279 240 256 +88 67 103 63 129 130 99 64 68 65 149 123 140 129 148 129 149 141 124 130 +81 31 133 31 176 159 73 24 27 25 94 51 81 57 97 57 97 74 51 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 +32 33 27 30 30 30 30 32 31 34 56 58 57 58 56 58 56 56 57 57 +65 70 55 64 61 60 62 71 65 75 117 123 120 122 118 122 118 118 122 120 +119 208 90 174 99 97 107 267 164 307 237 326 272 305 244 306 243 256 318 291 +244 370 200 332 222 224 251 610 427 614 654 822 698 767 651 768 649 705 822 776 +258 306 221 280 249 259 303 603 503 526 771 886 776 830 750 831 750 824 906 881 +130 141 115 128 132 145 198 267 262 200 390 414 374 390 373 390 374 413 432 431 +305 307 283 283 324 391 552 510 597 344 995 975 921 932 945 932 948 1036 1026 1048 +245 236 246 219 287 450 547 331 483 256 863 781 770 756 813 756 816 888 834 874 +218 201 278 187 343 527 555 238 388 208 787 651 680 644 739 643 742 794 703 757 +211 183 333 172 432 597 550 200 297 184 725 546 612 558 682 557 685 713 593 655 +228 183 426 175 595 750 600 187 235 179 750 505 623 540 711 538 715 716 548 628 +276 171 519 167 801 910 619 163 193 160 734 411 597 479 705 477 710 668 446 543 +251 116 523 118 804 819 448 98 115 98 516 206 414 291 509 289 512 431 217 296 +214 63 402 66 561 503 200 57 60 58 225 101 184 103 238 103 238 159 100 102 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +51 113 11 79 11 10 10 22 11 118 13 49 34 48 14 48 14 13 34 15 +244 718 96 438 96 92 93 427 108 864 182 517 377 486 252 487 246 211 437 321 +231 837 179 559 188 182 189 820 234 1146 508 926 715 860 568 861 562 569 854 719 +292 702 237 579 257 254 269 980 482 1155 796 1189 953 1099 828 1101 823 882 1151 1034 +386 604 332 549 370 372 394 1075 717 1082 1135 1444 1219 1345 1130 1346 1128 1229 1443 1360 +551 561 491 519 560 560 562 1052 893 936 1442 1606 1450 1527 1413 1528 1413 1517 1633 1598 +864 806 768 739 880 826 866 980 973 862 1672 1694 1658 1672 1656 1671 1657 1693 1708 1708 +1068 1032 892 940 1013 914 985 951 982 923 1747 1752 1765 1762 1757 1761 1758 1736 1739 1733 +969 988 766 898 855 956 1004 849 961 959 1707 1709 1708 1708 1709 1706 1709 1710 1709 1710 +686 697 675 639 796 1031 1063 667 845 713 1639 1500 1531 1494 1591 1492 1595 1647 1554 1609 +512 496 715 462 911 1202 1122 508 642 508 1556 1251 1366 1271 1484 1270 1490 1537 1331 1438 +377 321 709 306 990 1242 995 327 386 316 1264 865 1058 922 1201 920 1207 1208 935 1065 +317 188 642 185 1010 1151 768 180 211 176 897 476 719 564 860 562 865 810 521 647 +315 139 662 143 1017 1034 561 115 139 114 650 254 521 364 642 361 646 541 268 369 +238 70 449 73 627 561 221 64 67 66 250 111 205 112 264 112 265 176 111 112 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +57 126 12 90 11 11 11 24 12 132 14 54 38 53 15 53 15 14 38 16 +246 719 95 440 96 92 93 424 108 862 183 517 378 486 253 487 247 211 436 321 +220 791 164 532 172 167 173 770 222 1083 473 870 669 807 531 809 525 531 801 672 +306 718 249 595 270 267 282 991 494 1169 822 1214 980 1125 854 1127 849 907 1176 1058 +392 611 338 555 377 378 401 1074 718 1084 1144 1450 1228 1353 1140 1354 1137 1237 1449 1367 +246 293 210 268 237 246 289 533 449 472 692 789 697 742 675 743 675 736 805 784 +241 260 215 238 244 267 356 473 465 362 736 777 708 736 707 736 708 775 807 805 +311 314 291 290 333 402 547 509 587 358 984 965 914 925 937 925 939 1022 1014 1034 +343 332 339 307 393 593 709 445 629 357 1139 1039 1026 1009 1079 1009 1082 1169 1103 1151 +362 335 434 313 527 760 793 388 579 347 1168 991 1030 983 1106 982 1110 1177 1058 1128 +219 187 304 175 382 501 465 206 287 187 640 505 556 514 608 514 610 631 540 587 +229 184 370 175 497 611 497 188 234 180 652 468 556 494 622 493 625 625 500 559 +90 78 94 73 112 116 104 76 84 75 170 153 163 157 169 156 169 167 155 160 +41 37 41 34 47 47 43 35 37 35 73 68 72 70 73 69 73 72 68 70 +26 20 28 19 34 32 25 19 19 19 40 35 39 36 40 36 40 38 35 36 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 +12 12 11 11 12 12 12 12 12 12 22 22 22 22 22 22 22 22 22 22 +68 74 58 67 64 62 64 74 68 79 121 128 125 127 122 127 122 122 127 125 +103 113 87 103 97 96 100 118 108 124 192 204 197 201 193 201 193 194 203 199 +131 143 114 131 126 126 134 157 146 159 258 272 262 267 258 267 258 262 272 268 +153 162 135 150 151 154 164 184 177 181 313 324 314 319 311 319 311 318 326 324 +168 173 152 161 170 177 189 199 198 190 354 360 351 354 350 354 351 360 364 363 +175 175 162 163 183 194 206 201 207 189 376 374 368 369 370 369 371 380 379 382 +116 115 108 107 121 125 127 121 124 119 230 227 227 226 228 226 228 230 229 230 +165 156 164 146 188 207 210 172 190 160 359 340 344 339 352 338 353 360 347 355 +150 137 154 128 179 198 192 145 164 137 319 293 303 295 313 295 313 317 300 309 +129 113 136 106 161 174 161 115 129 110 262 235 248 239 257 239 258 258 240 248 +100 85 107 80 128 134 117 82 91 81 189 167 180 172 187 172 188 185 170 176 +34 31 33 29 38 38 35 30 32 31 61 58 60 59 61 59 61 60 58 59 +81 30 136 30 182 163 72 24 26 25 92 47 79 53 95 53 96 71 47 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 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 25 6 19 6 6 6 9 6 26 8 15 13 15 9 15 9 8 13 9 +71 144 38 100 42 41 41 99 48 170 65 118 95 113 75 113 74 69 105 86 +96 197 66 147 73 70 74 192 96 257 146 225 184 212 157 212 156 157 210 184 +101 111 86 101 96 94 98 116 107 122 189 201 194 198 190 198 190 192 199 196 +119 127 104 117 115 116 121 138 130 140 231 241 234 238 231 238 231 234 241 238 +93 94 84 87 94 94 96 99 97 99 178 180 178 179 178 179 178 179 180 180 +87 87 79 81 88 89 90 90 90 90 166 166 166 166 166 166 166 166 167 167 +131 131 120 122 135 139 143 141 143 137 262 261 259 260 260 260 260 264 263 264 +146 144 138 134 155 164 168 156 163 150 302 296 296 295 299 294 299 304 300 303 +110 106 103 99 116 121 121 111 116 109 216 211 212 211 214 211 214 216 213 215 +75 73 70 68 79 81 80 75 77 74 143 140 141 140 142 140 142 143 141 142 +123 98 190 92 258 314 257 100 125 95 320 226 271 240 305 239 306 306 242 272 +60 55 58 52 67 68 64 55 58 54 111 105 109 107 110 106 111 110 106 108 +59 50 62 46 73 74 63 46 50 47 103 92 99 95 103 95 103 100 92 95 +17 15 17 14 20 19 17 13 14 14 28 26 28 27 29 27 29 28 26 27 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 +14 14 13 13 14 14 14 14 14 14 26 26 26 26 26 26 26 26 26 26 +19 19 17 17 19 19 19 19 19 19 35 35 35 35 35 35 35 35 35 35 +41 41 37 38 42 42 42 41 41 42 76 77 76 77 76 76 76 76 77 77 +83 83 74 77 83 84 85 86 85 87 157 158 157 157 156 157 156 157 158 158 +137 139 124 129 139 142 148 152 151 149 275 278 273 275 273 275 273 278 280 279 +139 139 127 129 143 148 153 150 152 146 280 279 276 277 278 277 278 282 281 282 +100 99 92 92 104 106 107 103 105 102 195 193 193 193 194 192 194 195 194 195 +178 166 179 156 206 231 234 186 209 171 397 372 378 371 388 371 389 398 382 391 +173 154 187 145 220 249 240 166 194 154 387 347 362 350 378 350 379 385 357 371 +115 103 118 97 138 147 138 105 115 101 229 210 219 213 226 213 226 226 213 219 +142 112 169 105 211 227 184 109 123 108 276 226 255 236 271 236 272 265 231 246 +115 73 173 70 238 240 152 67 73 68 201 129 178 149 200 148 201 181 132 150 +34 25 38 24 46 43 31 24 24 24 50 43 48 45 51 45 51 47 42 44 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +66 145 14 108 13 12 12 27 13 151 15 63 44 62 17 62 17 15 44 18 +226 643 86 401 86 82 84 368 97 765 166 462 340 436 229 436 224 190 389 286 +77 222 53 152 59 57 59 212 75 298 127 230 178 214 142 214 140 141 211 177 +98 218 75 177 83 82 87 289 149 344 219 332 265 307 229 307 227 243 320 286 +191 307 156 275 174 175 194 511 344 521 534 683 576 637 533 637 532 578 682 641 +508 536 451 497 513 516 527 1023 854 911 1397 1569 1408 1489 1369 1489 1369 1474 1595 1558 +623 609 555 558 635 625 722 894 881 732 1481 1531 1449 1483 1447 1483 1448 1527 1565 1562 +611 605 541 554 617 655 839 789 883 610 1527 1509 1458 1469 1480 1469 1483 1566 1557 1577 +581 578 512 529 585 811 931 630 842 590 1537 1444 1433 1417 1483 1416 1486 1566 1504 1549 +483 473 536 436 643 899 930 490 689 486 1407 1228 1268 1220 1345 1219 1349 1414 1295 1364 +386 356 589 334 755 1016 934 374 505 361 1287 1001 1111 1022 1221 1020 1226 1267 1074 1174 +340 286 643 273 887 1102 877 290 341 281 1132 777 951 830 1077 828 1083 1081 838 953 +281 173 504 169 745 836 570 164 195 161 710 420 589 482 686 480 689 649 450 536 +292 134 576 136 854 862 472 111 132 111 573 252 470 341 568 339 572 484 262 345 +230 58 418 63 567 502 194 37 45 39 239 91 197 111 252 110 253 168 89 98 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +71 156 15 116 14 14 14 29 14 162 17 68 48 67 19 67 19 17 48 20 +242 665 95 420 96 92 93 383 108 788 188 489 366 463 252 464 247 212 415 311 +243 839 179 570 188 182 189 793 231 1125 512 922 719 860 574 861 568 570 849 716 +315 767 256 635 277 274 289 1031 498 1232 864 1282 1036 1189 900 1191 895 953 1238 1112 +421 659 365 599 407 408 428 1123 745 1145 1224 1544 1315 1444 1222 1445 1219 1318 1540 1453 +628 625 565 579 646 642 623 1024 887 940 1481 1612 1490 1551 1460 1551 1460 1539 1631 1603 +1024 926 910 848 1047 954 918 965 961 916 1721 1711 1727 1721 1727 1719 1727 1711 1703 1704 +1259 1205 1031 1095 1170 995 991 969 962 1036 1769 1787 1838 1827 1813 1825 1813 1729 1738 1718 +1124 1161 858 1051 947 971 977 911 958 1107 1708 1765 1771 1779 1743 1778 1741 1695 1731 1705 +827 867 761 790 879 1058 1078 785 903 884 1731 1652 1671 1649 1705 1647 1707 1735 1683 1713 +525 512 751 476 954 1253 1159 521 650 524 1633 1312 1436 1335 1559 1334 1565 1611 1394 1506 +394 338 797 323 1110 1386 1094 343 395 333 1405 949 1174 1018 1335 1015 1343 1339 1028 1175 +398 233 781 230 1187 1336 890 221 261 215 1083 598 882 702 1042 700 1049 980 647 792 +347 148 730 152 1096 1105 589 122 145 122 701 278 566 397 695 395 699 584 292 401 +270 75 501 80 687 610 236 67 71 69 283 119 235 133 299 131 301 200 118 121 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +78 170 16 127 15 14 14 31 15 175 18 74 52 72 21 73 20 18 51 21 +242 662 95 420 96 92 93 378 108 783 188 488 366 462 253 463 247 212 414 310 +236 796 167 545 176 169 176 748 223 1068 483 872 679 813 542 814 536 537 802 675 +312 765 254 633 275 271 286 1023 491 1225 859 1274 1030 1183 895 1185 890 946 1230 1105 +415 656 360 596 402 402 422 1115 737 1139 1215 1535 1307 1436 1214 1437 1211 1309 1531 1444 +626 625 563 579 644 640 622 1021 884 939 1479 1610 1489 1550 1458 1550 1458 1537 1629 1601 +1017 920 904 842 1040 949 914 963 959 913 1716 1706 1721 1716 1721 1714 1721 1707 1700 1700 +1262 1208 1033 1097 1173 998 992 970 963 1039 1770 1788 1840 1829 1815 1826 1814 1730 1739 1718 +1184 1227 893 1110 982 983 977 936 966 1163 1724 1799 1807 1818 1769 1816 1767 1706 1754 1719 +723 742 696 679 815 1014 1036 700 842 758 1637 1524 1550 1520 1599 1518 1602 1642 1567 1611 +479 458 701 428 892 1178 1086 472 602 468 1525 1213 1334 1236 1453 1235 1459 1503 1293 1401 +357 302 729 289 1014 1267 997 306 357 297 1279 860 1067 923 1216 921 1223 1218 932 1067 +368 216 716 213 1083 1217 811 205 242 201 990 551 809 646 954 643 960 897 595 726 +331 144 680 148 1012 1019 547 119 142 119 659 272 536 381 654 379 658 551 285 384 +253 73 463 77 628 557 218 64 68 66 267 116 223 131 282 129 283 192 115 118 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +164 425 67 275 69 66 67 247 78 501 126 313 237 297 166 298 163 141 266 201 +132 307 91 226 99 96 100 292 128 401 224 355 289 335 244 335 242 242 331 288 +284 672 229 557 248 244 258 887 435 1062 756 1112 903 1034 788 1036 783 831 1074 966 +382 595 328 540 366 367 388 987 660 1010 1087 1366 1167 1280 1086 1281 1083 1168 1362 1285 +576 592 515 549 588 587 582 1036 879 941 1464 1619 1476 1548 1440 1548 1440 1532 1641 1607 +978 891 870 816 1001 921 905 975 969 907 1720 1720 1720 1720 1719 1718 1719 1720 1719 1719 +1207 1158 994 1053 1129 977 995 970 974 1009 1778 1792 1832 1823 1812 1821 1812 1747 1754 1738 +1239 1288 928 1164 1016 1029 1031 972 1015 1216 1831 1908 1916 1928 1878 1926 1876 1813 1862 1827 +846 893 758 813 869 1006 1019 799 881 911 1662 1616 1627 1614 1647 1613 1648 1664 1634 1651 +532 521 730 484 918 1184 1098 530 640 534 1569 1282 1393 1304 1503 1302 1508 1548 1355 1455 +395 339 768 324 1059 1312 1039 343 395 334 1352 930 1139 994 1289 992 1296 1291 1002 1138 +391 231 749 227 1124 1259 842 218 258 213 1038 585 851 683 1001 681 1007 942 631 766 +340 147 699 151 1037 1043 559 122 144 122 676 280 550 392 671 389 675 565 292 394 +263 72 484 77 651 576 222 62 66 64 273 113 227 131 288 129 289 194 113 116 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +30 32 26 29 29 29 29 31 30 33 54 56 55 55 54 55 54 54 55 55 +74 81 62 74 69 67 69 81 74 87 132 140 136 139 133 139 133 133 138 136 +65 67 57 62 64 64 65 69 66 70 121 123 122 123 121 123 121 121 123 122 +85 87 76 81 84 85 86 91 88 92 161 164 162 163 161 163 161 162 164 163 +101 103 90 95 101 102 104 108 106 108 193 196 194 195 193 195 193 195 196 196 +155 171 137 157 156 174 230 303 296 239 461 489 445 463 444 463 444 486 507 505 +207 212 198 196 228 280 365 343 390 253 656 644 610 617 625 617 626 681 676 689 +161 158 153 147 173 184 190 174 183 165 340 333 332 330 336 330 336 342 337 341 +170 156 216 145 264 391 406 183 285 161 585 486 509 482 551 482 553 588 522 561 +247 217 418 205 540 745 676 233 341 219 914 685 773 702 861 701 865 897 742 822 +198 160 387 153 535 666 523 162 197 157 662 443 551 476 629 475 633 630 480 551 +131 105 150 99 183 194 161 101 114 100 251 211 234 220 247 219 248 242 215 227 +197 99 362 98 522 524 294 87 98 88 371 185 312 237 369 236 371 319 191 238 +100 38 161 38 207 185 83 30 33 31 113 61 100 71 118 70 118 89 60 65 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 30 6 24 7 6 6 11 7 31 9 18 15 18 10 18 10 9 14 10 +79 153 42 109 46 44 45 103 52 178 73 129 105 124 84 124 83 77 114 94 +142 361 98 262 106 102 105 338 134 474 249 409 330 385 273 385 271 271 379 327 +224 490 176 409 192 189 200 629 325 752 553 797 654 744 575 745 572 603 770 696 +368 598 315 542 350 351 372 1007 658 1035 1092 1389 1179 1298 1092 1299 1089 1178 1384 1302 +396 446 347 413 393 399 426 861 707 769 1159 1320 1172 1246 1135 1247 1135 1229 1342 1306 +257 277 229 254 260 281 376 518 504 394 826 876 797 829 794 830 795 870 907 904 +655 646 575 592 657 669 801 764 828 641 1439 1428 1395 1402 1408 1401 1410 1464 1458 1471 +475 469 433 431 497 720 837 543 749 486 1392 1293 1282 1265 1335 1265 1338 1421 1356 1403 +641 647 652 594 772 1003 1028 631 801 663 1606 1458 1493 1452 1556 1451 1559 1612 1513 1570 +418 390 634 365 807 1075 984 406 533 397 1381 1084 1199 1106 1312 1105 1318 1359 1158 1261 +317 253 602 243 821 1015 802 256 316 244 1051 720 884 770 1002 768 1007 1002 775 882 +318 192 576 187 842 938 635 181 215 177 804 476 668 547 777 545 781 733 508 605 +269 126 512 127 742 744 410 106 124 106 512 239 426 316 509 314 512 435 247 318 +214 57 379 61 495 437 171 39 45 40 221 89 186 112 233 111 234 160 87 96 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +18 18 16 17 18 18 18 18 18 19 33 33 33 33 33 33 33 33 33 33 +53 55 46 50 51 50 51 55 52 57 95 98 96 97 95 97 95 95 97 96 +67 69 59 63 66 65 66 70 68 72 123 126 125 126 124 126 124 124 126 125 +120 182 97 161 110 110 122 276 194 285 286 361 308 338 286 338 285 307 360 339 +152 188 127 171 142 149 179 323 271 292 412 473 417 445 403 445 403 438 482 468 +179 198 159 182 180 201 263 346 337 275 537 569 519 540 517 540 518 565 589 587 +156 159 148 147 171 210 277 260 296 189 488 479 453 459 465 459 466 508 504 514 +134 132 125 123 141 147 150 141 146 137 271 267 266 265 268 265 268 272 269 271 +191 178 196 167 226 256 260 201 229 183 440 409 416 407 429 407 430 441 420 432 +114 108 110 101 126 132 130 112 119 109 226 216 220 217 224 217 224 226 219 222 +185 146 277 138 361 432 353 148 184 141 477 353 414 372 458 371 460 458 374 413 +132 90 196 86 272 299 215 87 100 86 276 185 238 204 268 204 269 256 194 220 +143 79 239 77 334 335 197 70 78 71 255 143 219 174 253 173 254 223 146 175 +128 40 219 41 283 250 103 31 34 32 134 61 115 74 141 74 141 100 60 65 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +88 191 18 147 16 15 15 34 16 196 19 82 59 81 23 82 22 19 57 23 +250 673 95 433 95 91 92 370 106 789 189 492 371 467 256 468 250 212 416 310 +236 788 162 544 169 163 169 723 212 1048 470 854 666 798 530 799 525 522 783 658 +294 719 237 595 256 252 266 933 445 1128 798 1179 958 1097 834 1099 829 877 1137 1021 +347 569 296 515 329 329 351 947 617 977 1029 1310 1112 1225 1030 1226 1027 1110 1305 1227 +449 497 396 461 449 454 474 943 775 847 1287 1458 1302 1381 1262 1382 1262 1361 1481 1443 +623 607 555 556 634 624 695 840 826 714 1406 1448 1383 1410 1380 1410 1381 1443 1474 1471 +1018 985 854 897 974 881 929 902 921 892 1635 1640 1656 1653 1648 1651 1649 1622 1625 1618 +785 791 648 722 734 873 938 747 881 789 1585 1549 1546 1539 1565 1538 1566 1597 1573 1590 +608 611 624 561 738 958 980 602 764 626 1535 1390 1424 1385 1486 1383 1489 1540 1443 1499 +211 178 293 167 364 471 432 195 267 177 609 483 532 493 580 492 582 599 514 558 +308 256 582 244 793 975 771 259 306 251 1013 700 856 748 966 746 971 966 753 853 +309 187 564 183 825 918 619 177 208 174 779 458 648 528 754 526 758 710 490 585 +149 82 249 80 347 348 204 73 81 74 267 151 229 183 265 182 266 233 154 184 +72 34 106 34 133 120 60 30 31 31 86 55 79 62 89 62 89 73 55 58 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +92 198 19 153 17 16 16 36 17 203 20 86 62 85 25 86 24 20 60 25 +234 616 91 399 92 87 89 340 102 720 182 455 346 433 242 434 237 202 386 291 +246 803 167 557 175 168 174 734 219 1064 484 873 683 816 546 817 540 537 801 674 +279 668 224 554 242 238 251 860 415 1041 743 1092 889 1017 775 1019 771 814 1053 946 +320 525 270 474 300 300 322 866 565 895 940 1198 1017 1120 941 1121 939 1014 1193 1121 +457 499 404 462 458 462 479 885 739 804 1230 1379 1243 1312 1208 1312 1208 1294 1398 1365 +670 646 597 592 683 666 720 846 833 738 1424 1459 1406 1428 1403 1427 1404 1454 1480 1477 +294 298 275 275 315 376 508 477 547 339 947 931 884 894 904 894 906 983 975 994 +239 230 242 213 281 404 473 308 421 249 774 708 701 689 736 689 738 792 749 780 +227 207 279 193 337 478 493 243 357 214 734 621 647 617 695 616 698 738 662 706 +390 360 594 338 754 1002 915 377 497 365 1289 1011 1120 1033 1226 1032 1231 1268 1081 1177 +319 266 627 254 857 1058 832 269 316 261 1089 745 917 798 1039 797 1044 1039 803 914 +105 71 162 66 232 255 180 68 77 68 217 138 184 155 211 154 212 200 145 169 +285 127 562 129 819 820 442 108 124 108 548 242 452 329 545 327 548 461 251 330 +249 68 451 72 587 518 200 58 62 59 256 106 216 129 270 128 271 185 106 109 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +74 157 16 122 14 14 14 29 14 161 17 69 50 69 21 69 20 17 48 21 +145 355 61 236 64 60 61 203 71 414 113 265 204 252 146 253 143 124 226 173 +103 206 69 157 76 73 76 193 98 263 154 235 195 223 166 223 165 165 219 193 +126 221 94 186 103 101 109 265 161 313 249 339 286 319 257 319 256 266 328 301 +145 215 114 191 127 127 145 314 226 325 344 428 369 403 344 403 344 368 427 403 +151 188 126 171 142 148 178 320 268 291 410 471 416 444 402 444 401 436 479 465 +187 202 166 186 189 205 275 384 372 293 604 643 583 608 581 608 581 637 666 663 +136 138 127 127 147 179 241 226 260 161 428 420 397 402 407 402 408 445 442 451 +139 134 140 123 165 238 280 181 248 144 441 400 396 389 417 389 418 451 425 444 +137 126 168 116 205 290 299 148 216 130 427 358 374 356 403 356 405 429 383 410 +155 130 217 122 274 355 325 143 197 130 445 349 386 356 423 356 425 438 372 406 +145 114 221 107 292 349 284 115 143 110 373 271 321 286 357 286 359 357 288 320 +134 92 199 87 275 301 216 88 101 87 279 188 242 208 272 207 273 259 197 223 +103 62 157 60 215 215 133 57 62 58 173 107 152 125 172 125 173 154 109 126 +71 32 107 31 134 120 59 26 28 27 83 50 74 57 85 57 86 68 49 52 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 +33 34 28 31 31 31 31 33 32 35 58 60 59 60 58 60 58 58 59 59 +103 205 69 157 76 73 76 192 98 262 154 234 194 222 166 222 165 164 219 192 +122 214 90 180 100 97 105 256 155 303 238 326 275 307 246 307 245 255 316 289 +111 116 97 107 108 108 112 123 118 125 212 219 214 217 212 217 212 214 219 217 +133 164 112 149 128 132 154 288 237 261 361 417 366 392 353 392 353 384 424 411 +215 233 191 214 217 235 322 461 445 345 732 781 707 737 703 738 704 774 810 806 +352 353 323 325 369 429 592 555 639 387 1122 1104 1050 1062 1073 1062 1075 1162 1154 1175 +350 342 335 315 386 579 683 428 605 361 1140 1047 1038 1021 1086 1021 1089 1166 1105 1149 +390 373 463 346 558 797 822 403 589 384 1254 1075 1117 1069 1193 1068 1197 1259 1140 1209 +301 269 473 253 601 805 731 286 392 271 1022 790 880 808 969 807 973 1004 847 927 +246 196 455 187 614 752 594 198 243 190 785 544 664 581 750 580 754 749 584 661 +180 125 262 119 353 386 281 120 138 119 380 267 333 291 371 291 373 355 278 311 +137 85 201 82 269 269 170 78 85 79 236 156 210 178 235 177 236 213 158 179 +71 32 107 31 134 120 58 26 28 27 82 49 74 56 85 56 85 67 48 51 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 110 12 86 11 10 10 21 11 112 13 49 36 49 16 49 15 13 35 16 +189 480 74 316 76 72 73 264 84 559 146 356 273 340 192 340 189 161 302 229 +128 342 84 244 91 88 91 312 115 447 214 368 293 346 238 346 236 234 339 288 +249 564 196 470 213 209 222 709 354 858 629 910 747 850 655 851 652 685 877 791 +363 586 310 530 345 345 366 946 620 982 1049 1325 1132 1243 1051 1244 1049 1127 1318 1242 +440 489 388 453 440 444 464 874 724 795 1211 1363 1226 1296 1190 1296 1189 1275 1383 1348 +883 817 787 748 905 850 855 955 944 872 1659 1673 1652 1661 1650 1660 1651 1671 1681 1680 +1100 1060 916 963 1045 930 974 946 963 945 1732 1740 1763 1758 1752 1756 1752 1714 1718 1709 +1146 1185 873 1072 967 1009 1023 937 997 1132 1795 1845 1850 1858 1825 1856 1824 1783 1815 1792 +686 699 678 641 796 1000 1020 671 815 716 1622 1496 1526 1492 1580 1491 1583 1626 1543 1591 +471 450 696 420 879 1153 1055 463 582 459 1510 1205 1325 1229 1441 1228 1447 1487 1281 1386 +361 306 700 292 950 1165 919 309 358 301 1219 845 1033 904 1165 902 1171 1164 908 1028 +365 216 684 212 1000 1109 742 204 239 200 940 546 779 632 909 630 914 854 584 700 +322 141 634 143 919 918 493 118 137 119 618 274 510 372 614 370 618 520 283 373 +284 67 512 74 656 576 217 45 53 48 284 104 238 139 300 138 302 202 102 112 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +107 227 22 176 20 19 19 40 20 231 23 99 71 98 29 98 28 23 69 30 +256 666 98 435 98 93 95 359 109 774 197 492 375 469 263 470 257 218 417 313 +141 357 94 260 102 98 101 325 128 463 240 397 321 375 265 375 263 261 368 316 +132 229 98 193 108 105 113 272 166 322 260 352 298 333 268 333 267 278 341 313 +288 476 241 429 267 267 289 768 500 799 837 1067 906 998 838 999 836 901 1061 997 +383 443 335 411 378 384 412 849 688 764 1147 1312 1164 1239 1125 1240 1124 1217 1333 1295 +472 498 421 458 477 505 696 1039 1000 759 1706 1819 1648 1719 1640 1720 1641 1801 1885 1876 +1238 1185 1018 1076 1160 1001 1022 995 1001 1030 1836 1849 1890 1881 1871 1879 1870 1804 1810 1794 +1131 1167 864 1056 957 1003 1018 930 992 1117 1784 1831 1836 1843 1813 1841 1811 1773 1803 1782 +810 849 753 774 871 1040 1055 776 882 867 1714 1635 1654 1632 1687 1631 1689 1716 1664 1694 +521 508 746 473 938 1217 1116 517 629 519 1612 1306 1427 1330 1543 1329 1549 1589 1382 1488 +401 345 806 331 1100 1351 1062 349 398 341 1407 969 1190 1039 1345 1036 1352 1343 1043 1184 +415 240 801 237 1178 1307 868 227 265 222 1096 623 904 728 1059 725 1065 993 669 809 +372 156 753 160 1098 1097 581 130 152 130 724 308 594 427 720 425 724 606 319 428 +310 85 557 90 717 632 244 74 78 76 317 133 269 164 335 162 336 231 132 136 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +122 262 23 203 21 21 21 44 21 267 24 112 80 111 31 111 30 24 76 32 +277 730 103 476 103 97 99 387 113 848 208 534 405 508 281 509 275 231 450 336 +176 504 116 358 124 119 123 454 155 659 314 548 435 515 352 515 348 345 503 427 +161 274 120 234 132 128 138 323 200 382 325 433 370 410 335 410 334 346 420 387 +263 423 215 380 238 238 263 656 440 682 728 920 786 863 729 863 728 781 914 861 +432 484 380 448 430 435 456 866 714 789 1198 1352 1214 1284 1177 1285 1177 1262 1371 1336 +816 765 727 700 834 794 821 945 931 845 1627 1653 1614 1630 1612 1629 1612 1649 1667 1665 +1250 1196 1028 1085 1170 1008 1025 998 1002 1037 1841 1854 1897 1888 1878 1886 1877 1808 1814 1798 +917 934 732 849 824 931 977 823 931 915 1674 1667 1666 1664 1670 1663 1671 1677 1672 1675 +390 373 461 346 555 789 812 402 584 384 1246 1071 1113 1065 1187 1064 1191 1252 1135 1202 +377 346 583 325 739 982 892 362 479 351 1266 991 1099 1012 1204 1011 1209 1245 1059 1154 +317 264 624 253 847 1039 817 267 314 260 1080 743 913 797 1032 795 1038 1031 800 908 +327 195 611 190 890 985 659 184 215 182 837 488 695 565 810 563 814 761 522 625 +321 139 633 141 917 916 489 117 136 118 615 272 508 370 612 368 615 517 281 371 +315 72 570 79 729 640 238 48 56 51 313 110 262 151 331 149 333 221 108 119 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +36 69 12 55 12 11 11 19 12 71 15 36 29 36 17 36 17 15 28 17 +180 434 74 292 77 72 73 242 86 503 144 329 256 315 185 315 182 157 281 216 +198 536 131 387 139 134 139 483 175 697 351 595 477 560 391 561 387 384 548 468 +229 476 176 400 191 187 200 582 310 703 543 765 637 718 564 719 561 586 738 670 +209 319 169 286 188 188 209 472 328 491 531 661 570 622 532 623 531 567 657 621 +202 252 169 231 189 197 235 414 346 380 553 632 561 597 543 597 543 586 641 623 +213 237 189 218 214 237 306 403 391 326 641 679 621 645 619 646 619 672 701 698 +160 161 148 149 166 173 180 177 181 170 332 331 327 328 329 328 329 335 334 336 +165 157 171 146 200 279 323 218 289 173 520 475 470 463 494 462 495 532 503 524 +195 175 238 163 286 390 401 212 299 181 602 513 534 510 572 510 574 605 545 580 +448 425 626 396 782 1005 923 438 539 433 1338 1088 1186 1107 1281 1106 1286 1318 1150 1236 +279 222 528 213 709 868 684 225 275 215 912 630 772 674 871 673 876 870 677 767 +307 185 559 181 807 892 601 176 204 173 768 457 641 525 744 523 748 700 487 579 +274 126 518 127 741 739 403 107 123 108 514 243 429 321 512 319 514 437 251 322 +236 62 415 66 528 464 180 43 50 45 241 95 205 126 254 125 255 176 93 102 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +120 257 23 198 21 20 20 43 20 260 23 109 78 108 31 108 30 23 74 31 +247 628 96 415 97 92 93 336 107 727 193 468 359 447 254 447 249 212 397 301 +259 815 169 572 177 170 176 726 220 1069 490 881 693 826 554 827 549 542 806 678 +316 758 255 629 276 272 285 947 453 1156 840 1224 1004 1144 877 1146 872 916 1178 1061 +421 661 365 599 407 407 425 1039 686 1083 1182 1475 1272 1389 1185 1390 1182 1263 1467 1385 +604 612 543 567 621 618 603 894 784 846 1340 1440 1351 1396 1326 1396 1326 1381 1451 1429 +831 775 741 709 851 807 815 911 899 835 1575 1591 1567 1577 1565 1576 1565 1588 1600 1598 +598 591 528 541 603 620 745 714 774 594 1355 1345 1311 1319 1325 1318 1327 1381 1376 1389 +485 479 439 440 504 691 789 541 713 495 1333 1249 1240 1226 1284 1225 1287 1356 1301 1341 +419 404 484 374 581 811 834 429 607 415 1288 1117 1158 1111 1230 1111 1235 1294 1179 1245 +352 321 543 301 687 912 828 337 448 324 1176 920 1021 941 1119 940 1123 1156 984 1072 +359 304 708 291 960 1175 924 307 355 299 1231 852 1043 912 1177 910 1183 1175 915 1037 +403 235 770 231 1124 1243 828 222 260 218 1054 608 873 707 1020 704 1025 957 651 783 +366 155 728 158 1054 1052 559 129 151 129 705 307 581 422 701 419 705 592 318 423 +307 72 551 79 704 617 232 49 57 51 307 110 258 152 325 150 326 219 108 119 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +128 273 25 210 22 22 22 46 22 277 25 117 84 116 35 116 33 25 80 35 +273 705 103 464 104 98 99 371 114 815 209 520 398 496 279 497 273 231 440 331 +270 835 176 588 184 177 183 742 228 1093 507 906 715 850 574 851 567 561 830 699 +319 766 258 636 279 275 288 953 455 1165 848 1235 1013 1154 886 1156 881 924 1188 1070 +430 670 373 607 417 417 434 1045 693 1091 1196 1489 1287 1403 1200 1404 1197 1278 1480 1399 +694 686 629 638 721 714 678 1010 885 957 1530 1637 1542 1590 1515 1590 1515 1575 1650 1625 +1113 986 993 903 1148 1039 952 965 962 955 1765 1735 1780 1761 1781 1759 1781 1740 1717 1719 +1019 984 856 895 977 883 933 906 925 892 1647 1651 1667 1664 1660 1662 1660 1635 1637 1631 +1007 1033 785 937 879 922 938 860 914 1001 1624 1656 1659 1664 1643 1662 1642 1616 1637 1622 +745 769 712 703 830 1010 1025 722 842 787 1654 1555 1579 1552 1621 1551 1624 1657 1592 1630 +494 477 716 444 899 1170 1070 487 599 487 1550 1250 1369 1274 1482 1273 1488 1526 1324 1428 +391 336 776 321 1051 1286 1012 339 387 332 1351 938 1148 1004 1294 1002 1300 1291 1008 1141 +420 247 790 243 1148 1268 848 233 273 228 1087 635 904 735 1052 732 1058 989 678 812 +368 156 730 159 1056 1054 560 130 152 130 708 310 584 424 705 422 708 595 321 426 +336 94 599 99 770 679 263 82 87 85 347 146 296 183 366 181 367 254 145 149 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +134 286 24 219 22 21 21 46 21 290 24 120 85 119 34 119 32 24 81 34 +247 628 95 415 95 90 92 332 105 726 191 465 358 445 252 446 247 210 394 298 +254 759 166 538 174 167 172 673 216 990 469 826 655 777 528 778 523 516 758 641 +311 753 251 625 271 267 280 936 444 1145 829 1210 992 1131 866 1133 861 904 1165 1047 +405 649 349 588 389 389 407 1026 670 1073 1157 1454 1249 1367 1160 1368 1158 1239 1445 1362 +629 644 566 599 647 644 626 1007 863 944 1484 1615 1499 1558 1467 1559 1467 1538 1631 1600 +1065 950 950 870 1097 1000 931 962 957 939 1738 1717 1748 1735 1749 1734 1749 1721 1704 1706 +1372 1305 1118 1183 1273 1065 1048 1024 1012 1106 1888 1906 1970 1956 1942 1953 1941 1839 1847 1824 +1238 1288 928 1162 1021 1026 1023 979 1010 1219 1821 1900 1907 1920 1867 1918 1865 1801 1852 1816 +898 960 799 873 911 1043 1053 848 914 980 1744 1711 1719 1709 1733 1708 1734 1745 1723 1736 +559 553 768 514 959 1225 1127 559 656 568 1652 1363 1478 1386 1587 1385 1593 1629 1435 1534 +411 356 820 340 1112 1359 1070 359 407 352 1431 994 1216 1064 1370 1062 1377 1367 1068 1208 +427 248 822 244 1201 1327 882 234 274 230 1126 647 932 754 1089 751 1095 1022 693 835 +392 163 781 167 1132 1129 598 135 159 135 755 327 622 450 751 447 756 633 338 451 +332 93 589 98 758 668 259 81 86 83 343 144 293 182 362 180 363 252 144 147 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +123 260 24 199 22 21 21 44 21 263 24 111 80 111 34 111 33 25 76 34 +270 691 102 456 102 97 98 362 112 798 206 510 391 487 275 488 269 227 431 325 +265 815 172 575 179 172 178 719 222 1064 493 881 696 827 558 828 552 544 806 679 +311 750 251 622 271 266 279 929 441 1138 825 1204 987 1125 862 1127 857 899 1158 1041 +422 683 365 618 407 407 425 1084 702 1135 1220 1536 1318 1444 1224 1445 1221 1307 1526 1438 +438 541 378 504 424 434 481 1129 885 1011 1495 1745 1524 1636 1463 1638 1462 1598 1774 1716 +836 780 746 713 856 813 829 950 935 859 1642 1665 1631 1646 1629 1645 1629 1661 1678 1676 +810 791 698 723 797 767 877 846 894 754 1578 1573 1556 1560 1562 1559 1564 1591 1588 1595 +458 451 419 415 481 671 771 520 694 468 1307 1220 1211 1196 1256 1195 1259 1331 1274 1315 +474 462 532 427 635 872 894 480 661 475 1395 1223 1264 1217 1337 1217 1341 1400 1286 1352 +345 313 534 294 675 897 813 330 439 316 1158 906 1005 926 1102 925 1106 1139 968 1055 +297 245 572 235 770 941 741 248 292 241 987 685 838 733 945 731 950 943 735 833 +306 184 560 179 807 890 599 175 203 172 769 457 642 526 745 524 749 701 487 579 +302 133 580 135 834 832 448 114 130 114 570 262 474 350 568 348 571 482 270 351 +206 56 355 60 454 399 157 41 46 43 211 86 181 114 223 113 224 156 84 92 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +33 65 8 50 8 7 7 14 8 66 10 31 23 31 12 31 12 10 22 12 +76 147 38 106 42 40 41 93 47 169 66 119 98 115 77 115 76 69 105 86 +254 795 164 559 171 164 170 698 211 1038 472 852 671 800 536 801 530 523 779 655 +230 546 181 453 196 192 203 673 323 826 590 865 708 808 617 809 614 643 831 747 +211 360 173 323 191 191 210 572 368 600 610 787 665 735 613 736 611 659 781 732 +245 304 208 280 234 241 276 553 447 503 733 846 746 797 719 798 718 779 859 833 +237 256 210 235 238 256 340 486 466 374 781 833 757 789 753 790 753 823 861 856 +159 160 147 149 165 172 178 175 179 169 329 328 324 325 326 325 326 332 331 333 +160 153 166 142 194 270 313 212 280 168 505 461 457 449 479 449 481 517 488 509 +132 127 125 118 142 149 149 134 141 130 266 258 260 258 263 257 263 266 261 264 +321 277 456 261 567 732 669 299 400 277 966 770 847 786 922 785 926 951 818 886 +305 242 560 232 746 907 719 245 300 234 970 680 827 726 929 725 934 927 729 822 +308 192 514 186 715 785 544 180 215 176 725 463 618 520 704 519 708 667 488 565 +279 135 497 134 698 697 389 115 132 116 515 267 437 337 513 336 515 444 273 338 +282 75 488 80 625 549 215 50 59 53 293 117 250 157 308 156 310 216 115 126 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +66 129 18 99 18 17 17 30 18 130 22 63 48 62 27 62 26 22 46 27 +100 215 46 150 50 48 48 126 55 247 82 167 133 161 101 161 99 88 144 114 +122 280 80 208 87 84 87 251 108 358 192 310 253 293 211 293 210 207 287 248 +126 221 93 186 102 99 107 258 156 308 245 333 282 315 253 315 252 261 322 295 +295 488 247 440 273 273 294 767 498 806 847 1077 918 1010 850 1011 847 909 1069 1005 +582 612 522 569 596 594 588 993 838 926 1439 1583 1456 1521 1420 1522 1420 1498 1600 1566 +680 653 606 598 694 677 715 837 820 747 1417 1449 1402 1422 1399 1421 1399 1443 1466 1463 +823 802 706 732 806 756 806 784 803 756 1402 1403 1405 1405 1404 1404 1404 1400 1400 1399 +797 806 651 734 737 796 820 733 792 799 1390 1391 1390 1390 1390 1389 1390 1390 1390 1390 +248 228 312 212 377 543 560 265 398 235 851 718 750 714 806 714 809 855 767 818 +100 96 95 89 108 112 110 99 103 97 195 189 191 189 194 189 194 194 190 192 +143 124 153 117 181 195 178 125 142 121 292 261 277 266 288 266 288 288 266 276 +151 104 222 98 300 327 236 99 114 98 315 218 275 239 308 238 309 294 227 255 +160 88 259 86 355 355 210 78 87 79 281 164 244 197 280 196 281 247 167 198 +174 52 293 54 375 331 134 39 44 41 183 80 158 104 192 103 193 138 78 85 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +29 30 26 28 28 28 28 30 29 31 52 54 53 53 52 53 52 52 53 53 +91 187 59 140 66 64 66 169 82 238 128 202 166 191 140 191 139 137 187 162 +88 94 76 86 85 84 86 97 91 101 164 171 167 169 164 169 164 165 170 168 +132 142 114 131 126 126 132 154 143 157 256 269 260 266 256 265 256 260 269 265 +155 195 129 178 145 151 180 323 267 298 418 481 425 453 410 454 410 443 488 473 +144 157 127 144 145 157 202 277 266 221 426 454 413 430 411 431 411 448 469 466 +176 177 163 164 183 192 202 199 203 189 373 372 367 368 369 368 369 377 377 379 +152 146 154 135 180 253 296 197 264 158 477 437 432 425 453 425 455 488 462 481 +152 136 185 127 224 307 316 165 234 141 465 394 410 391 440 391 442 467 419 447 +187 161 282 151 355 469 426 174 241 161 593 460 512 471 563 470 566 583 493 539 +205 165 400 158 541 663 520 167 202 162 680 464 573 498 650 497 653 648 500 569 +171 106 303 102 435 478 325 102 116 101 411 247 344 283 398 282 400 375 263 311 +123 65 208 63 293 292 168 59 64 60 213 114 182 142 212 142 213 185 117 143 +43 33 48 31 56 53 40 30 31 31 66 57 64 60 66 60 66 62 56 58 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +20 38 6 29 6 6 6 10 6 39 8 20 16 20 10 20 10 8 15 10 +76 147 38 106 42 40 41 92 47 168 66 119 98 115 77 115 76 69 105 86 +191 522 123 376 131 126 130 459 163 676 330 568 455 536 370 536 367 362 522 444 +111 204 83 170 93 91 96 240 139 289 216 300 252 283 224 283 223 232 290 263 +134 201 105 178 117 116 132 287 203 301 311 390 335 367 312 367 311 332 387 365 +126 157 106 143 121 124 144 273 222 250 340 395 347 371 334 372 334 362 401 388 +127 138 111 126 128 138 179 248 238 196 376 401 365 380 362 380 363 396 415 413 +79 78 72 73 80 81 81 80 80 81 149 149 149 149 149 149 149 150 150 150 +153 147 155 136 181 254 297 198 266 159 480 439 435 428 456 428 457 491 465 484 +412 396 476 367 570 795 816 423 597 408 1270 1102 1142 1097 1213 1096 1217 1275 1163 1228 +445 421 653 393 820 1073 978 435 546 429 1418 1137 1248 1159 1354 1158 1360 1396 1206 1303 +270 222 510 212 683 832 658 224 266 217 878 613 747 655 841 653 845 839 657 742 +276 167 500 163 714 786 532 158 185 156 691 417 579 477 669 475 673 631 443 524 +251 117 460 117 654 653 359 101 114 102 462 226 388 293 460 292 462 395 232 294 +183 55 307 57 396 349 142 41 45 43 193 84 167 110 203 109 204 146 82 89 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 40 7 31 7 7 7 11 7 40 9 21 17 21 11 21 11 9 16 11 +68 136 33 97 36 35 35 83 40 156 57 108 87 104 68 104 67 60 94 76 +207 599 133 427 140 135 139 523 173 777 365 644 511 606 412 607 408 402 590 498 +180 378 138 317 150 147 156 454 237 553 415 590 490 554 433 555 430 449 569 514 +227 382 186 343 206 206 226 596 385 627 645 826 701 774 647 774 646 694 820 769 +160 202 133 184 149 155 185 334 276 308 434 499 441 471 426 471 425 460 506 491 +168 188 149 172 169 186 240 322 310 261 501 533 487 506 484 506 484 526 551 547 +213 217 200 200 229 273 370 354 403 251 701 692 655 663 670 664 671 728 724 737 +177 169 184 157 215 296 344 235 309 186 563 515 510 502 535 502 536 575 545 567 +220 201 271 188 326 460 474 235 344 208 719 610 636 606 682 606 684 722 650 691 +211 181 311 170 389 511 465 195 268 181 656 513 569 524 623 524 626 645 548 597 +190 151 318 143 419 505 405 152 187 147 542 389 466 413 521 412 523 520 414 463 +152 104 225 99 304 331 239 100 115 99 320 221 279 242 312 241 313 298 230 259 +122 74 181 71 244 243 152 67 73 68 206 132 182 153 205 152 206 184 134 153 +79 36 117 35 147 131 65 30 31 31 93 56 84 65 96 65 96 77 55 59 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +109 227 21 167 19 18 18 38 19 229 22 97 71 97 33 97 31 22 67 32 +268 686 98 452 99 93 95 350 108 789 198 499 382 477 267 478 261 218 420 314 +243 740 156 523 163 156 162 642 201 962 441 792 626 744 501 745 496 488 724 609 +309 756 249 626 268 264 277 925 433 1140 821 1201 985 1123 859 1125 854 893 1154 1036 +402 650 346 588 385 385 403 1017 658 1069 1146 1443 1239 1357 1151 1359 1148 1227 1432 1349 +572 599 512 557 584 583 577 944 802 886 1376 1508 1393 1452 1360 1452 1360 1430 1523 1492 +697 667 622 610 712 692 724 845 827 759 1432 1462 1418 1437 1415 1436 1415 1456 1478 1475 +882 856 753 781 860 798 858 835 857 798 1511 1512 1516 1515 1514 1514 1514 1509 1509 1508 +846 858 685 781 775 847 879 771 845 846 1499 1497 1497 1497 1498 1495 1498 1499 1498 1499 +685 700 661 641 772 938 953 669 785 717 1538 1440 1463 1437 1505 1436 1507 1541 1476 1514 +430 404 646 378 813 1075 977 419 536 411 1411 1122 1236 1145 1346 1144 1352 1389 1194 1294 +316 264 593 252 793 964 765 267 313 259 1029 725 879 774 987 772 992 986 776 874 +313 190 572 185 819 901 611 181 210 178 790 474 661 544 765 541 769 721 504 597 +312 137 591 139 847 846 457 117 134 118 586 272 488 363 583 361 586 497 281 364 +252 69 429 73 555 485 193 48 55 51 264 107 226 144 277 142 278 196 105 115 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +93 193 19 141 17 16 16 34 17 194 20 84 61 84 30 84 28 20 58 29 +183 437 73 295 75 71 72 234 83 501 141 326 253 312 182 312 179 153 277 211 +185 469 120 345 128 123 127 413 160 603 316 524 425 495 351 496 348 343 483 415 +249 575 196 478 212 208 219 696 340 856 625 905 746 848 653 849 649 678 870 784 +231 369 188 332 207 207 229 553 371 582 617 778 667 732 619 732 618 660 773 727 +307 378 262 349 294 302 342 679 548 622 912 1050 929 991 896 992 895 968 1065 1033 +672 646 599 592 686 670 708 839 820 747 1416 1451 1401 1423 1398 1422 1398 1444 1470 1466 +303 308 283 284 323 376 503 482 544 349 956 945 898 909 916 909 918 991 986 1002 +439 432 403 398 463 624 712 500 647 450 1207 1132 1123 1111 1162 1110 1165 1228 1179 1214 +354 336 420 312 504 713 734 368 532 346 1136 977 1014 972 1082 971 1085 1141 1035 1096 +253 218 382 205 480 636 577 235 325 218 820 641 711 654 780 654 783 806 685 747 +211 168 378 160 502 609 485 170 208 164 647 456 552 486 621 485 624 619 488 549 +292 178 520 173 738 812 554 168 197 165 724 443 609 504 702 503 705 662 470 553 +369 156 716 159 1033 1032 551 131 152 131 703 313 582 426 700 424 703 593 324 428 +304 75 528 81 684 597 230 52 60 54 311 116 264 161 328 159 329 226 113 124 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +90 186 18 136 17 16 16 33 17 188 20 81 59 81 29 81 27 20 56 28 +263 675 96 444 97 91 93 342 106 775 193 488 374 467 260 468 255 212 411 307 +258 800 165 565 172 165 171 692 212 1042 471 854 673 802 537 803 532 522 780 654 +315 798 255 659 274 269 282 977 447 1209 856 1263 1032 1180 896 1182 891 933 1213 1086 +388 639 333 578 370 370 389 1005 645 1059 1123 1422 1217 1335 1127 1337 1125 1204 1411 1327 +534 572 476 532 542 542 545 938 785 876 1344 1489 1363 1427 1327 1428 1326 1403 1505 1471 +577 567 514 520 588 584 652 824 799 702 1376 1428 1354 1385 1349 1385 1348 1417 1455 1450 +584 577 518 529 591 611 763 735 804 585 1422 1413 1369 1379 1386 1379 1388 1455 1451 1466 +543 539 481 494 550 707 791 583 728 552 1344 1277 1269 1257 1303 1257 1306 1362 1319 1350 +563 561 582 516 686 884 904 561 708 575 1436 1301 1333 1296 1390 1295 1393 1440 1350 1402 +372 342 551 320 692 911 829 358 465 347 1195 951 1047 970 1140 969 1145 1177 1012 1096 +352 299 696 286 937 1143 904 302 349 294 1211 843 1030 902 1161 900 1167 1159 906 1025 +391 231 752 227 1091 1202 806 219 254 215 1034 601 858 697 1000 694 1006 940 643 772 +364 153 708 156 1023 1023 546 129 150 130 695 309 575 421 692 418 695 586 319 423 +299 73 522 79 677 591 227 51 58 53 304 111 257 156 321 154 323 220 109 119 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +123 258 22 187 21 20 20 41 20 259 23 108 78 108 35 108 33 23 73 34 +265 676 98 446 98 93 94 343 107 776 195 491 376 470 263 470 257 214 413 309 +228 715 145 502 152 146 150 617 187 931 413 755 593 709 472 710 466 458 688 576 +235 522 184 435 199 195 206 628 316 770 571 819 678 768 595 769 592 618 788 711 +368 556 314 503 350 350 369 823 560 865 959 1182 1029 1117 962 1118 960 1019 1173 1111 +524 544 468 503 533 533 533 768 675 734 1146 1233 1157 1196 1135 1196 1135 1181 1243 1222 +840 773 751 707 864 813 764 759 759 767 1328 1310 1335 1325 1337 1323 1336 1314 1300 1302 +634 625 557 572 637 631 714 694 730 619 1266 1262 1242 1247 1250 1246 1251 1280 1278 1285 +635 635 546 581 623 743 805 643 755 643 1363 1319 1314 1307 1337 1306 1338 1375 1347 1367 +522 517 542 476 639 819 838 524 660 530 1328 1202 1232 1198 1285 1197 1288 1332 1249 1297 +418 391 607 366 760 996 909 406 515 398 1318 1058 1160 1078 1259 1077 1264 1298 1123 1212 +371 317 709 302 951 1157 920 320 367 313 1239 874 1060 933 1190 931 1195 1188 936 1055 +283 173 509 168 724 797 543 164 192 161 708 431 595 492 686 490 689 648 458 539 +316 140 594 142 851 851 463 119 138 120 595 280 497 371 592 369 595 506 288 373 +212 61 358 64 461 404 164 45 50 46 223 93 192 124 234 123 235 167 92 100 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +66 136 14 99 13 12 12 25 13 137 15 60 44 60 22 60 21 15 42 21 +67 135 33 96 36 35 35 82 40 154 56 107 87 103 67 103 66 60 93 75 +146 369 93 268 101 97 100 324 125 475 235 398 320 375 262 375 260 256 365 312 +190 430 146 357 159 156 165 518 257 638 457 665 546 622 478 623 475 496 639 574 +209 344 170 308 188 188 207 523 344 551 571 727 620 682 573 683 572 613 721 677 +189 237 160 218 180 185 213 426 342 390 553 641 564 603 542 604 542 588 650 630 +237 257 210 236 238 256 337 490 467 381 784 838 761 794 756 794 757 826 866 861 +249 253 232 233 265 315 441 423 483 290 851 841 795 806 813 806 814 885 881 897 +317 309 306 285 354 514 605 395 542 328 1026 946 936 923 978 922 981 1048 997 1034 +246 227 309 211 373 541 559 263 399 234 853 721 752 716 808 716 811 858 770 821 +234 202 362 191 456 609 552 218 306 203 781 605 674 619 741 618 744 767 649 709 +304 253 581 241 779 950 754 256 301 248 1009 705 859 754 967 752 972 966 757 855 +341 206 637 201 917 1011 684 195 227 192 881 523 735 602 853 599 857 803 558 664 +341 147 657 149 948 949 510 125 144 125 651 295 540 397 647 395 650 550 305 400 +308 75 539 82 700 612 236 52 60 55 317 116 268 162 334 161 335 230 113 124 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +99 205 20 149 18 17 17 35 18 206 21 88 65 88 31 88 29 21 61 30 +232 577 87 384 88 82 83 297 97 662 170 420 323 402 227 402 222 186 354 266 +198 491 128 362 137 131 135 431 171 629 336 552 449 522 373 523 370 364 509 438 +243 504 185 423 201 196 209 600 317 731 566 796 665 749 588 749 585 609 767 695 +292 465 238 418 262 262 289 694 465 731 783 985 847 927 786 928 784 837 978 921 +285 363 241 334 268 278 327 619 503 569 834 959 850 906 819 907 818 884 973 943 +303 338 270 311 304 333 433 601 574 481 971 1035 945 983 938 984 939 1021 1068 1061 +1210 1151 998 1044 1139 955 882 866 827 990 1498 1515 1586 1569 1558 1567 1556 1446 1451 1427 +1124 1160 854 1049 947 870 824 885 838 1102 1441 1538 1550 1566 1499 1563 1496 1414 1476 1431 +656 668 613 611 712 829 841 641 721 683 1363 1298 1313 1296 1341 1295 1342 1365 1322 1347 +469 450 635 418 788 1009 929 461 558 459 1365 1126 1219 1144 1310 1143 1315 1347 1185 1268 +316 264 590 252 789 960 765 267 313 260 1028 726 879 774 986 772 991 986 777 875 +276 173 474 167 664 731 506 163 193 161 668 420 566 474 648 472 651 614 444 517 +186 109 290 106 395 395 240 100 108 101 332 207 292 242 331 241 332 296 211 243 +122 48 190 48 240 213 99 39 42 40 141 77 126 93 146 93 147 114 76 82 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 +15 15 13 14 15 15 15 15 15 15 27 27 27 27 27 27 27 27 27 27 +35 35 31 32 34 34 34 35 35 36 63 64 64 64 63 64 63 63 64 64 +64 66 56 60 63 62 63 67 65 69 118 120 119 120 118 120 118 118 120 119 +100 104 88 96 98 98 101 109 105 111 190 196 192 194 190 194 190 192 195 194 +111 114 99 105 111 112 115 120 118 121 215 218 215 217 214 217 214 216 219 218 +95 96 86 89 97 97 99 99 99 99 183 183 182 183 182 183 182 183 184 184 +168 169 155 157 174 182 190 187 191 180 352 351 346 347 348 347 348 355 355 356 +167 164 158 153 179 190 196 181 190 172 354 346 345 344 349 344 350 356 351 355 +158 150 154 141 175 188 189 163 175 154 333 319 322 318 328 318 328 333 324 329 +152 139 155 131 178 193 188 147 163 140 319 297 306 298 314 298 315 318 302 310 +210 170 266 160 326 375 320 172 208 166 477 389 432 402 464 402 465 464 403 431 +182 126 265 120 355 387 283 121 140 120 387 273 339 297 377 296 379 362 284 317 +195 116 302 112 410 411 252 106 114 107 349 220 308 256 348 255 349 312 224 258 +169 61 269 62 341 302 135 47 52 49 193 100 171 123 201 122 201 154 98 106 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +105 219 20 158 18 18 18 36 18 220 20 91 66 91 30 91 28 20 62 29 +270 689 99 453 99 94 95 347 109 790 196 498 381 476 265 477 260 216 418 313 +269 824 171 580 178 171 176 711 220 1071 485 877 692 824 552 825 546 537 800 672 +311 764 251 631 270 265 279 931 435 1151 822 1205 988 1127 860 1129 855 894 1157 1039 +415 665 358 601 399 399 416 1030 669 1085 1163 1460 1257 1375 1168 1376 1165 1243 1449 1366 +643 657 580 611 664 659 638 1006 861 952 1486 1614 1503 1560 1471 1560 1471 1538 1628 1598 +860 796 769 728 884 837 838 959 941 880 1658 1678 1649 1661 1646 1661 1646 1673 1688 1686 +1112 1065 929 968 1062 934 979 954 968 944 1748 1754 1780 1774 1769 1772 1769 1730 1731 1723 +1044 1070 814 970 911 960 983 891 955 1030 1714 1742 1746 1750 1731 1748 1730 1706 1724 1711 +767 795 715 726 831 997 1013 737 848 812 1650 1566 1586 1563 1621 1562 1623 1653 1598 1630 +506 491 711 457 888 1155 1061 501 612 502 1551 1266 1377 1287 1486 1286 1491 1530 1338 1436 +392 338 768 323 1035 1265 1006 343 390 335 1350 947 1151 1011 1294 1009 1300 1294 1016 1147 +400 239 766 234 1113 1230 830 227 264 222 1065 623 884 720 1029 717 1034 969 667 798 +370 157 722 160 1047 1050 564 133 154 133 716 320 591 433 711 431 714 605 331 438 +338 80 596 88 777 681 262 55 64 58 348 124 293 175 367 173 369 251 121 133 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 103 12 75 12 11 11 21 12 104 15 47 36 47 19 47 18 15 34 19 +174 394 75 272 78 73 74 218 87 450 144 306 243 294 180 294 178 155 263 206 +191 435 125 327 133 127 132 385 168 553 317 500 412 475 347 475 344 340 463 403 +225 443 170 373 185 181 193 523 287 634 501 696 585 656 521 657 518 538 671 611 +277 427 224 383 248 247 273 621 427 653 709 883 764 833 712 834 710 756 877 828 +349 418 298 385 335 344 386 678 563 630 929 1053 945 1000 915 1001 914 979 1066 1037 +286 318 254 293 286 313 408 570 544 456 915 977 890 927 884 928 885 963 1008 1001 +163 164 150 152 169 176 184 181 184 174 339 338 334 335 335 335 336 342 342 343 +137 135 128 126 144 149 152 144 148 140 276 273 272 271 274 271 274 278 275 277 +224 205 240 192 278 329 335 238 285 212 556 506 518 504 539 504 540 558 525 544 +134 125 133 117 152 162 158 131 141 126 273 258 264 259 270 259 270 272 262 267 +134 118 140 111 164 176 163 119 133 115 271 245 258 249 267 249 267 267 250 258 +56 53 53 49 61 62 59 52 55 53 104 100 103 101 104 101 104 103 101 102 +74 61 78 57 93 93 78 57 61 57 129 114 124 118 128 118 129 124 114 118 +30 25 30 23 35 34 28 22 23 23 48 44 47 45 49 45 49 47 44 45 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +31 32 26 29 29 29 29 31 30 33 54 56 55 56 54 55 54 54 55 55 +68 73 57 67 64 62 63 72 67 78 121 127 124 126 122 126 122 121 126 124 +103 112 87 103 96 95 98 116 106 122 190 202 195 199 191 199 191 192 200 197 +74 75 66 69 73 73 74 77 75 78 138 140 138 139 138 139 138 138 140 139 +88 89 79 83 88 89 90 92 91 93 167 169 168 168 167 168 167 168 169 169 +98 99 89 91 99 100 102 102 102 103 188 189 188 189 188 189 188 189 190 190 +129 129 118 119 132 135 139 137 138 134 255 255 253 253 253 253 254 256 256 257 +114 113 106 105 119 122 123 118 121 117 224 222 222 222 223 222 223 225 224 225 +146 140 140 131 160 169 171 150 160 144 302 291 293 290 298 290 298 302 295 299 +133 124 131 116 151 160 157 130 140 125 271 256 262 257 268 257 268 270 260 265 +59 57 55 53 62 63 62 58 59 58 111 109 110 109 111 109 111 111 109 110 +280 173 504 169 719 795 545 164 193 162 708 433 594 492 685 490 689 649 460 541 +209 103 373 102 531 533 301 92 102 92 390 201 330 254 387 253 389 337 206 257 +266 69 464 74 604 531 210 49 56 51 279 106 236 146 293 144 295 205 104 114 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 47 7 35 7 7 7 12 7 48 9 23 18 23 11 23 10 9 17 11 +64 129 32 92 35 33 33 78 38 147 53 101 82 98 64 98 63 56 88 71 +46 47 40 44 45 44 45 48 46 49 83 85 84 85 84 85 84 84 85 84 +119 211 87 177 96 93 101 245 146 295 227 312 263 295 235 295 234 243 301 275 +76 77 68 72 76 76 77 80 78 81 142 145 143 144 142 144 142 143 145 144 +79 80 71 74 80 80 81 82 81 83 150 151 150 151 150 150 150 150 151 151 +400 412 356 378 404 417 513 724 691 578 1176 1246 1147 1189 1140 1190 1140 1229 1281 1273 +302 305 279 281 318 370 537 519 595 342 1053 1042 983 998 1005 998 1007 1096 1092 1111 +370 363 350 334 403 577 679 453 613 382 1152 1069 1057 1043 1101 1043 1104 1177 1123 1163 +239 220 298 205 360 526 546 257 391 227 830 702 730 696 785 696 788 835 750 799 +444 421 644 393 808 1066 978 435 554 428 1415 1138 1245 1158 1351 1157 1357 1395 1208 1304 +361 308 732 295 993 1224 970 312 360 305 1288 890 1090 952 1232 950 1238 1233 959 1088 +384 231 743 226 1083 1202 812 219 255 215 1035 603 857 697 999 694 1005 943 646 775 +364 156 712 159 1036 1042 562 132 154 132 711 318 586 430 705 427 709 601 330 436 +362 85 644 94 843 741 285 57 68 60 376 132 315 187 396 185 398 271 129 142 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +59 121 12 87 12 11 11 21 11 122 14 52 38 52 18 52 17 14 36 18 +212 536 78 352 79 75 76 272 87 615 150 383 293 367 203 367 199 165 322 240 +214 649 136 454 143 137 141 561 176 843 375 683 537 641 428 642 423 416 623 522 +101 231 76 187 84 82 87 280 138 346 220 333 268 310 231 310 230 241 319 284 +84 135 67 118 76 76 83 204 135 215 199 258 217 241 200 241 199 215 256 239 +157 199 130 181 146 152 181 329 271 305 422 487 430 459 414 459 414 448 494 478 +165 185 146 169 165 182 235 320 306 260 490 524 477 497 473 497 474 516 541 537 +171 176 162 162 186 223 293 285 318 210 534 529 500 507 510 507 511 555 554 563 +174 166 179 154 209 289 337 234 306 184 551 506 499 492 523 492 525 564 535 557 +154 138 185 129 225 310 321 169 241 144 474 403 418 400 449 399 450 476 429 457 +155 142 159 133 184 200 194 150 168 142 329 305 314 306 323 306 324 327 311 319 +135 119 142 112 166 179 165 121 135 116 274 248 261 252 270 252 271 270 252 261 +188 120 329 116 470 520 360 115 133 114 460 284 387 321 445 320 447 422 301 353 +111 68 167 64 227 228 143 62 67 62 189 119 166 138 188 138 188 169 121 139 +255 73 435 77 565 499 205 51 59 53 277 115 237 154 290 152 291 209 114 124 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +79 162 16 116 15 14 14 27 14 163 17 69 50 69 23 69 22 17 47 22 +274 715 97 464 96 91 92 355 105 821 187 504 381 481 260 482 254 208 421 309 +269 843 175 585 183 176 181 727 219 1094 491 892 702 838 560 838 554 544 814 682 +273 714 219 585 235 231 243 880 395 1094 743 1117 904 1040 780 1042 775 814 1070 954 +407 678 351 612 390 390 408 1077 684 1136 1184 1507 1286 1414 1189 1416 1186 1271 1496 1405 +429 539 369 502 414 423 470 1125 871 1015 1462 1717 1494 1609 1431 1611 1430 1565 1744 1685 +471 499 418 459 474 500 673 1048 991 790 1693 1818 1643 1717 1630 1719 1630 1789 1881 1867 +1283 1217 1059 1104 1209 1020 1030 1003 1002 1039 1852 1862 1913 1901 1894 1899 1893 1814 1817 1800 +1206 1244 915 1124 1013 1015 1018 967 1001 1174 1805 1870 1879 1889 1845 1887 1843 1786 1828 1797 +719 737 684 674 801 987 1009 696 831 753 1627 1523 1546 1518 1591 1517 1593 1631 1562 1602 +477 458 660 427 823 1071 989 470 582 468 1441 1178 1279 1197 1380 1196 1385 1422 1245 1336 +364 311 662 296 885 1080 869 316 364 308 1172 838 1005 890 1124 888 1129 1126 896 1005 +257 163 448 158 635 703 488 155 182 152 636 397 537 448 616 447 619 585 421 492 +151 95 219 91 291 293 188 87 95 88 264 178 236 201 263 201 263 239 181 203 +57 41 66 38 78 73 52 38 39 39 82 69 79 73 83 73 83 77 68 71 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +21 21 18 19 21 20 20 21 21 22 38 38 38 38 38 38 38 38 38 38 +59 62 50 57 56 55 56 62 58 65 105 109 107 109 106 109 106 105 108 107 +67 70 59 64 66 65 67 71 68 73 124 127 126 127 125 127 125 125 127 126 +130 141 112 130 124 124 131 153 142 156 253 267 257 263 253 263 253 257 266 262 +101 103 90 95 101 102 104 108 106 108 193 196 194 195 193 195 193 195 196 196 +89 89 80 82 90 90 92 92 91 92 169 169 169 169 168 169 169 169 170 170 +105 105 96 97 108 109 111 109 110 109 204 204 203 203 203 203 203 204 204 205 +175 171 166 160 188 202 209 191 202 180 376 367 366 364 371 364 371 379 373 378 +88 87 81 81 92 93 94 89 91 89 169 167 168 167 168 167 169 169 168 169 +138 117 192 109 243 316 292 129 178 116 396 311 343 317 376 317 378 390 332 362 +133 118 140 110 163 175 163 119 133 115 270 244 257 248 266 248 266 266 249 257 +107 91 113 85 134 139 123 88 97 87 202 180 193 185 200 185 201 197 182 189 +149 82 244 80 340 342 204 74 82 75 267 153 230 185 265 184 266 235 157 187 +287 81 510 86 674 596 239 69 74 72 311 126 263 164 326 162 327 230 126 130 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +37 76 8 54 7 7 7 13 7 77 9 33 24 33 11 33 11 9 23 11 +88 195 38 132 41 39 40 109 45 224 63 141 110 135 80 135 79 68 120 92 +91 187 59 139 66 64 66 168 82 238 126 200 164 190 138 190 137 135 185 161 +110 204 82 169 92 90 95 239 138 289 212 297 248 279 220 279 219 228 286 260 +143 216 112 191 125 124 141 308 217 324 334 419 360 394 335 394 334 356 415 391 +156 197 129 180 145 151 180 329 270 304 418 484 426 456 410 456 410 445 491 475 +261 284 232 261 263 282 356 487 466 396 767 816 748 777 743 777 743 805 841 836 +874 847 749 773 856 790 863 843 868 788 1528 1529 1529 1529 1528 1528 1529 1529 1529 1529 +827 834 678 760 767 867 923 778 881 824 1576 1557 1554 1551 1564 1549 1565 1583 1570 1580 +617 622 604 570 712 894 917 608 746 637 1462 1350 1374 1344 1423 1343 1425 1467 1393 1436 +449 426 673 398 850 1140 1047 440 577 433 1501 1193 1311 1214 1429 1214 1435 1480 1272 1379 +378 326 746 311 1012 1251 998 331 379 323 1325 923 1123 985 1267 983 1273 1270 994 1125 +331 202 638 197 935 1043 708 193 224 189 894 521 739 601 862 599 867 815 560 671 +268 117 536 119 792 800 432 103 116 104 531 231 435 315 526 313 529 448 241 322 +188 49 338 52 448 396 156 42 45 43 198 74 166 100 208 99 209 144 74 78 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +64 132 14 94 13 12 12 23 13 133 15 57 42 57 19 57 19 15 39 19 +199 491 76 324 77 72 73 255 85 564 141 353 270 337 189 338 185 155 297 222 +243 738 155 514 162 155 161 641 201 961 429 779 613 732 489 732 483 475 711 596 +287 696 229 572 247 242 255 854 403 1054 740 1092 892 1019 775 1021 771 807 1048 940 +327 526 276 473 306 306 327 810 532 852 894 1130 968 1062 898 1063 896 958 1122 1056 +364 425 317 393 359 364 391 742 605 684 1001 1139 1018 1080 984 1081 984 1057 1154 1122 +485 486 432 445 492 497 562 718 694 614 1172 1222 1152 1182 1146 1182 1147 1211 1248 1242 +772 753 669 688 764 722 796 779 805 717 1398 1397 1390 1392 1392 1391 1392 1404 1403 1406 +684 684 580 625 660 759 815 678 774 688 1375 1344 1339 1334 1356 1333 1357 1385 1365 1380 +606 609 595 558 701 883 907 597 737 623 1443 1330 1355 1325 1403 1324 1406 1449 1373 1418 +537 529 715 490 889 1144 1065 536 643 542 1559 1296 1396 1314 1497 1313 1503 1541 1364 1455 +391 339 755 323 1022 1261 1011 344 393 336 1345 945 1144 1006 1287 1004 1294 1291 1016 1146 +390 239 752 234 1102 1231 838 227 266 223 1062 622 879 716 1024 713 1030 969 667 799 +382 165 764 168 1127 1139 618 139 163 138 769 337 630 458 762 455 765 649 352 470 +322 95 571 100 759 674 274 83 89 86 354 149 300 188 370 186 372 264 148 152 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 105 12 75 11 11 11 20 11 106 14 46 34 46 17 46 16 14 33 17 +232 592 85 385 86 81 82 301 94 682 161 421 320 402 220 403 216 179 353 262 +241 734 153 510 161 154 159 639 200 957 425 774 608 726 484 727 479 471 706 592 +284 693 226 569 244 239 252 853 401 1052 734 1086 886 1014 769 1015 764 802 1043 934 +389 645 334 581 371 371 390 1026 656 1079 1118 1425 1215 1336 1123 1338 1120 1202 1415 1329 +381 486 326 453 365 375 421 1042 803 936 1329 1572 1359 1468 1300 1470 1299 1427 1598 1541 +1351 1139 1215 1050 1411 1234 1025 929 941 1007 1832 1739 1869 1815 1877 1812 1876 1761 1691 1702 +1761 1629 1408 1475 1592 1192 976 948 859 1256 1769 1797 1967 1926 1906 1921 1902 1645 1652 1598 +1606 1687 1145 1510 1224 981 859 1058 910 1516 1652 1871 1906 1939 1791 1935 1783 1584 1726 1620 +1046 1155 809 1042 883 840 828 934 855 1167 1475 1607 1580 1613 1523 1611 1520 1468 1558 1506 +420 371 593 349 742 973 901 401 539 372 1299 1040 1138 1058 1238 1057 1243 1282 1107 1197 +351 280 575 267 755 917 749 285 353 269 1024 747 883 788 983 787 987 986 795 885 +325 209 540 202 755 839 594 197 238 191 786 507 669 566 762 564 766 727 536 619 +255 125 466 125 672 680 385 110 124 110 493 249 414 317 489 315 491 426 258 324 +177 55 302 57 395 352 149 42 47 43 197 86 168 111 205 110 206 150 85 92 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 124 12 88 12 11 11 21 11 125 14 53 38 53 17 52 16 14 36 17 +245 639 87 412 87 83 84 321 96 737 164 447 337 426 228 427 223 183 373 274 +248 788 158 542 165 158 163 686 204 1030 443 823 642 771 507 771 502 493 749 625 +263 626 208 515 225 220 233 771 369 948 665 980 800 915 696 916 692 726 941 844 +169 271 136 241 152 151 167 409 274 430 433 553 470 518 435 519 434 466 549 515 +153 194 127 176 142 148 177 325 267 300 410 475 418 447 402 447 402 436 482 466 +279 299 247 274 281 298 399 612 579 466 962 1034 933 976 926 977 926 1017 1071 1063 +192 196 179 181 205 244 342 334 379 229 645 639 601 610 614 610 615 672 670 682 +118 116 108 108 122 125 127 122 125 120 231 229 229 228 230 228 230 232 231 232 +185 170 238 158 293 451 475 203 332 176 702 583 608 577 659 577 662 707 628 675 +160 135 221 127 277 361 335 150 208 135 463 366 402 373 440 372 442 456 391 425 +202 162 359 154 481 594 478 165 204 159 628 441 533 469 600 468 603 602 474 535 +296 187 547 182 795 890 613 179 209 176 777 466 646 532 750 530 754 712 499 591 +286 132 554 133 814 825 456 114 131 114 568 262 468 347 562 345 565 483 273 356 +82 28 139 28 184 164 71 24 25 24 86 36 73 47 90 46 90 65 36 39 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +49 99 11 71 11 10 10 19 11 101 13 44 32 44 15 43 15 13 30 15 +222 571 81 370 82 78 79 291 90 658 152 403 305 385 209 385 204 169 338 249 +217 648 139 450 147 141 146 568 183 844 378 683 538 641 429 642 425 418 624 524 +231 513 180 424 195 191 203 627 315 766 552 800 658 748 576 749 573 599 769 693 +197 327 160 292 177 177 196 508 332 534 535 689 583 644 538 645 536 577 684 641 +253 319 216 294 242 249 285 600 478 545 771 899 787 845 756 845 755 823 913 883 +200 220 177 201 201 217 296 450 426 344 693 747 671 703 666 704 666 734 774 768 +69 71 64 65 75 93 142 138 160 86 261 258 240 244 246 244 247 274 274 279 +538 534 479 489 548 728 838 604 773 548 1418 1341 1327 1315 1369 1315 1372 1443 1393 1431 +173 156 206 145 249 345 361 192 273 162 535 457 473 453 507 452 509 539 487 517 +169 143 232 134 290 379 351 158 219 143 488 388 425 394 464 394 466 482 414 449 +348 297 709 285 970 1214 968 302 352 294 1265 867 1063 927 1206 925 1212 1212 938 1068 +280 175 528 171 775 869 596 168 196 165 747 441 618 506 720 504 724 683 473 565 +292 135 566 136 833 845 468 116 134 116 582 269 480 355 576 353 579 496 280 366 +226 62 402 66 532 473 192 45 51 47 247 95 207 127 258 126 259 182 94 103 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 107 11 75 11 10 10 19 11 108 13 46 33 46 15 45 15 13 32 15 +258 690 88 439 87 83 84 343 96 797 163 472 352 450 233 451 227 184 392 283 +250 794 160 544 167 160 166 695 208 1040 448 830 647 777 511 778 506 498 756 631 +303 783 244 639 263 258 271 981 444 1211 816 1230 994 1144 857 1146 852 897 1180 1052 +404 676 348 609 387 386 405 1094 694 1148 1176 1506 1279 1410 1180 1412 1177 1266 1495 1403 +432 541 372 503 417 427 474 1148 890 1030 1466 1727 1497 1615 1433 1617 1433 1572 1755 1694 +476 504 423 463 479 505 683 1072 1013 806 1702 1830 1649 1726 1636 1727 1637 1800 1895 1881 +1312 1240 1083 1126 1234 1029 1035 1008 1005 1046 1866 1875 1932 1918 1911 1916 1910 1824 1826 1808 +1209 1243 920 1123 1017 1015 1020 967 1003 1167 1808 1871 1882 1890 1849 1888 1847 1789 1829 1799 +894 948 778 862 892 1036 1053 829 921 963 1737 1701 1709 1699 1725 1697 1726 1739 1716 1730 +555 549 745 510 930 1210 1130 555 675 564 1642 1359 1465 1377 1575 1376 1580 1624 1433 1532 +410 359 799 342 1088 1354 1089 365 415 357 1436 1004 1217 1068 1372 1066 1378 1378 1082 1223 +403 248 794 243 1179 1327 904 237 278 231 1131 653 930 754 1088 751 1094 1031 704 847 +372 163 751 166 1120 1138 622 138 162 137 764 332 623 452 755 449 759 646 348 467 +312 93 562 98 755 674 277 82 87 84 348 146 293 182 364 180 366 259 145 149 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +43 88 10 62 9 9 9 16 9 89 11 38 28 38 13 38 13 11 26 13 +243 633 88 407 88 83 85 322 97 731 163 444 334 423 226 423 221 182 371 272 +243 736 157 509 164 158 163 649 206 962 430 779 612 730 488 731 482 476 712 597 +259 524 197 437 213 208 223 633 341 765 588 827 690 777 611 778 608 634 798 724 +312 468 253 420 280 280 310 680 477 711 775 960 832 905 777 906 775 825 954 902 +670 663 608 616 697 690 658 944 833 902 1419 1513 1430 1472 1407 1473 1407 1457 1523 1501 +558 549 497 503 568 565 624 783 759 678 1281 1329 1261 1290 1256 1290 1256 1318 1354 1348 +366 371 338 342 386 440 599 587 658 418 1132 1123 1064 1079 1084 1079 1086 1174 1172 1190 +326 318 313 293 361 572 707 438 635 339 1191 1092 1073 1058 1127 1058 1131 1224 1160 1208 +199 179 237 167 285 394 413 221 314 187 619 530 548 525 586 525 589 623 564 599 +221 188 302 177 373 487 453 208 288 188 644 516 564 525 613 524 616 636 550 594 +252 208 368 195 457 551 458 211 257 210 647 500 571 521 623 520 626 626 526 573 +117 98 128 92 153 161 140 95 106 93 224 196 212 202 222 201 222 218 199 207 +45 41 44 38 51 51 47 39 41 39 81 76 79 77 81 77 81 80 76 78 +21 18 20 17 23 23 20 17 18 17 35 33 35 34 35 34 35 34 33 33 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 +27 27 23 25 26 25 25 27 26 28 47 49 48 48 48 48 48 47 48 48 +64 68 54 62 60 58 60 68 63 73 113 119 116 118 114 118 114 114 118 116 +99 108 84 98 93 91 95 112 102 118 182 193 187 191 184 191 183 185 192 189 +94 98 83 90 93 93 95 102 99 104 179 183 180 182 179 182 179 180 183 182 +113 116 101 107 112 114 117 124 121 124 219 224 220 222 219 222 219 221 224 223 +126 128 114 119 127 130 134 137 136 135 249 251 248 249 248 249 248 251 252 252 +148 148 136 138 152 158 164 162 164 157 301 301 298 298 299 298 299 304 304 304 +140 138 131 129 148 154 158 149 154 144 285 281 280 280 283 280 283 287 284 286 +115 112 108 104 122 126 127 117 121 114 227 222 223 222 225 222 225 227 224 226 +88 85 83 80 94 97 96 88 91 87 170 166 168 166 169 166 169 170 167 169 +112 102 113 96 131 139 132 104 113 101 223 207 214 209 220 209 220 220 209 215 +23 23 21 21 24 24 24 23 23 23 43 43 43 43 43 43 43 43 43 43 +30 28 28 26 32 32 30 27 28 28 54 52 53 52 54 52 54 53 52 53 +22 19 22 18 25 25 22 18 19 18 37 35 37 36 38 36 38 36 35 35 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 9 2 7 2 2 2 3 2 9 3 5 5 5 3 5 3 3 4 3 +50 104 23 72 26 24 25 62 28 120 38 79 63 76 47 76 46 41 68 54 +52 55 45 50 50 49 50 55 52 57 94 97 95 96 94 96 94 94 96 95 +90 97 77 88 85 84 87 100 93 104 166 174 170 173 167 173 167 168 173 171 +236 427 195 382 215 215 235 718 444 753 721 953 792 885 723 886 721 785 946 881 +239 301 204 277 229 236 269 596 470 537 747 877 762 820 730 821 730 800 891 861 +161 180 142 165 161 178 231 318 304 257 475 509 461 481 458 481 458 501 526 522 +166 169 154 156 177 211 307 301 344 199 573 568 531 540 544 541 545 599 598 609 +342 334 326 308 376 581 714 453 645 355 1197 1101 1082 1068 1135 1068 1138 1229 1167 1215 +144 134 179 124 220 338 358 159 255 139 513 428 445 423 482 423 484 518 461 495 +222 194 339 182 430 588 545 212 308 195 750 581 643 591 709 591 713 740 625 685 +152 123 261 116 352 438 356 126 156 121 453 318 383 337 432 336 434 435 342 386 +189 125 329 120 476 536 377 121 141 119 473 294 397 331 457 330 459 436 313 367 +225 112 422 111 623 635 361 98 112 98 445 215 369 278 440 276 442 382 224 287 +225 65 399 69 532 478 200 46 54 48 255 104 214 134 265 133 266 191 102 112 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +34 68 8 48 8 7 7 13 8 69 10 30 22 30 11 30 11 10 21 11 +243 661 83 417 82 78 79 331 90 767 147 446 329 424 214 425 209 168 369 264 +112 315 73 216 79 76 78 282 98 412 175 320 250 299 198 299 196 194 292 244 +121 215 89 179 99 96 104 256 153 305 231 320 269 301 240 301 239 248 309 282 +139 210 109 185 121 121 138 305 216 319 322 407 348 382 323 382 322 345 404 380 +243 305 208 281 234 240 273 605 478 544 757 889 772 832 740 832 740 811 904 873 +226 246 200 226 227 244 327 489 465 376 749 806 726 760 720 760 721 793 835 829 +434 435 392 399 448 484 666 653 730 463 1255 1247 1186 1202 1207 1202 1209 1299 1297 1315 +648 647 558 592 636 773 860 676 810 653 1446 1395 1384 1377 1412 1376 1414 1464 1431 1456 +693 706 643 646 753 929 956 668 803 721 1526 1435 1454 1429 1493 1428 1496 1532 1472 1508 +432 408 651 381 828 1131 1052 425 580 415 1476 1164 1280 1183 1401 1182 1407 1458 1248 1358 +324 274 636 262 873 1100 885 280 334 271 1146 788 961 839 1090 837 1096 1099 853 970 +400 255 758 249 1122 1270 879 243 289 237 1100 652 909 745 1059 742 1065 1009 701 836 +325 152 635 154 947 968 543 129 153 128 667 306 547 404 658 402 662 569 321 420 +304 78 559 85 753 676 274 52 63 55 339 124 280 165 355 163 356 247 122 134 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 2 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 +238 648 81 408 80 77 77 326 88 753 142 436 321 414 208 415 202 163 361 257 +242 803 162 538 169 163 169 715 205 1057 447 835 648 780 510 781 504 498 762 634 +315 784 254 638 274 269 284 995 463 1217 826 1237 1001 1151 865 1153 860 907 1189 1063 +409 626 353 565 394 394 412 976 654 1017 1082 1352 1164 1272 1084 1273 1082 1157 1344 1269 +446 499 393 462 446 450 468 887 728 813 1190 1348 1208 1280 1170 1280 1170 1255 1366 1330 +832 773 744 708 854 812 819 953 934 868 1617 1642 1606 1621 1603 1621 1603 1636 1655 1652 +192 196 179 180 205 243 346 340 386 230 643 638 598 608 611 608 613 672 671 682 +448 441 410 406 471 650 768 537 707 460 1283 1202 1186 1174 1230 1173 1233 1312 1259 1299 +233 215 275 200 332 476 502 257 377 224 747 639 660 632 707 632 710 754 682 724 +242 211 360 198 455 619 576 231 333 212 797 621 685 632 754 631 757 787 668 730 +154 122 230 115 302 368 307 126 159 119 402 296 347 311 385 310 387 388 315 350 +57 53 54 50 62 63 60 53 55 53 105 101 103 102 105 102 105 104 102 103 +86 52 134 49 192 196 122 48 52 49 148 86 127 102 146 102 147 131 88 105 +60 28 93 27 121 111 56 24 25 24 73 42 64 48 75 48 75 60 42 44 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 15 14 14 15 15 15 15 15 16 28 28 28 28 28 28 28 28 28 28 +34 34 30 31 33 33 33 34 34 35 61 62 62 62 61 62 61 61 62 62 +44 44 39 41 44 44 44 45 44 46 81 82 81 82 81 82 81 81 82 81 +169 269 137 240 152 152 169 416 280 434 431 553 468 517 432 517 431 465 549 515 +205 260 174 239 196 202 234 512 406 460 633 744 645 696 619 696 618 679 757 731 +558 552 497 505 567 567 654 881 848 727 1416 1485 1387 1429 1381 1429 1381 1470 1521 1514 +522 518 466 476 532 555 740 726 802 535 1376 1369 1311 1326 1330 1326 1333 1418 1416 1433 +507 502 455 461 520 679 784 577 729 517 1309 1240 1225 1215 1263 1215 1266 1333 1289 1323 +428 415 462 383 555 789 830 442 632 428 1266 1111 1141 1101 1209 1100 1213 1276 1173 1234 +447 426 628 397 791 1058 993 442 580 434 1404 1132 1231 1148 1337 1147 1343 1389 1205 1301 +364 314 709 300 976 1233 997 321 380 311 1289 890 1082 947 1226 945 1232 1237 964 1095 +339 217 651 212 973 1108 767 208 246 203 946 553 778 634 909 632 914 866 597 716 +300 141 598 143 902 925 519 121 142 121 626 281 511 374 617 372 621 533 296 391 +257 67 475 73 645 581 237 47 55 49 289 107 238 140 302 138 303 211 105 116 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 52 6 36 6 5 5 10 6 53 7 23 16 22 8 22 8 7 16 8 +149 373 59 241 61 58 58 201 68 433 100 261 197 249 135 249 132 111 220 162 +169 572 112 378 117 113 117 513 145 758 303 582 447 542 348 543 343 340 530 438 +223 565 176 457 190 187 197 726 334 888 577 881 706 817 606 818 602 638 846 753 +241 430 199 384 220 221 241 731 457 762 727 961 798 891 729 892 726 792 955 890 +207 262 176 241 198 204 237 517 411 464 638 750 650 701 623 702 623 684 763 737 +216 236 192 217 218 235 318 479 455 365 725 780 701 735 696 735 696 768 809 804 +290 295 268 271 306 352 508 500 567 334 955 948 891 906 910 906 912 995 994 1011 +344 337 327 311 378 555 675 449 616 358 1117 1033 1015 1003 1061 1003 1064 1146 1092 1134 +515 508 538 468 645 913 961 520 737 522 1474 1305 1338 1294 1412 1293 1416 1486 1373 1440 +407 381 602 356 765 1046 979 400 550 388 1364 1078 1182 1094 1294 1093 1299 1349 1155 1257 +308 260 558 247 760 955 778 266 323 257 1012 711 854 753 963 751 968 972 766 865 +172 134 217 125 278 305 241 131 148 131 347 274 315 289 340 288 341 332 282 304 +31 29 29 27 33 33 32 28 29 29 56 54 55 54 56 54 56 55 54 54 +16 15 15 14 18 17 16 14 14 14 28 26 28 27 28 27 28 27 26 27 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +19 38 5 27 5 5 5 8 5 39 6 17 13 17 7 17 7 6 12 7 +193 522 69 328 69 66 67 270 77 609 118 353 260 335 169 335 165 134 293 209 +216 736 142 487 149 143 148 664 187 978 394 755 579 703 451 704 446 442 688 569 +211 550 167 443 180 177 187 714 323 874 555 857 682 793 583 794 579 615 823 730 +285 476 238 427 264 264 286 784 507 816 809 1047 880 976 810 977 808 876 1041 975 +458 512 404 475 459 462 480 955 777 867 1260 1436 1279 1359 1236 1360 1236 1333 1457 1417 +364 379 323 347 368 382 480 683 654 541 1062 1130 1033 1074 1027 1074 1027 1115 1165 1158 +295 299 272 276 311 357 514 506 574 339 964 957 900 914 918 915 921 1005 1004 1021 +332 325 317 300 366 548 671 441 613 347 1108 1023 1004 992 1051 992 1055 1139 1084 1127 +546 542 556 498 665 923 970 547 756 556 1493 1334 1364 1323 1434 1322 1438 1504 1398 1461 +448 425 653 397 828 1130 1061 442 600 434 1481 1177 1287 1194 1406 1193 1412 1465 1260 1368 +366 316 707 301 976 1239 1005 323 386 313 1294 893 1084 948 1228 946 1235 1241 967 1099 +354 226 698 221 1058 1212 836 217 257 212 1018 585 831 673 977 671 982 932 635 765 +283 137 552 138 833 857 488 118 139 117 588 271 481 356 580 354 583 504 286 373 +245 71 445 76 604 547 231 48 58 49 285 115 236 145 296 143 297 212 113 125 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 19 3 14 4 3 3 5 4 20 5 10 8 10 5 10 5 5 8 5 +115 264 51 175 54 51 52 152 60 306 86 195 151 186 109 186 107 94 167 128 +116 273 78 195 85 82 85 252 108 355 182 298 241 281 200 281 198 197 276 238 +188 417 145 340 159 156 165 528 267 638 438 646 525 602 457 603 455 480 623 559 +305 533 257 478 284 284 306 914 575 950 918 1207 1005 1120 920 1122 917 1000 1200 1120 +437 495 384 458 436 440 462 947 766 855 1233 1414 1252 1334 1209 1335 1208 1309 1436 1394 +360 388 319 356 362 388 556 911 861 660 1387 1504 1337 1407 1326 1409 1327 1479 1565 1553 +786 767 683 701 779 742 900 883 941 730 1626 1622 1589 1597 1598 1597 1601 1649 1648 1658 +560 555 497 509 568 785 931 651 861 569 1554 1463 1442 1429 1493 1429 1497 1588 1529 1574 +459 447 506 413 615 933 992 473 733 460 1495 1291 1330 1277 1419 1276 1424 1510 1374 1455 +504 489 704 455 889 1198 1130 501 656 500 1589 1283 1394 1300 1513 1299 1519 1573 1367 1476 +383 333 749 318 1038 1323 1073 341 408 331 1375 946 1149 1004 1304 1002 1311 1319 1026 1167 +364 232 734 228 1122 1290 888 223 265 218 1072 608 871 702 1027 699 1033 980 661 802 +325 149 680 152 1050 1082 603 128 151 127 708 296 568 407 696 404 700 598 315 429 +260 80 492 84 684 621 260 70 75 72 305 127 251 149 318 147 319 225 126 130 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +172 490 57 300 56 54 55 249 62 575 89 314 224 296 137 297 133 105 257 176 +191 655 127 430 134 129 133 597 168 874 347 669 511 622 397 623 392 390 609 503 +200 465 156 377 170 167 177 597 293 723 484 725 584 673 506 674 503 532 697 624 +333 558 282 501 313 313 335 939 603 974 962 1249 1048 1163 964 1164 961 1044 1242 1163 +430 494 378 458 428 433 457 1004 802 899 1282 1484 1303 1395 1254 1396 1254 1367 1509 1463 +500 501 445 459 508 512 606 827 796 673 1307 1376 1277 1318 1270 1319 1271 1361 1412 1405 +680 669 598 613 683 676 870 855 930 658 1592 1586 1534 1547 1550 1547 1553 1629 1628 1643 +645 643 560 588 638 829 960 707 896 651 1602 1527 1509 1498 1552 1498 1555 1631 1582 1620 +531 525 554 483 667 969 1026 536 782 539 1561 1375 1409 1362 1491 1361 1496 1575 1451 1525 +419 394 630 369 805 1116 1050 413 581 401 1445 1133 1245 1150 1368 1149 1374 1430 1219 1330 +336 287 672 275 938 1204 974 295 362 285 1234 836 1024 890 1167 888 1174 1182 911 1041 +374 243 716 238 1082 1243 867 234 280 226 1059 620 868 709 1016 706 1022 972 671 804 +326 155 655 157 1002 1034 587 131 158 130 698 310 566 413 687 411 691 595 328 436 +198 58 365 62 499 454 193 41 49 43 232 94 192 116 242 115 243 173 93 102 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +124 304 51 196 54 51 52 171 60 356 84 214 162 204 111 204 109 93 181 134 +91 233 61 160 67 65 67 216 84 306 137 239 188 224 152 224 151 150 220 186 +100 186 75 151 85 83 88 230 132 274 189 270 222 252 196 252 195 205 261 236 +180 283 146 251 162 162 181 442 301 457 456 582 493 544 456 544 455 492 580 545 +144 182 122 166 139 143 167 369 293 328 432 512 440 477 421 477 421 466 522 504 +170 191 150 175 171 189 249 344 331 275 507 543 491 513 487 513 488 536 563 559 +150 155 142 143 163 198 269 266 297 189 471 467 437 445 447 445 448 492 492 501 +224 218 224 201 260 375 458 312 420 238 736 678 664 656 697 656 699 758 720 749 +490 483 497 444 593 811 853 497 676 496 1304 1168 1193 1158 1253 1157 1256 1314 1224 1278 +251 220 390 207 500 701 658 243 367 222 889 681 755 692 836 691 841 878 738 812 +241 200 487 192 684 884 714 206 263 198 887 591 730 631 837 629 842 849 647 744 +252 162 518 158 805 932 640 157 184 154 752 416 605 483 719 481 723 686 455 557 +289 134 615 137 964 997 557 117 137 116 641 262 511 363 629 360 633 541 280 386 +233 66 454 71 639 582 240 57 62 59 272 104 220 123 283 121 285 196 104 108 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +202 577 69 352 68 65 66 298 75 678 110 376 270 355 166 355 162 130 310 213 +199 720 138 464 145 140 145 663 179 963 378 735 560 682 433 684 428 427 669 553 +254 670 203 537 218 214 228 892 402 1083 683 1061 841 979 718 981 713 761 1019 905 +322 552 272 495 302 302 325 955 607 986 955 1252 1043 1162 956 1163 954 1040 1246 1164 +282 344 242 317 273 280 316 716 568 635 878 1032 893 963 857 964 856 943 1051 1016 +227 247 201 227 228 246 336 505 482 382 754 812 728 763 722 764 723 800 843 838 +238 243 221 224 253 301 445 439 502 285 826 820 765 779 783 779 785 865 864 880 +170 164 174 152 204 287 346 243 319 184 546 502 491 485 516 485 517 562 534 556 +288 272 333 252 407 620 664 314 492 282 975 830 856 819 920 818 923 986 889 947 +223 196 337 184 431 601 566 216 323 198 760 586 648 595 716 594 720 752 634 696 +288 242 538 231 746 956 780 249 313 239 988 679 823 720 935 718 940 948 737 839 +191 130 334 125 495 568 404 126 150 124 495 305 412 343 476 342 479 458 328 385 +281 135 583 136 909 942 533 117 138 116 617 262 495 356 606 354 610 524 280 379 +191 53 363 57 504 460 193 39 45 40 223 84 180 104 232 102 233 162 83 92 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +175 474 66 294 67 64 64 255 74 558 109 323 237 305 154 306 149 124 269 192 +193 629 131 415 139 134 139 585 177 841 349 655 504 609 396 610 391 391 599 499 +264 649 210 523 227 223 237 859 405 1037 677 1030 824 953 709 955 704 750 991 884 +337 582 286 523 317 318 341 1024 647 1056 1015 1335 1109 1238 1016 1239 1013 1108 1329 1241 +351 440 301 408 338 348 396 1045 810 912 1248 1492 1271 1383 1213 1385 1213 1352 1524 1468 +622 606 555 555 634 625 706 923 895 771 1476 1539 1448 1486 1442 1486 1443 1526 1573 1567 +229 234 213 216 244 290 431 425 487 274 793 787 734 748 751 748 753 831 830 846 +189 184 189 170 220 331 411 272 376 202 652 597 583 576 614 576 616 672 637 665 +271 255 317 236 389 604 649 297 477 265 945 800 825 789 890 788 893 957 860 918 +166 142 227 133 287 384 364 161 229 143 491 387 423 392 464 392 466 486 416 453 +145 116 216 109 289 358 301 120 156 114 384 280 328 293 366 293 368 371 299 334 +122 100 137 94 167 179 153 98 111 96 237 203 222 209 234 209 234 230 207 217 +97 75 114 70 142 145 112 71 76 72 169 139 158 146 168 146 168 160 140 148 +43 32 50 29 60 57 41 30 30 31 64 53 61 56 64 56 64 60 53 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +152 406 59 253 60 58 59 223 68 479 97 279 205 264 135 264 131 110 233 168 +180 605 124 395 131 126 131 566 167 814 328 625 478 580 373 581 369 369 571 474 +217 425 165 351 180 176 190 538 299 637 477 675 558 631 494 632 492 517 653 593 +176 277 143 246 159 160 178 441 301 454 448 575 485 536 448 536 447 485 573 538 +146 156 129 143 143 146 156 176 169 174 297 309 298 304 296 304 296 302 310 308 +151 156 136 144 153 158 167 175 174 170 311 316 309 312 309 312 309 315 319 319 +159 160 147 149 165 173 183 180 184 172 334 333 328 329 330 329 330 337 337 339 +123 121 114 113 128 133 135 129 132 126 244 242 241 241 242 240 243 245 244 245 +132 127 125 119 143 151 153 136 144 131 269 261 262 260 266 260 266 270 264 267 +104 99 100 93 113 119 118 103 109 101 205 198 201 198 203 198 204 205 200 203 +66 63 62 59 70 72 71 64 66 64 125 121 123 122 124 122 124 124 122 123 +61 56 58 52 67 69 65 56 59 56 113 107 110 108 112 108 112 112 108 110 +87 56 135 53 195 202 129 52 57 52 157 94 134 110 154 109 155 140 97 114 +47 21 75 21 102 94 47 19 20 19 57 32 49 36 58 35 59 46 31 34 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +70 167 31 106 33 32 32 98 37 197 46 116 87 110 60 110 58 50 98 72 +54 57 46 52 51 50 51 57 54 60 96 100 98 100 97 100 97 97 100 98 +91 99 78 90 86 85 88 103 95 108 168 178 172 176 169 176 169 170 177 174 +74 76 66 70 74 74 75 79 77 80 139 142 140 141 139 141 139 140 142 141 +117 146 99 132 113 117 137 276 224 246 314 370 319 345 306 345 306 338 377 365 +246 266 219 244 248 267 370 566 540 421 835 901 805 845 799 846 800 889 938 931 +134 137 124 126 144 172 243 240 272 164 420 417 389 396 398 396 399 440 440 448 +234 228 231 211 269 436 557 349 507 249 889 810 789 779 834 779 837 919 868 908 +380 366 420 338 511 779 837 402 627 378 1231 1060 1089 1046 1165 1045 1170 1246 1131 1201 +409 384 598 359 765 1067 1014 405 575 392 1376 1082 1185 1096 1301 1095 1307 1364 1166 1271 +224 183 409 175 568 732 601 190 250 180 752 515 624 545 710 544 714 722 560 638 +284 188 558 183 867 1010 707 183 218 178 833 474 674 544 796 543 801 764 518 627 +246 122 506 123 798 832 477 107 125 106 544 231 435 313 533 311 536 463 247 334 +176 56 341 59 482 443 190 48 52 49 212 89 171 99 220 98 220 156 89 92 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +136 388 48 233 49 48 48 210 55 461 71 250 177 235 108 235 103 84 206 141 +126 390 87 256 94 91 94 371 120 527 215 402 309 374 243 374 240 241 368 307 +246 626 196 501 212 209 221 851 396 1023 644 997 789 919 674 921 670 718 960 853 +349 591 298 532 330 331 354 1053 673 1079 1037 1362 1131 1262 1037 1263 1034 1133 1358 1269 +480 525 425 486 482 486 502 1056 859 941 1347 1545 1364 1455 1318 1456 1317 1432 1572 1528 +736 701 657 642 752 727 785 980 957 842 1590 1640 1566 1597 1562 1597 1563 1631 1668 1663 +953 918 814 838 927 834 953 933 973 830 1698 1697 1691 1693 1691 1691 1693 1702 1702 1703 +550 545 488 500 558 740 873 636 816 559 1429 1352 1332 1322 1376 1321 1379 1459 1410 1449 +391 377 428 348 520 791 851 412 641 389 1251 1079 1108 1064 1185 1064 1189 1266 1151 1221 +193 169 279 158 357 495 470 188 279 171 622 483 530 489 586 488 588 616 522 572 +226 185 411 176 573 740 609 192 254 182 759 519 629 549 716 548 720 729 565 644 +185 128 324 123 488 565 405 125 148 122 488 298 403 335 468 334 470 451 321 379 +126 75 216 73 323 336 207 69 77 69 250 136 210 165 246 165 247 220 142 173 +54 25 85 25 114 106 55 22 23 22 68 40 60 45 70 44 70 56 40 43 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +203 600 70 355 70 67 68 322 78 714 107 388 274 364 165 365 155 126 319 218 +204 768 151 488 158 153 158 732 195 1046 405 793 600 734 463 735 457 459 724 597 +277 724 223 578 241 237 252 997 457 1198 744 1162 915 1069 780 1071 775 832 1118 992 +372 626 319 563 354 355 378 1124 719 1149 1105 1450 1204 1343 1104 1344 1101 1207 1446 1351 +415 501 358 463 403 414 465 1186 932 1030 1415 1681 1436 1560 1374 1561 1374 1530 1718 1658 +464 492 412 451 469 497 704 1116 1065 807 1664 1797 1600 1683 1589 1684 1591 1773 1872 1860 +235 240 219 221 251 299 450 444 509 283 819 812 756 770 774 771 777 859 858 875 +299 292 288 269 334 500 622 414 573 315 994 916 895 884 939 885 942 1025 974 1014 +283 267 325 247 398 618 669 311 498 278 963 818 842 805 907 805 910 976 879 938 +331 304 494 284 636 899 856 327 484 309 1142 886 974 898 1076 897 1081 1133 959 1052 +306 260 580 248 817 1063 874 269 347 258 1083 735 894 779 1021 777 1027 1040 803 918 +231 156 437 151 678 792 560 151 181 148 661 384 537 437 631 436 635 608 418 502 +242 121 500 122 798 834 481 106 125 105 542 227 431 309 530 308 533 461 243 332 +205 70 397 73 563 520 228 62 66 63 250 112 202 119 258 117 259 185 112 114 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +118 300 51 187 53 50 51 176 60 355 80 211 157 199 107 199 102 89 178 131 +153 428 108 291 115 111 116 413 150 577 269 469 369 438 299 439 296 297 434 368 +201 493 158 394 172 169 180 676 323 808 505 782 618 720 528 721 525 564 754 670 +296 478 248 428 276 277 301 825 544 841 823 1067 892 990 821 991 819 895 1064 997 +544 557 486 515 555 554 553 924 793 848 1265 1393 1275 1334 1245 1335 1245 1321 1411 1383 +946 856 846 786 972 897 852 907 901 875 1583 1575 1587 1582 1587 1581 1587 1577 1570 1571 +628 620 555 568 634 636 837 824 902 618 1505 1499 1442 1456 1459 1456 1462 1546 1545 1562 +538 533 480 489 550 765 924 647 860 548 1502 1410 1385 1373 1438 1373 1441 1539 1480 1527 +457 446 490 412 596 922 995 474 749 460 1459 1260 1293 1243 1382 1242 1387 1477 1345 1425 +448 427 619 398 788 1085 1040 446 614 437 1414 1132 1229 1144 1342 1143 1347 1405 1214 1315 +261 213 480 204 674 875 723 222 298 210 896 610 740 645 845 644 850 861 666 761 +271 181 537 177 851 999 702 177 211 172 811 455 652 524 773 522 778 744 500 609 +246 124 504 125 804 842 488 108 128 106 550 233 439 316 538 314 541 469 249 339 +163 48 311 51 435 402 175 34 41 35 195 78 156 90 201 89 202 143 77 85 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +60 122 31 82 35 34 34 81 40 143 49 95 76 91 58 91 57 52 83 67 +75 167 52 116 59 57 59 163 75 222 106 176 140 165 116 165 115 116 163 140 +89 203 67 159 76 75 79 277 139 331 188 298 232 273 197 273 195 211 286 253 +333 548 283 492 314 315 339 977 636 994 960 1254 1042 1162 958 1163 955 1047 1252 1171 +270 329 230 301 259 268 313 687 554 603 826 970 836 903 803 904 803 888 991 958 +586 575 523 527 597 592 672 862 840 721 1358 1414 1330 1365 1326 1365 1327 1404 1445 1441 +746 728 650 666 740 698 791 776 808 692 1371 1370 1356 1360 1360 1359 1361 1381 1381 1385 +306 299 301 276 350 504 619 428 574 326 984 908 888 878 930 878 933 1014 965 1004 +269 250 306 232 370 536 577 304 447 262 835 718 737 708 789 707 792 846 768 815 +284 249 399 234 508 701 671 279 408 252 902 709 774 717 851 716 855 895 765 834 +212 174 335 164 454 577 486 181 237 171 620 447 525 468 589 467 592 599 481 538 +101 86 108 81 130 139 122 85 95 83 195 172 184 176 192 176 193 190 175 182 +65 54 69 50 84 85 72 51 55 51 115 100 109 104 114 104 114 111 101 105 +17 14 17 14 20 19 17 13 14 14 28 26 28 27 28 27 29 28 26 27 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 6 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 +24 24 22 23 24 24 24 25 24 25 45 45 45 45 45 45 45 45 45 45 +26 26 23 24 26 26 26 26 26 26 48 48 48 48 48 48 48 48 48 48 +85 88 75 81 84 84 87 93 90 94 161 165 162 164 161 164 161 162 165 164 +93 95 83 88 93 94 97 100 99 100 179 181 179 180 178 180 178 180 182 181 +84 91 73 82 85 92 128 191 184 142 254 275 243 256 241 256 242 272 288 286 +134 137 124 125 144 173 247 244 278 165 420 416 387 394 396 394 397 441 440 449 +174 169 173 156 202 311 395 259 363 186 607 554 539 532 569 532 571 628 594 621 +292 276 344 256 427 720 790 322 572 287 1116 930 959 913 1043 913 1048 1133 1010 1085 +182 161 282 151 369 535 511 180 285 164 652 492 546 499 610 498 614 647 539 597 +192 158 333 150 466 604 503 164 220 156 617 425 511 448 581 447 585 593 463 526 +241 163 493 158 799 944 663 159 189 155 748 408 595 472 710 471 715 684 451 556 +100 60 177 58 276 290 178 56 62 56 202 102 166 128 198 127 199 177 107 135 +48 23 75 23 101 94 50 20 22 20 62 37 54 41 63 41 63 52 37 40 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +162 503 56 287 56 54 54 279 63 605 76 315 217 294 125 294 113 92 258 172 +181 730 139 453 146 141 146 718 184 1017 370 751 559 691 426 692 419 425 685 562 +263 692 212 549 228 225 239 988 455 1176 709 1122 874 1028 742 1029 737 798 1081 957 +270 446 226 399 251 252 276 804 526 814 773 1016 840 939 770 940 768 846 1015 949 +347 399 302 367 342 349 385 892 717 776 1069 1254 1082 1168 1039 1169 1039 1151 1281 1241 +358 373 318 342 362 379 511 757 729 565 1118 1198 1078 1128 1072 1128 1073 1185 1245 1238 +516 513 461 471 527 552 767 755 841 531 1374 1366 1299 1316 1320 1316 1323 1422 1421 1441 +849 852 700 778 788 902 992 819 951 833 1652 1623 1614 1610 1632 1609 1633 1665 1646 1662 +493 484 517 446 629 979 1062 506 806 498 1545 1339 1370 1319 1464 1318 1469 1566 1428 1512 +382 357 588 334 768 1117 1071 381 585 363 1396 1071 1181 1083 1312 1082 1319 1388 1167 1285 +348 300 667 286 956 1259 1042 311 407 298 1266 851 1038 901 1190 899 1197 1217 934 1072 +313 210 636 206 1030 1219 860 205 248 198 977 537 778 620 928 618 934 895 594 729 +250 125 528 127 864 910 529 109 131 107 580 232 456 322 565 320 569 492 250 349 +186 68 363 70 518 483 217 63 66 64 229 110 184 111 236 111 237 171 109 111 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 18 16 17 17 17 17 18 17 18 32 32 32 32 32 32 32 32 32 32 +22 22 20 21 22 22 22 22 22 23 41 41 41 41 41 41 41 41 41 41 +118 208 88 170 98 96 105 268 162 310 228 318 263 297 235 297 234 247 309 282 +207 329 169 293 188 189 213 564 382 571 552 717 597 664 550 664 549 602 716 671 +127 156 108 141 123 127 152 303 249 267 342 402 346 374 332 374 332 369 411 398 +123 135 108 122 125 136 187 268 259 203 364 392 349 367 347 367 347 388 409 407 +408 410 370 377 424 471 719 708 811 445 1302 1293 1209 1231 1236 1231 1240 1362 1360 1385 +272 266 265 245 308 504 655 411 601 289 1022 931 904 893 957 893 960 1060 1001 1048 +262 247 309 229 385 648 714 293 520 258 995 828 854 812 929 812 933 1012 901 969 +210 187 332 176 437 644 617 209 338 191 780 585 650 592 728 591 732 775 642 713 +222 182 397 174 562 736 614 191 260 180 746 507 614 535 702 534 706 718 555 634 +189 132 348 127 550 649 466 129 154 126 536 312 434 354 511 353 514 495 341 410 +174 94 351 93 573 604 357 84 97 84 391 166 310 223 381 222 383 334 177 241 +177 64 347 66 497 464 209 59 62 60 217 103 174 105 224 105 225 162 103 105 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +158 491 57 276 57 55 56 280 65 593 79 311 214 289 125 290 112 94 255 172 +182 719 140 445 147 143 148 718 188 1010 368 745 554 685 423 686 416 423 681 560 +238 590 190 470 205 203 216 846 406 999 614 959 750 879 640 880 636 689 926 822 +351 590 300 531 333 334 359 1122 721 1129 1056 1401 1150 1290 1051 1292 1049 1161 1401 1308 +487 519 431 479 491 494 511 1121 916 979 1383 1594 1396 1495 1348 1496 1347 1478 1627 1581 +438 466 390 427 443 473 696 1102 1059 778 1595 1726 1525 1609 1517 1610 1519 1707 1804 1794 +991 953 845 870 960 855 989 968 1013 850 1758 1757 1750 1752 1751 1751 1752 1762 1762 1764 +352 346 333 319 385 599 765 497 706 369 1201 1103 1075 1063 1131 1063 1135 1241 1179 1229 +433 420 466 388 570 913 998 454 750 434 1427 1222 1253 1202 1346 1201 1351 1449 1312 1396 +352 326 500 305 645 914 881 351 516 333 1158 908 991 917 1092 916 1097 1153 982 1074 +236 198 434 188 622 820 683 206 280 196 817 549 669 581 767 579 772 786 603 693 +185 130 342 125 545 645 464 127 152 124 530 307 428 348 504 347 507 489 336 404 +80 53 124 50 187 196 128 50 54 50 149 87 126 102 146 102 147 133 90 108 +140 48 275 50 392 367 165 42 46 43 171 78 135 82 176 82 176 126 78 81 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +51 106 27 70 31 29 30 73 35 127 42 83 65 78 50 78 48 45 72 58 +68 152 47 104 54 52 54 154 70 207 95 160 126 149 103 149 102 104 148 127 +67 70 58 64 65 65 66 72 69 75 124 128 125 127 124 127 124 125 128 126 +75 77 67 71 74 75 76 80 78 81 141 144 142 143 141 143 141 142 144 143 +93 95 83 87 93 94 96 100 98 100 178 180 178 179 177 179 177 179 181 180 +148 153 134 142 150 156 166 175 174 168 307 313 305 308 304 308 304 312 316 315 +107 107 97 99 109 112 114 113 114 111 209 208 207 207 207 207 208 210 210 210 +91 90 83 84 94 96 97 94 95 93 176 175 174 174 175 174 175 176 175 176 +127 119 145 109 180 276 302 147 229 124 400 336 345 329 374 329 376 407 364 390 +126 118 125 110 145 157 155 126 138 120 262 246 251 247 257 247 258 261 251 256 +107 97 108 91 127 136 130 100 110 96 214 197 205 199 211 199 211 212 201 206 +87 76 91 71 108 114 103 75 83 74 167 150 159 153 165 153 165 164 152 158 +58 49 62 46 75 76 65 46 50 46 104 91 99 94 103 94 103 101 92 96 +20 16 22 15 26 25 20 15 16 15 32 28 31 30 32 29 32 31 28 29 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +97 288 38 162 40 38 39 172 45 350 52 183 126 170 76 170 68 59 151 104 +105 304 75 197 82 80 83 308 110 424 174 321 245 297 194 297 192 195 296 248 +125 283 97 223 107 105 113 403 206 472 284 441 345 404 295 404 293 318 427 379 +119 213 97 187 109 110 124 420 268 421 351 485 386 441 348 441 347 392 485 449 +390 432 341 397 387 394 427 991 804 854 1178 1377 1188 1282 1144 1283 1143 1268 1410 1366 +589 579 525 531 599 595 711 947 924 756 1450 1520 1412 1457 1408 1457 1409 1511 1563 1558 +783 763 680 698 774 728 861 844 891 719 1498 1495 1472 1478 1479 1477 1480 1515 1514 1521 +784 785 656 717 741 864 964 786 923 774 1582 1544 1532 1527 1554 1526 1556 1599 1575 1595 +575 572 565 526 679 1005 1086 572 856 586 1587 1408 1434 1389 1516 1388 1521 1608 1488 1562 +426 404 618 377 806 1166 1127 427 640 412 1462 1138 1246 1149 1377 1147 1384 1457 1236 1356 +337 290 652 277 951 1271 1058 302 409 288 1254 829 1018 879 1174 877 1181 1206 917 1059 +295 201 611 197 1021 1223 868 197 240 190 956 511 752 593 905 591 911 876 571 709 +248 124 550 126 937 995 580 108 131 105 606 221 466 318 588 316 592 511 240 351 +145 55 284 57 407 383 177 50 53 51 180 90 143 92 185 92 185 135 90 91 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +156 514 55 278 55 53 54 300 63 627 75 318 213 294 119 294 102 87 259 172 +178 705 137 430 144 140 145 725 190 1010 357 735 541 673 410 675 403 414 673 551 +257 668 208 528 224 222 237 997 471 1170 691 1102 851 1005 720 1006 715 782 1065 942 +348 580 297 523 331 332 358 1138 736 1135 1050 1398 1142 1285 1043 1286 1040 1158 1400 1307 +413 451 362 415 411 418 448 1059 858 908 1253 1465 1262 1363 1215 1364 1214 1349 1500 1454 +576 569 513 521 586 584 720 988 963 769 1494 1573 1449 1500 1444 1501 1446 1563 1623 1617 +687 675 604 619 689 682 908 891 979 661 1599 1591 1530 1546 1550 1546 1553 1642 1641 1659 +730 729 621 667 704 872 1006 777 956 726 1628 1567 1548 1540 1584 1540 1587 1656 1616 1648 +548 543 547 499 661 1002 1089 551 850 557 1575 1385 1411 1365 1499 1364 1504 1597 1470 1548 +417 394 608 368 796 1159 1122 418 635 403 1445 1120 1227 1130 1360 1129 1366 1441 1219 1339 +360 312 697 298 1020 1367 1141 325 441 310 1346 890 1092 942 1260 940 1268 1295 985 1138 +313 213 653 209 1102 1324 940 209 256 200 1029 545 806 634 972 631 979 942 611 761 +259 128 584 131 1005 1070 624 111 136 108 643 227 491 331 623 329 628 541 248 367 +124 49 240 50 342 323 151 44 47 45 155 80 125 82 159 82 160 118 80 82 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 135 24 79 26 25 25 87 30 165 33 91 66 85 43 85 40 36 77 56 +74 250 53 152 59 58 59 259 79 359 118 247 179 225 135 225 133 137 225 183 +95 207 72 161 81 80 86 298 156 347 199 313 243 286 207 286 206 224 303 269 +277 443 233 397 259 261 287 830 553 827 780 1025 844 944 775 945 773 857 1027 961 +404 440 354 404 402 409 440 996 814 856 1185 1379 1193 1285 1150 1286 1150 1274 1412 1370 +361 376 321 345 366 384 547 827 800 592 1184 1273 1133 1190 1128 1191 1130 1263 1329 1323 +379 381 345 350 395 450 718 705 818 421 1273 1262 1172 1195 1202 1196 1206 1338 1336 1363 +401 395 372 363 429 637 802 542 747 417 1247 1154 1124 1113 1178 1113 1182 1287 1227 1276 +302 288 348 266 433 744 827 336 609 300 1134 945 971 925 1057 924 1062 1156 1029 1107 +328 302 477 283 625 910 882 329 507 308 1126 870 953 877 1058 876 1063 1124 948 1043 +294 250 546 238 797 1065 893 262 359 248 1052 700 855 740 985 738 991 1013 774 892 +236 165 410 159 647 768 564 162 201 156 654 393 532 440 622 438 626 607 428 508 +213 109 473 111 818 872 512 96 116 95 525 190 402 273 508 271 512 443 206 302 +95 35 169 37 233 220 108 24 31 25 122 61 100 70 124 69 125 95 61 68 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +108 383 35 197 36 36 35 226 40 473 39 221 140 202 69 202 56 46 177 111 +144 529 106 324 113 110 114 554 157 766 269 553 405 505 308 506 302 312 506 415 +223 530 177 421 193 190 204 789 394 916 560 874 680 798 581 799 577 630 846 753 +275 424 230 379 257 259 285 770 525 765 740 958 796 886 734 887 733 808 961 902 +391 426 343 391 389 396 428 932 768 803 1115 1291 1121 1205 1083 1206 1082 1196 1322 1284 +499 500 445 458 507 513 642 872 851 677 1300 1371 1259 1305 1255 1305 1257 1363 1416 1412 +642 632 566 579 646 647 858 842 925 627 1495 1488 1429 1444 1448 1444 1451 1537 1536 1553 +572 568 505 521 576 750 891 664 841 579 1411 1339 1316 1307 1358 1307 1361 1443 1396 1434 +357 343 397 317 492 830 922 389 687 356 1272 1069 1096 1047 1189 1047 1194 1295 1160 1244 +277 252 450 237 604 926 897 279 478 257 1102 817 910 825 1026 824 1032 1100 905 1011 +256 216 475 206 697 936 786 227 316 215 915 605 741 640 856 638 861 882 670 775 +229 161 443 156 741 891 642 158 193 153 704 387 557 444 666 443 670 648 431 529 +92 54 187 53 325 347 209 51 56 51 208 82 161 112 202 111 203 177 87 123 +29 21 34 19 44 42 29 22 21 22 42 34 39 36 42 36 42 39 34 35 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 14 12 13 14 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 +26 26 23 24 25 25 25 26 26 26 47 47 47 47 47 47 47 47 47 47 +52 53 46 49 51 51 52 54 53 55 95 97 96 97 95 97 95 96 97 96 +107 114 93 105 103 104 109 125 118 126 206 215 208 212 206 212 206 209 215 213 +128 135 114 125 127 130 138 152 147 150 258 266 258 262 256 262 256 261 267 266 +144 148 130 137 145 151 161 169 168 162 297 302 294 297 294 297 294 301 305 304 +66 68 61 62 72 93 153 150 177 85 246 243 221 226 228 227 229 262 262 269 +152 149 143 139 163 175 184 169 179 158 323 316 314 313 318 313 318 326 322 326 +62 61 56 57 63 64 64 62 63 62 116 116 116 116 116 115 116 116 116 116 +161 144 269 135 368 573 555 162 292 147 655 474 532 478 606 478 610 654 530 597 +225 190 436 181 650 882 739 200 285 189 842 544 674 577 784 575 790 810 607 707 +208 146 433 142 753 913 652 145 174 140 689 356 534 416 648 414 653 630 403 506 +36 32 36 30 42 42 39 31 33 31 65 61 63 62 65 62 65 64 61 62 +99 42 187 42 267 253 123 38 40 38 125 69 100 71 127 71 128 96 69 70 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +118 420 41 214 42 42 42 257 48 522 52 249 159 227 82 228 67 58 201 129 +167 666 129 398 136 133 138 713 190 981 332 701 509 638 382 639 375 389 642 524 +92 168 71 134 80 79 85 234 138 267 174 253 203 234 178 234 178 191 247 223 +73 75 65 69 72 73 74 78 76 79 137 140 138 139 137 139 137 138 140 139 +90 92 81 85 90 91 94 97 96 97 173 175 173 174 172 174 172 174 176 175 +117 119 106 111 119 122 127 130 130 128 233 235 232 233 231 233 232 235 237 237 +138 139 127 129 143 150 157 155 159 149 285 284 280 281 281 281 282 288 287 289 +129 126 128 116 151 228 290 196 270 140 414 376 364 360 386 360 387 430 406 425 +182 170 210 158 261 419 465 214 353 179 622 520 533 509 580 508 583 634 566 608 +223 199 341 187 454 682 664 226 375 202 817 614 678 618 762 618 766 816 677 752 +218 180 381 171 554 740 627 190 270 178 734 493 597 519 687 518 691 708 544 625 +161 117 279 112 454 543 401 116 141 113 449 265 362 297 426 296 429 416 291 347 +108 62 230 61 408 437 263 58 65 58 258 99 197 134 249 133 251 218 104 149 +81 32 155 33 221 210 101 28 30 29 101 53 80 56 103 56 103 76 53 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +101 344 38 176 39 38 39 216 45 427 50 209 136 191 74 192 62 55 171 113 +157 613 120 366 128 125 130 664 182 909 308 648 470 590 353 591 347 361 594 486 +235 597 189 470 205 203 218 936 456 1081 623 1003 766 910 646 911 642 710 972 860 +341 560 291 505 324 326 354 1160 758 1139 1034 1386 1121 1267 1022 1268 1020 1147 1392 1299 +472 492 416 452 474 479 501 1158 954 984 1365 1584 1369 1474 1322 1476 1322 1468 1624 1578 +718 689 640 632 731 708 824 1055 1037 853 1624 1687 1584 1626 1582 1626 1583 1681 1728 1724 +952 918 815 840 924 835 1000 978 1036 825 1749 1748 1728 1733 1734 1732 1735 1764 1763 1769 +920 924 749 843 838 952 1057 873 1017 889 1740 1713 1704 1700 1721 1699 1722 1754 1736 1751 +670 676 623 619 741 1065 1150 644 936 688 1677 1516 1537 1497 1612 1496 1616 1699 1591 1658 +457 437 645 407 851 1256 1227 460 703 447 1547 1204 1314 1212 1457 1210 1464 1549 1313 1442 +349 301 673 287 1010 1376 1160 316 446 299 1325 860 1061 910 1234 908 1242 1276 961 1117 +263 184 553 180 978 1192 855 182 223 174 898 459 692 537 843 535 850 821 522 658 +234 118 542 121 975 1048 621 103 128 100 609 211 455 298 587 296 591 510 223 337 +95 54 177 52 256 245 125 63 58 64 124 87 103 82 126 82 126 99 87 83 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +126 456 46 226 46 45 45 287 53 569 60 273 174 249 90 250 74 65 222 144 +164 656 127 388 135 131 136 719 195 982 325 694 500 630 373 632 367 384 637 519 +246 633 199 498 216 213 229 1009 490 1162 662 1072 815 971 686 972 682 757 1040 919 +336 551 287 498 319 322 350 1156 757 1132 1022 1373 1108 1254 1010 1255 1008 1136 1380 1288 +459 480 405 441 461 466 492 1155 951 976 1346 1567 1350 1456 1302 1458 1302 1452 1609 1562 +530 529 472 485 539 542 713 998 977 743 1455 1541 1400 1458 1397 1458 1399 1535 1599 1595 +676 665 595 610 678 679 921 901 997 653 1589 1581 1514 1531 1536 1531 1539 1638 1636 1655 +665 662 576 606 654 856 1023 758 968 667 1609 1529 1501 1492 1549 1492 1552 1645 1593 1636 +513 506 519 466 632 1005 1110 525 861 520 1549 1343 1368 1318 1464 1317 1469 1576 1438 1524 +451 430 639 401 846 1256 1229 454 702 440 1538 1193 1303 1200 1447 1199 1454 1541 1303 1433 +311 266 604 254 913 1250 1055 280 402 265 1192 767 950 812 1108 810 1116 1148 859 1003 +276 193 588 189 1053 1288 924 190 235 182 961 484 736 568 901 566 908 879 553 702 +217 110 514 113 941 1013 600 97 120 94 577 194 427 275 555 272 559 482 204 313 +88 45 167 44 239 229 115 47 46 47 113 73 92 71 115 71 115 89 73 72 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +103 366 39 181 41 39 40 235 47 458 53 221 142 202 75 202 63 56 181 119 +142 510 105 307 112 109 114 563 170 765 262 545 395 495 298 496 294 307 501 410 +159 349 125 276 137 136 147 534 283 609 371 574 446 523 382 523 380 418 558 498 +124 137 106 125 118 119 128 157 144 158 245 261 249 255 244 255 244 250 261 257 +155 169 136 155 151 157 173 206 195 198 328 345 328 336 324 336 324 336 349 345 +102 103 92 96 104 106 109 110 110 109 199 200 198 199 198 199 198 200 201 201 +128 128 117 119 132 137 143 141 144 136 259 259 255 256 256 256 257 261 261 262 +138 134 139 123 166 246 311 216 291 152 444 404 390 386 414 386 415 461 436 457 +164 154 190 142 237 393 440 194 332 162 573 475 487 464 532 463 534 585 520 561 +230 204 329 191 435 640 627 234 374 208 776 593 650 597 725 596 729 776 651 719 +248 210 455 200 682 929 789 222 318 209 892 583 715 615 831 614 836 861 650 755 +242 172 493 167 876 1071 775 170 210 163 809 419 624 487 759 485 765 742 475 597 +152 82 353 83 652 703 420 75 88 74 399 139 296 192 383 190 386 334 145 218 +72 30 139 31 198 190 93 27 29 28 90 51 71 52 92 52 92 69 51 52 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +36 106 17 56 19 18 18 73 22 133 24 69 47 64 29 64 26 25 58 41 +109 373 80 224 87 85 89 416 132 561 191 396 286 359 216 360 213 224 364 299 +88 190 68 147 77 76 82 293 157 333 184 294 224 266 190 266 189 209 285 253 +178 303 148 270 165 167 188 655 428 636 542 745 590 675 534 676 533 608 750 697 +394 424 345 387 392 400 436 1075 881 895 1213 1427 1214 1318 1169 1319 1168 1316 1469 1424 +655 637 584 584 666 653 803 1058 1041 822 1582 1655 1533 1582 1531 1583 1533 1651 1706 1702 +676 665 595 610 678 679 920 898 995 653 1575 1566 1500 1517 1523 1517 1526 1623 1621 1641 +525 521 471 478 539 768 959 669 901 537 1468 1369 1336 1325 1394 1325 1398 1512 1449 1501 +336 322 368 297 457 773 867 372 656 335 1163 977 998 954 1085 954 1090 1187 1063 1141 +323 297 478 278 643 978 959 327 541 304 1166 882 971 887 1089 886 1095 1169 973 1080 +268 228 501 217 758 1039 882 241 348 227 989 640 789 676 919 674 926 954 716 835 +257 182 533 177 962 1182 855 180 224 172 882 448 676 523 827 521 833 809 512 647 +186 98 442 99 826 893 533 87 106 84 502 171 369 235 482 233 485 419 177 270 +57 23 96 24 131 125 66 15 20 15 75 41 62 47 76 47 76 61 41 46 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +98 378 36 178 37 37 37 248 43 479 45 220 135 199 65 199 52 47 178 113 +128 547 99 312 105 103 107 624 167 847 252 574 402 516 291 517 287 304 525 423 +236 580 191 456 207 205 221 945 475 1075 618 994 755 899 638 899 634 707 966 856 +295 485 251 437 279 282 310 1058 697 1024 907 1228 981 1116 893 1118 891 1013 1237 1153 +378 410 331 373 376 384 423 1071 876 884 1190 1407 1191 1295 1145 1297 1145 1296 1450 1405 +516 516 460 473 525 530 714 998 981 731 1433 1519 1374 1433 1372 1433 1374 1515 1580 1576 +362 365 331 335 379 439 691 674 785 406 1168 1156 1070 1092 1100 1092 1103 1231 1228 1254 +310 304 296 280 345 549 720 469 670 329 1062 968 936 926 991 926 995 1104 1044 1093 +252 239 285 221 356 603 680 291 513 250 895 745 762 726 831 726 835 915 814 877 +283 259 424 242 573 880 865 288 486 264 1038 779 859 783 967 782 973 1041 862 960 +284 241 515 230 778 1064 908 255 367 240 1021 667 817 703 950 701 956 986 745 865 +240 171 507 167 936 1154 835 170 210 162 847 419 643 493 791 491 798 774 483 616 +182 96 436 98 823 892 533 85 105 83 497 168 362 229 476 227 480 414 173 265 +28 0 80 2 120 115 45 0 0 0 25 0 11 0 26 0 26 10 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +97 371 37 174 38 37 38 248 45 471 49 219 136 198 67 199 55 51 178 115 +156 592 116 347 123 120 126 680 203 915 295 638 453 576 336 577 332 351 586 477 +241 607 195 477 212 210 227 1012 504 1149 644 1050 791 947 665 947 661 741 1021 902 +288 474 245 428 273 275 304 1053 694 1015 892 1212 965 1100 878 1101 875 998 1222 1138 +375 407 328 370 373 381 421 1073 879 883 1185 1402 1184 1289 1139 1291 1138 1291 1446 1402 +700 675 624 619 713 691 827 1056 1043 837 1594 1658 1550 1594 1549 1594 1550 1656 1703 1701 +1001 962 852 880 965 855 995 971 1019 848 1732 1733 1725 1727 1727 1726 1728 1738 1737 1739 +1011 1019 806 928 892 924 971 872 948 959 1640 1654 1658 1659 1651 1658 1651 1636 1645 1637 +500 492 498 453 605 946 1047 513 826 507 1446 1259 1280 1235 1367 1235 1372 1472 1347 1425 +351 326 479 304 635 937 923 357 552 334 1141 887 966 891 1072 890 1077 1145 970 1066 +282 240 510 228 773 1060 907 254 367 238 1014 660 809 696 942 694 948 979 739 859 +243 174 486 169 882 1085 793 173 216 164 815 419 625 487 763 485 769 749 478 602 +165 89 387 90 733 795 479 80 97 78 446 157 326 208 427 206 430 373 162 240 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +51 176 22 85 23 23 23 122 28 223 29 107 68 97 37 97 32 30 88 59 +74 233 54 139 60 59 61 269 94 357 117 244 174 220 131 220 130 137 225 184 +124 290 99 226 109 108 117 478 247 540 297 482 363 434 306 434 304 341 469 415 +262 406 221 365 247 249 278 843 575 813 743 986 798 900 732 902 730 824 994 931 +310 346 269 314 306 315 360 850 704 703 942 1109 940 1022 905 1023 905 1024 1144 1110 +388 400 346 366 395 412 578 813 801 585 1136 1211 1083 1134 1082 1135 1084 1208 1265 1262 +380 382 346 351 396 466 788 766 907 423 1326 1310 1203 1230 1240 1230 1244 1404 1399 1432 +228 223 223 205 262 446 600 376 557 246 859 774 744 736 794 736 798 897 843 888 +191 180 225 166 288 532 609 227 448 189 768 623 638 604 706 604 710 788 691 752 +160 144 242 134 332 517 509 164 287 147 588 432 480 434 544 434 548 590 483 541 +124 103 179 96 257 338 296 110 152 102 339 239 281 249 318 248 320 329 261 295 +146 114 205 108 316 374 293 114 136 111 347 237 293 255 332 254 334 329 253 287 +158 88 333 88 612 664 409 79 97 76 396 161 298 202 380 200 383 337 166 229 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +38 133 17 63 18 18 18 93 21 169 23 81 52 73 28 73 25 23 67 45 +92 333 69 192 75 74 77 392 125 523 159 352 247 316 181 316 179 191 323 262 +141 314 112 246 123 123 133 512 273 576 332 527 401 476 341 476 339 379 514 457 +68 103 56 89 64 65 74 206 143 199 162 219 174 198 159 198 158 181 221 206 +128 151 110 135 126 131 161 379 313 310 386 463 384 422 369 423 369 424 479 464 +241 259 215 236 246 268 414 610 601 417 812 876 766 810 765 810 767 875 923 921 +120 124 112 113 131 173 295 286 343 155 462 456 411 422 427 422 428 495 493 507 +131 129 130 118 154 236 306 206 286 143 421 381 367 363 390 363 392 438 413 434 +101 95 112 87 143 237 268 121 204 100 318 261 266 253 293 253 295 326 287 312 +129 114 172 106 229 331 328 134 207 116 388 298 325 299 362 298 364 389 327 361 +58 50 94 46 148 203 175 53 75 51 175 110 137 117 161 116 163 169 125 147 +97 75 141 71 228 273 211 76 91 74 232 148 191 162 220 161 222 218 160 186 +61 43 95 41 159 171 115 41 46 42 123 72 101 80 119 80 120 110 73 87 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +26 90 12 43 13 12 12 64 15 115 16 55 35 50 19 50 17 17 46 31 +109 432 84 244 90 88 92 518 157 689 203 463 321 414 233 415 230 247 425 343 +212 536 172 418 187 186 201 931 468 1046 568 940 699 843 585 843 581 658 915 807 +319 511 273 462 304 307 338 1175 783 1120 983 1335 1060 1209 965 1211 962 1103 1348 1258 +215 251 185 226 210 220 267 649 536 528 685 818 682 747 655 748 655 752 847 820 +379 391 338 358 385 404 602 873 861 601 1191 1276 1128 1187 1128 1188 1130 1275 1340 1337 +655 645 578 592 659 671 935 909 1019 638 1569 1559 1484 1503 1511 1503 1514 1624 1621 1644 +792 791 666 724 750 927 1085 839 1037 779 1701 1637 1614 1607 1652 1606 1655 1730 1690 1724 +583 580 563 533 681 1079 1200 580 951 594 1643 1437 1458 1409 1555 1408 1561 1674 1535 1623 +424 401 607 374 823 1275 1262 431 714 410 1500 1140 1250 1143 1403 1142 1411 1511 1260 1399 +323 277 621 264 976 1368 1171 294 439 275 1262 792 988 837 1166 835 1174 1219 899 1060 +256 184 539 179 1033 1289 941 183 232 172 928 447 696 528 863 526 871 850 521 672 +184 98 430 100 836 912 556 86 110 83 506 180 365 229 482 227 486 423 186 269 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +82 346 32 152 34 34 34 245 40 448 42 199 118 178 53 178 45 43 161 101 +131 528 102 297 109 107 111 643 197 852 252 574 398 514 289 515 284 307 528 426 +167 396 134 310 147 146 159 682 354 762 422 687 514 617 433 617 430 486 670 593 +250 405 211 365 236 238 268 945 630 897 773 1057 833 954 757 956 755 870 1069 996 +330 364 288 330 327 337 389 943 783 767 1023 1208 1017 1108 979 1110 979 1116 1249 1212 +260 281 232 257 265 293 517 817 806 513 1051 1145 979 1045 979 1046 981 1146 1218 1215 +160 164 149 150 173 227 396 383 461 202 628 618 558 572 579 573 581 672 669 688 +194 189 198 175 234 347 443 308 416 215 635 579 558 553 591 553 594 660 624 654 +240 224 276 208 343 556 628 294 485 237 825 689 702 671 765 671 769 843 753 810 +170 152 236 142 319 481 477 176 288 155 560 423 464 424 521 424 524 562 468 520 +121 102 197 96 303 416 360 109 157 103 385 251 306 264 357 263 359 372 281 327 +115 88 187 83 324 395 300 89 108 86 315 184 251 205 297 204 299 293 204 245 +105 62 236 62 465 508 313 58 68 57 280 105 203 129 267 128 269 235 108 152 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +57 253 22 107 23 24 23 181 27 330 25 140 80 124 32 125 27 26 113 68 +100 406 77 225 83 82 85 502 157 664 184 436 297 388 213 389 209 228 400 321 +178 433 144 338 158 157 170 763 392 851 462 761 565 681 473 681 470 535 742 655 +273 444 233 401 259 262 293 1068 710 1009 863 1186 930 1068 844 1070 842 974 1200 1117 +80 93 68 82 79 82 102 225 188 184 215 258 213 235 205 235 205 237 268 259 +144 160 128 145 147 168 245 335 332 243 434 466 410 432 410 432 411 467 491 491 +184 188 171 172 198 250 392 380 447 228 620 611 559 572 578 572 580 658 656 672 +306 301 293 277 342 557 742 478 692 326 1059 960 924 914 982 914 986 1103 1041 1093 +254 241 288 223 365 668 768 296 575 254 967 791 808 767 890 767 895 992 875 949 +217 195 324 183 445 700 695 226 396 199 802 593 655 594 743 594 748 807 662 742 +209 175 378 166 591 827 714 188 284 174 766 486 602 512 707 511 713 741 550 646 +170 127 319 122 600 746 555 127 158 122 552 284 420 328 514 326 519 508 325 409 +129 74 290 74 570 624 386 67 82 65 348 132 252 161 331 159 334 292 137 189 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +79 369 31 153 32 33 32 268 38 482 38 206 117 182 46 183 40 39 165 100 +145 576 113 321 121 119 124 721 233 947 279 637 439 569 319 570 314 342 588 475 +228 570 185 444 201 200 217 1032 525 1147 614 1022 754 913 629 912 625 715 998 880 +315 496 269 449 300 304 336 1190 799 1121 973 1326 1046 1197 951 1199 949 1096 1343 1253 +431 455 379 414 432 440 494 1199 1000 968 1306 1534 1296 1410 1250 1411 1250 1423 1587 1542 +620 608 553 558 631 622 820 1095 1088 804 1567 1646 1503 1560 1504 1560 1506 1648 1709 1707 +809 790 703 724 799 768 1011 981 1077 741 1695 1687 1631 1645 1652 1645 1654 1737 1734 1751 +775 774 655 708 738 929 1101 839 1051 763 1701 1629 1602 1595 1645 1594 1649 1733 1688 1726 +561 557 546 511 664 1087 1219 564 962 571 1632 1414 1434 1383 1538 1382 1545 1667 1520 1613 +412 388 592 362 812 1282 1275 420 719 397 1481 1114 1224 1116 1381 1115 1389 1496 1239 1382 +314 269 602 257 966 1368 1179 287 435 267 1242 768 963 812 1142 810 1151 1201 878 1041 +244 177 513 173 1022 1286 946 178 227 166 908 425 672 505 841 502 848 831 500 653 +173 93 423 95 867 951 583 82 105 78 503 169 353 209 477 207 481 417 176 254 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +71 345 28 141 30 30 30 254 35 453 34 191 106 168 41 167 36 36 154 92 +137 518 106 292 114 112 117 657 220 857 257 580 401 518 293 519 287 315 536 435 +217 525 176 410 192 191 208 953 494 1054 572 944 699 844 585 843 581 665 923 816 +301 465 257 421 287 290 323 1108 752 1041 910 1234 976 1114 889 1116 887 1024 1251 1169 +418 444 368 404 419 427 488 1192 995 957 1284 1513 1273 1387 1227 1389 1227 1403 1567 1522 +578 572 516 524 588 586 802 1090 1084 780 1532 1617 1463 1524 1464 1524 1466 1620 1685 1684 +750 735 656 674 746 737 1002 970 1079 704 1665 1655 1587 1604 1612 1604 1614 1715 1712 1733 +725 723 621 662 701 914 1103 819 1049 719 1679 1595 1564 1555 1614 1555 1617 1717 1664 1708 +543 537 532 494 649 1084 1222 551 960 552 1618 1393 1413 1361 1520 1360 1527 1654 1502 1599 +403 379 582 354 802 1276 1271 413 715 388 1464 1096 1206 1097 1363 1096 1371 1479 1222 1365 +309 264 593 253 958 1363 1177 283 433 263 1229 755 950 799 1129 797 1138 1188 866 1029 +237 173 499 169 1004 1268 934 174 222 162 888 410 654 490 821 487 829 813 486 638 +166 89 405 92 842 927 570 79 102 75 486 164 336 198 457 196 464 402 170 243 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +24 103 11 44 12 11 12 79 14 136 14 60 35 53 16 53 15 15 49 31 +68 175 50 108 56 55 57 216 93 276 102 196 143 178 112 178 110 119 183 154 +99 194 79 152 88 88 95 325 186 356 210 324 248 292 213 292 212 238 318 284 +116 166 94 145 106 109 129 312 230 296 273 353 288 323 268 323 267 301 357 337 +167 197 144 177 163 172 220 468 396 379 489 578 484 529 467 529 467 536 600 582 +256 277 229 253 262 292 419 566 564 408 758 808 717 753 718 753 719 811 849 849 +285 289 263 265 303 369 586 564 665 334 929 916 840 858 868 859 871 985 980 1005 +205 201 203 185 240 379 498 331 467 224 692 626 602 595 640 595 643 722 680 715 +250 235 284 218 358 641 738 301 560 249 925 758 773 735 851 735 856 949 838 909 +185 166 267 155 369 580 579 193 337 170 657 485 535 486 607 485 611 661 543 609 +120 101 171 94 253 338 300 109 152 101 333 232 272 241 311 240 313 324 255 289 +99 79 142 74 235 285 223 80 96 78 243 155 199 169 230 168 231 229 169 196 +53 36 102 34 205 225 145 34 39 34 126 55 92 62 119 61 121 107 56 72 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 5 4 4 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 +35 37 31 34 34 34 35 37 36 39 64 66 65 65 64 65 64 64 65 65 +39 40 35 37 39 39 40 40 40 41 72 73 72 73 72 73 72 72 73 73 +48 49 43 45 49 49 49 50 49 50 90 91 90 90 90 90 90 90 91 91 +60 61 54 56 61 61 62 63 62 63 114 114 114 114 113 114 113 114 114 114 +66 67 60 62 67 68 69 69 69 69 126 126 125 126 125 126 125 126 126 126 +65 64 59 60 66 66 67 66 66 66 122 122 121 122 122 122 122 122 122 122 +100 98 96 89 116 189 253 164 236 108 318 284 271 268 292 268 293 334 312 330 +98 93 107 85 139 237 272 120 208 98 310 252 256 243 284 243 286 319 280 305 +220 200 333 187 470 766 766 230 427 205 847 613 681 613 780 612 785 855 693 783 +216 184 396 175 643 917 797 197 304 184 820 505 632 533 752 531 758 794 579 688 +189 141 394 137 814 1033 765 143 180 135 710 319 518 385 654 383 661 650 384 507 +136 76 323 77 689 762 472 68 86 65 396 138 269 160 368 159 377 328 143 198 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +54 282 24 110 26 26 26 219 31 377 29 156 82 137 31 131 31 30 126 75 +136 539 107 297 115 112 118 720 241 930 252 611 412 541 294 542 282 322 565 455 +202 486 165 380 180 180 196 932 486 1018 537 898 656 798 547 798 543 630 880 777 +273 417 232 377 259 263 297 1036 709 961 827 1129 884 1014 806 1016 804 935 1147 1071 +387 416 340 378 387 397 472 1138 956 900 1199 1416 1184 1293 1142 1295 1142 1315 1471 1430 +520 520 464 477 529 535 766 1050 1050 728 1438 1523 1364 1426 1367 1427 1369 1530 1595 1595 +488 486 438 446 501 563 882 847 991 513 1414 1396 1295 1319 1332 1320 1336 1488 1482 1514 +321 316 305 291 356 610 833 521 778 341 1151 1036 993 982 1061 982 1066 1203 1131 1192 +302 289 325 267 407 726 834 347 640 303 1045 866 880 840 965 839 970 1073 953 1029 +313 289 454 270 633 1019 1021 325 580 296 1149 849 935 848 1064 847 1070 1161 952 1069 +163 137 249 129 379 521 460 148 215 136 501 338 403 352 465 351 468 487 376 432 +114 91 159 86 262 318 252 92 111 90 279 183 230 198 264 197 266 264 198 228 +62 46 93 44 161 175 121 45 50 45 131 82 107 87 126 87 127 118 84 95 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +34 158 17 64 18 18 18 126 22 212 22 92 50 81 23 77 23 23 75 47 +91 277 68 162 75 74 77 364 143 464 148 317 222 283 167 283 161 181 296 243 +118 240 94 188 105 105 114 428 242 464 267 421 317 378 271 378 270 307 414 370 +149 224 125 198 140 143 166 516 362 479 413 558 440 502 402 503 402 465 567 530 +163 182 142 166 159 168 194 247 231 227 363 389 362 374 357 374 357 377 395 390 +145 151 132 140 148 157 172 184 184 171 311 317 306 310 306 310 306 317 322 322 +122 124 113 114 133 180 315 300 365 156 462 453 405 416 423 417 424 497 494 510 +168 164 166 151 196 327 441 283 412 183 590 529 505 500 542 500 544 618 579 612 +138 128 155 119 196 317 361 175 283 137 442 366 372 355 408 355 410 454 403 435 +135 122 189 113 266 421 422 142 248 125 460 337 371 336 424 336 426 464 379 426 +199 167 354 159 574 820 717 181 282 167 737 457 569 481 676 480 681 714 524 620 +169 128 327 123 663 842 631 129 164 122 591 278 437 331 546 329 551 544 331 430 +86 53 179 53 374 415 264 49 60 48 228 94 159 104 211 103 217 192 98 124 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +42 232 20 88 22 23 22 187 27 315 25 129 65 112 26 105 26 26 104 62 +120 471 94 258 101 100 104 652 222 835 215 540 359 475 254 476 240 282 500 401 +197 479 161 374 176 175 192 953 499 1034 528 898 648 794 537 794 533 625 882 776 +304 443 259 401 291 295 331 1079 754 996 881 1184 936 1068 858 1069 856 992 1204 1129 +415 438 366 399 417 426 493 1015 874 822 1127 1298 1113 1200 1081 1201 1081 1220 1343 1311 +610 598 544 549 621 611 783 990 993 745 1420 1479 1365 1410 1368 1410 1370 1486 1532 1532 +552 547 492 502 562 618 959 918 1071 564 1526 1507 1403 1428 1442 1429 1446 1604 1596 1630 +536 531 480 488 550 837 1093 730 1029 548 1553 1429 1381 1370 1455 1370 1461 1610 1532 1598 +442 431 450 397 557 1032 1189 475 915 447 1488 1240 1259 1203 1377 1202 1384 1528 1362 1469 +393 369 551 344 766 1230 1238 406 710 378 1393 1039 1140 1037 1292 1036 1300 1408 1162 1300 +260 221 484 211 803 1162 1015 239 378 221 1022 617 779 651 934 650 941 990 715 855 +205 151 361 145 686 864 658 152 200 142 650 338 494 389 604 388 609 603 391 489 +120 73 227 72 449 498 323 67 84 64 300 142 219 155 280 155 288 259 147 180 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +20 48 13 26 14 14 14 42 18 62 20 37 27 34 21 34 21 21 33 26 +90 173 67 120 74 73 77 213 116 260 143 222 177 206 151 206 149 158 212 188 +129 213 102 173 114 114 126 335 216 357 264 367 296 337 266 337 265 290 362 332 +53 53 47 49 53 53 54 55 55 56 99 100 99 99 99 99 99 99 100 100 +29 28 26 26 29 29 29 28 28 29 53 53 53 53 53 53 53 53 53 53 +126 130 114 120 129 134 144 150 150 143 260 264 257 259 257 259 257 264 267 267 +68 68 62 63 69 70 71 70 70 70 129 129 128 128 128 128 128 129 129 129 +61 60 55 56 62 63 63 62 62 62 114 114 114 114 114 114 114 114 114 114 +68 67 63 62 71 73 73 70 71 69 130 129 129 129 130 129 130 131 130 130 +28 28 25 26 28 28 28 28 28 28 52 52 52 52 52 52 52 52 52 52 +42 41 39 38 44 45 45 42 43 42 79 78 78 78 79 78 79 79 78 79 +22 22 20 20 23 23 23 22 22 22 41 41 41 41 41 41 41 41 41 41 +27 24 28 22 34 35 31 23 25 23 50 45 47 46 49 46 49 48 45 46 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +40 93 29 58 34 33 35 122 58 152 55 106 76 95 60 95 58 65 99 84 +71 77 61 70 68 68 72 83 78 85 133 140 135 138 133 138 133 135 140 138 +96 102 83 94 93 94 100 115 109 114 186 194 187 191 185 191 185 189 195 193 +44 44 39 40 44 44 45 44 44 45 81 82 81 81 81 81 81 81 82 82 +116 124 103 112 119 134 208 287 290 194 343 368 318 337 319 338 320 372 392 393 +203 206 188 189 218 291 521 494 604 249 780 764 685 703 715 704 718 839 832 859 +120 117 117 107 140 226 302 198 283 131 384 343 328 324 352 324 353 403 377 399 +154 145 171 134 218 396 460 191 351 154 542 439 447 424 495 424 498 558 490 534 +261 240 382 224 543 895 904 275 512 246 982 712 787 709 902 708 909 993 806 911 +245 208 455 198 770 1125 986 226 363 208 973 578 735 611 886 610 893 943 675 811 +181 137 369 132 793 1021 766 139 179 130 685 295 491 361 627 359 634 628 364 487 +26 18 60 17 151 169 106 17 19 18 75 23 44 25 66 24 70 60 23 32 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 143 14 52 15 16 15 121 18 197 17 80 38 69 18 62 18 17 65 39 +83 251 63 145 69 68 72 353 141 443 130 294 201 260 149 261 141 165 275 225 +142 250 112 201 125 125 139 428 264 455 304 445 348 404 307 403 305 341 439 399 +124 178 103 156 117 119 140 408 293 374 321 430 339 386 311 387 311 361 438 411 +137 164 117 146 133 143 192 363 316 292 374 438 368 400 356 400 357 409 456 444 +200 215 179 196 205 230 383 544 550 348 676 727 626 664 629 665 630 735 775 776 +216 220 200 201 232 313 582 549 678 263 867 848 757 779 792 779 795 935 927 958 +219 215 213 197 252 484 692 408 643 238 896 791 750 740 813 740 817 945 879 935 +383 371 393 342 486 902 1044 425 807 386 1283 1065 1080 1031 1184 1031 1190 1319 1173 1268 +299 276 446 259 642 1079 1093 314 607 284 1170 839 930 835 1073 834 1080 1185 955 1084 +228 194 411 184 692 1008 887 211 336 194 877 526 664 555 798 554 805 850 612 734 +146 112 285 108 615 793 598 114 145 108 531 232 382 282 486 281 492 488 285 379 +75 47 153 46 343 385 247 43 53 42 203 84 135 92 183 91 193 171 87 108 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +21 122 12 43 13 12 13 105 16 169 15 69 33 60 16 53 16 16 56 34 +77 293 59 158 65 65 67 436 155 549 123 339 217 294 149 295 136 170 314 250 +86 185 69 142 78 78 85 377 208 401 193 331 236 291 195 290 194 230 326 287 +258 380 219 343 246 250 286 1037 723 937 787 1084 836 966 761 968 759 899 1108 1035 +350 380 307 345 349 361 461 1070 913 825 1087 1286 1064 1167 1029 1169 1029 1199 1343 1307 +217 234 194 213 222 251 388 526 532 356 668 714 623 658 626 658 628 722 757 758 +60 62 56 56 66 92 165 156 192 78 225 219 194 200 203 200 204 244 242 250 +97 95 93 86 113 188 256 164 239 105 308 272 259 256 280 256 281 324 302 321 +127 120 140 111 180 348 408 158 309 127 461 367 374 353 418 353 420 476 414 454 +137 124 203 116 298 503 511 146 286 128 522 365 407 363 474 363 478 527 419 480 +161 137 276 130 462 670 593 149 236 138 587 358 447 377 535 376 539 569 414 494 +135 104 222 99 428 542 419 106 135 101 406 217 310 247 377 246 381 379 250 310 +68 43 154 42 378 426 270 40 48 39 205 74 126 80 180 80 193 169 77 97 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +8 31 5 13 6 6 6 27 8 42 8 20 12 18 8 17 8 8 17 12 +52 109 38 70 44 43 45 147 74 179 70 127 93 115 75 115 73 81 121 103 +107 175 84 141 94 94 106 288 187 304 212 301 239 274 213 274 213 236 298 273 +187 271 157 241 176 180 213 674 482 610 530 715 560 641 513 642 513 600 731 686 +298 330 260 298 296 309 403 901 772 694 911 1077 891 977 862 979 862 1005 1125 1096 +506 508 452 465 516 524 786 1061 1075 707 1405 1487 1321 1385 1328 1386 1330 1502 1566 1569 +616 609 546 558 622 663 975 929 1071 610 1527 1508 1418 1439 1453 1439 1456 1595 1587 1617 +584 580 517 532 589 853 1095 754 1036 591 1543 1430 1386 1375 1453 1375 1458 1595 1524 1585 +461 451 455 415 557 1037 1200 493 935 467 1476 1234 1250 1195 1365 1195 1371 1516 1355 1460 +353 328 504 306 721 1202 1222 370 693 337 1314 953 1050 948 1206 946 1214 1330 1080 1221 +281 237 507 226 866 1272 1124 261 422 236 1099 652 827 688 998 687 1007 1066 764 919 +197 145 396 142 872 1133 857 149 198 136 748 312 530 385 682 383 691 688 392 530 +112 63 261 64 645 730 462 56 76 51 349 121 210 134 303 133 327 286 127 161 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 89 10 32 11 11 11 80 14 124 14 53 26 46 15 40 15 15 44 28 +83 266 63 150 70 69 72 399 157 495 128 317 209 277 150 278 138 171 296 240 +181 404 148 318 162 162 180 869 477 917 467 792 566 696 470 696 467 556 782 692 +224 327 190 295 213 217 252 919 644 823 681 943 722 837 657 839 655 782 965 902 +276 308 241 278 274 286 391 945 804 711 914 1096 891 986 859 987 859 1019 1151 1119 +308 322 276 294 315 341 548 756 768 488 957 1022 889 940 895 940 897 1035 1086 1088 +146 147 135 136 154 168 184 180 188 163 319 317 309 311 312 311 312 325 324 327 +143 140 144 128 174 273 361 243 339 160 466 418 400 395 428 395 430 488 458 484 +141 131 156 121 198 330 380 181 299 141 451 371 376 359 414 359 416 464 411 445 +119 110 122 103 144 166 167 124 143 113 259 237 243 237 252 237 253 259 245 253 +96 86 100 80 121 137 131 92 106 86 199 178 186 179 194 179 194 197 183 190 +37 35 36 32 41 43 41 35 37 35 69 66 68 66 69 66 69 69 67 68 +38 27 58 26 114 127 87 26 30 26 82 47 62 50 76 50 79 73 48 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 21 4 9 5 5 5 20 6 29 6 15 9 13 7 12 7 7 13 9 +62 177 47 102 53 52 55 265 111 326 88 209 139 183 102 183 95 115 196 160 +47 48 41 44 46 46 47 50 49 51 86 88 87 88 86 88 86 87 88 88 +91 125 76 107 87 89 105 276 205 251 209 278 220 250 203 250 202 236 285 268 +111 128 95 114 110 116 158 311 271 243 295 349 288 316 279 317 279 327 366 356 +283 297 253 271 289 317 558 798 814 483 976 1049 897 955 904 956 906 1066 1123 1127 +156 159 145 145 169 226 377 355 431 194 538 525 472 484 493 485 495 577 572 591 +308 304 294 279 345 611 853 524 798 330 1109 989 941 930 1013 931 1018 1166 1090 1155 +359 347 371 320 463 941 1109 409 846 363 1302 1057 1072 1017 1189 1017 1195 1344 1181 1287 +322 298 473 279 690 1181 1206 340 672 306 1259 893 991 887 1148 886 1157 1276 1024 1166 +267 226 503 216 890 1333 1179 249 420 226 1111 632 819 671 1002 669 1011 1077 754 920 +189 140 393 137 913 1198 906 144 192 132 759 292 523 369 687 367 697 695 378 526 +100 81 213 78 597 676 437 79 85 77 320 135 190 137 269 137 299 265 136 152 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +12 68 8 24 9 9 9 63 11 96 11 40 19 35 12 29 12 12 34 21 +95 329 75 183 82 81 85 522 200 643 154 407 263 353 185 354 166 214 381 307 +104 238 85 184 95 95 104 545 297 571 263 468 324 406 264 406 262 320 463 406 +190 277 161 249 181 185 217 816 574 724 584 816 618 721 560 722 559 675 838 782 +295 326 258 295 293 307 419 979 841 734 950 1134 924 1020 893 1022 893 1058 1191 1159 +462 468 413 429 472 488 815 1138 1162 701 1437 1532 1331 1407 1340 1408 1343 1555 1629 1635 +415 416 377 382 432 528 903 847 1027 455 1342 1314 1195 1222 1242 1223 1246 1431 1419 1461 +569 565 507 518 579 895 1188 783 1120 579 1618 1482 1427 1415 1509 1415 1515 1682 1596 1669 +454 444 449 409 553 1111 1303 493 1004 460 1546 1270 1286 1225 1419 1224 1425 1594 1410 1529 +352 327 515 306 753 1297 1327 371 738 336 1378 975 1082 968 1255 967 1264 1397 1119 1277 +267 226 502 216 896 1348 1195 250 424 226 1116 630 819 669 1005 667 1014 1082 755 923 +187 139 389 135 915 1205 913 143 191 130 756 286 517 363 682 361 693 693 373 522 +96 79 201 77 586 664 431 77 83 76 310 132 180 134 257 134 290 256 133 146 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +20 78 14 31 15 15 15 74 19 109 20 51 29 45 21 40 21 21 44 31 +101 380 80 206 87 86 91 626 232 770 162 472 297 407 201 408 177 238 441 351 +200 438 166 349 182 182 201 1012 560 1054 526 901 636 787 526 787 523 632 893 789 +275 393 235 357 264 269 309 1210 852 1067 867 1213 917 1070 832 1072 830 1004 1247 1165 +366 395 322 358 366 379 516 1233 1059 915 1190 1420 1154 1276 1115 1278 1116 1325 1493 1454 +474 479 424 439 484 499 821 1133 1159 702 1434 1525 1330 1403 1339 1405 1342 1550 1621 1627 +568 563 506 517 578 652 1043 981 1165 578 1574 1546 1429 1456 1476 1457 1480 1661 1649 1690 +538 534 483 490 553 882 1187 768 1117 551 1592 1449 1392 1379 1478 1379 1484 1659 1570 1646 +438 427 435 393 536 1101 1297 481 996 443 1521 1241 1257 1195 1391 1195 1398 1569 1383 1504 +341 316 501 296 737 1279 1312 361 729 325 1349 949 1053 941 1225 940 1235 1367 1092 1248 +255 215 464 205 826 1241 1104 238 402 215 1032 588 759 623 929 621 938 1002 703 857 +177 131 355 127 829 1093 832 135 182 123 691 269 474 336 624 334 634 635 346 480 +91 52 210 53 580 665 424 46 64 42 299 102 165 112 247 112 277 242 107 130 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +20 20 17 18 19 19 20 20 20 20 36 36 36 36 36 36 36 36 36 36 +58 61 50 56 56 56 58 65 62 66 107 111 108 110 107 110 107 108 111 110 +100 109 87 99 97 99 107 128 120 126 198 209 200 205 197 205 197 203 210 208 +74 75 66 69 74 75 78 80 79 79 141 142 140 141 140 141 140 142 143 143 +130 135 118 125 133 141 155 163 164 152 275 280 270 274 271 274 271 281 284 285 +137 139 128 129 145 157 172 168 175 153 297 295 288 290 291 290 291 302 302 304 +150 147 145 137 167 192 211 184 205 161 344 331 326 325 334 325 334 350 342 349 +60 59 55 55 62 63 64 61 62 61 114 112 113 112 113 112 113 114 113 113 +44 43 40 40 45 46 46 44 45 44 82 81 81 81 82 81 82 82 81 82 +37 36 34 33 39 40 39 37 38 36 69 68 68 68 69 68 69 69 68 69 +28 24 46 22 109 142 110 24 29 24 85 34 58 42 76 42 78 78 43 59 +8 7 7 7 8 9 8 7 8 7 15 14 14 14 15 14 15 14 14 14 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 52 6 18 7 7 7 51 10 75 9 32 15 27 10 22 10 10 27 17 +99 365 79 199 86 85 89 629 238 766 155 465 288 398 193 399 168 233 435 346 +174 381 144 304 159 159 175 927 515 956 459 802 557 696 458 697 455 558 797 702 +275 386 235 351 264 270 311 1233 874 1077 869 1219 916 1072 831 1074 829 1010 1255 1173 +368 396 324 359 368 382 530 1254 1083 922 1195 1428 1156 1280 1118 1282 1119 1335 1504 1465 +476 481 426 440 486 501 838 1150 1180 702 1440 1531 1331 1406 1342 1407 1345 1558 1630 1637 +566 561 505 515 576 656 1059 992 1184 577 1578 1548 1427 1454 1476 1455 1480 1668 1655 1697 +545 540 488 496 559 896 1210 781 1140 557 1605 1459 1399 1386 1488 1386 1493 1674 1582 1661 +366 354 374 326 467 1026 1224 422 928 370 1385 1106 1121 1060 1255 1059 1261 1433 1248 1369 +290 267 424 250 630 1101 1133 310 633 275 1147 800 889 792 1038 791 1046 1163 925 1060 +222 189 404 180 738 1121 1001 209 359 189 912 508 663 540 818 538 826 886 614 754 +109 86 189 82 425 557 431 88 112 84 368 165 262 195 335 194 340 341 201 266 +49 31 99 30 275 317 205 29 37 27 146 57 84 62 121 62 136 120 59 69 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +8 41 5 14 6 6 6 41 8 60 8 25 12 22 8 18 8 8 21 14 +92 327 73 180 80 79 83 573 221 694 141 421 261 360 176 361 152 212 395 315 +199 423 165 340 182 183 202 1037 582 1064 521 901 629 783 519 783 516 631 896 792 +243 343 208 310 233 239 278 1128 800 979 777 1098 819 962 741 964 740 907 1133 1057 +313 343 275 311 313 327 476 1156 998 837 1069 1288 1030 1147 994 1149 995 1202 1361 1325 +189 202 170 184 195 222 395 549 566 330 647 694 589 628 595 629 597 710 747 751 +142 145 134 133 157 212 328 308 369 184 455 444 401 410 418 410 420 487 482 498 +143 140 144 128 174 279 374 248 351 160 467 417 397 392 427 392 429 491 459 487 +110 105 117 96 152 276 325 141 252 111 352 282 286 271 319 271 321 364 317 348 +102 92 130 85 187 294 302 112 190 95 309 226 246 224 282 223 284 312 255 287 +85 74 117 68 193 273 248 81 119 75 239 154 186 160 218 160 220 233 176 205 +58 48 82 44 162 207 165 49 60 48 148 82 112 91 137 90 139 139 93 114 +29 21 44 20 98 111 76 20 24 20 67 38 48 40 59 40 64 59 39 43 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 7 0 2 0 0 0 7 1 11 0 4 1 3 0 2 0 0 3 1 +66 235 52 127 58 57 60 421 164 509 94 298 180 253 118 254 101 145 279 221 +107 227 88 178 98 99 109 564 318 577 263 468 320 403 261 403 259 322 466 409 +218 300 186 270 209 215 253 906 655 788 649 897 680 791 620 792 620 750 925 867 +283 313 248 283 283 297 430 988 859 720 924 1106 890 988 862 989 862 1035 1168 1138 +325 337 291 308 333 362 656 915 945 534 1094 1171 998 1062 1009 1064 1011 1198 1259 1266 +280 283 258 259 299 404 741 683 852 330 1036 1007 897 922 942 923 946 1119 1106 1145 +331 326 313 300 367 610 835 534 785 353 1069 959 914 904 980 904 985 1122 1052 1112 +268 253 291 235 369 767 915 342 699 270 1029 818 828 782 929 782 933 1065 925 1017 +203 183 286 171 422 720 744 222 433 189 758 535 590 529 686 529 691 768 615 702 +169 144 287 136 519 785 705 160 268 145 647 370 475 391 581 390 587 629 443 539 +75 61 115 57 248 322 254 62 78 60 220 109 161 125 201 124 204 206 129 164 +28 20 49 19 140 161 107 19 22 18 76 33 45 35 62 35 70 63 34 38 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +51 100 38 66 44 44 46 150 80 177 70 127 92 114 75 113 72 83 122 104 +88 154 71 122 81 81 90 327 201 333 183 290 212 256 182 256 181 214 290 260 +108 144 89 124 101 105 130 319 246 284 254 330 263 297 245 297 245 285 339 321 +127 137 113 125 126 133 149 173 167 162 269 281 266 273 264 273 264 276 285 283 +135 140 122 129 138 148 165 175 176 160 290 295 283 288 284 288 284 297 301 301 +229 232 212 213 246 335 591 546 677 277 817 794 708 728 744 728 747 882 871 902 +180 176 179 164 210 270 320 253 306 198 474 444 432 429 449 429 451 488 469 485 +142 134 155 123 198 343 402 188 316 144 458 374 378 360 418 360 420 473 417 453 +113 104 115 97 138 160 162 118 138 107 247 224 230 224 239 224 240 247 232 241 +55 52 53 48 61 64 63 54 57 52 106 101 103 101 104 101 105 105 102 104 +32 30 30 27 36 37 36 30 32 29 59 56 58 57 59 57 59 59 57 58 +10 9 10 9 12 13 12 9 10 9 19 18 18 18 19 18 19 19 18 18 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +98 357 78 195 85 85 89 680 265 813 146 479 285 404 185 405 155 233 450 356 +159 336 131 268 145 145 163 873 496 884 412 729 498 628 407 628 405 506 728 641 +233 317 199 286 224 229 270 1049 758 901 720 1012 754 885 685 887 684 842 1046 979 +300 329 263 298 300 315 460 1039 909 751 967 1154 929 1030 900 1032 901 1084 1221 1191 +295 308 264 281 303 333 639 898 933 503 1045 1121 945 1010 956 1011 959 1151 1212 1220 +272 274 251 252 290 399 740 679 851 322 1016 986 875 899 921 900 925 1099 1086 1126 +181 177 177 163 212 396 566 342 529 199 679 595 561 553 611 554 615 720 666 712 +119 112 129 103 167 295 347 158 272 121 383 309 312 296 347 296 349 395 346 378 +206 189 294 176 443 780 809 224 460 195 795 548 608 541 714 540 720 806 637 734 +89 78 120 72 198 282 258 85 126 78 249 163 194 169 228 168 230 244 185 215 +73 60 112 56 244 319 253 61 77 59 216 108 157 121 197 121 200 202 126 161 +46 28 93 27 299 350 227 25 35 23 150 55 78 60 116 60 137 121 58 67 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +48 115 36 68 42 42 44 196 92 231 61 144 94 125 69 124 63 81 137 112 +40 69 32 54 37 37 41 156 96 158 78 129 91 112 77 112 76 93 129 114 +132 178 112 157 127 131 157 517 382 446 365 500 379 441 348 441 347 421 517 486 +159 182 139 163 158 169 257 556 488 403 503 603 482 536 467 537 467 566 639 623 +78 83 69 75 81 94 199 287 300 153 294 320 259 281 263 282 264 331 352 354 +133 134 123 124 140 153 168 164 172 148 287 285 278 280 281 280 281 293 292 295 +118 115 114 105 139 234 322 206 302 129 375 331 313 309 339 309 341 397 368 393 +154 145 168 134 213 370 434 204 342 155 495 404 408 389 451 389 453 511 450 490 +223 205 334 192 517 947 986 243 542 212 939 628 704 619 837 618 845 953 741 863 +191 163 336 155 639 990 893 182 321 164 779 421 556 448 694 447 701 758 518 643 +120 93 240 90 656 890 686 96 129 89 504 170 320 209 444 208 456 463 224 332 +54 52 96 49 412 481 316 52 52 52 192 86 95 85 139 85 175 155 86 85 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +73 211 57 122 63 63 67 392 170 462 105 284 177 242 124 243 109 151 269 218 +173 346 142 279 157 158 179 904 526 906 439 760 524 656 433 656 431 536 761 674 +219 290 186 260 210 216 258 889 657 762 633 869 658 765 603 766 602 733 899 845 +251 288 219 259 249 269 407 867 766 628 810 964 776 860 753 861 754 908 1020 997 +271 289 244 264 280 321 558 748 778 452 891 950 811 862 821 863 824 975 1022 1029 +260 264 243 243 283 382 621 574 700 322 861 836 753 772 788 772 791 923 912 943 +345 341 326 313 381 660 920 575 864 367 1142 1016 964 954 1040 954 1045 1202 1123 1191 +273 258 293 239 372 780 935 356 718 276 1031 817 825 780 928 779 932 1069 927 1020 +226 203 310 190 457 775 806 251 480 210 819 581 637 573 739 573 745 829 667 759 +181 153 293 144 536 816 741 172 292 153 672 386 492 407 603 406 608 655 463 563 +106 83 175 79 411 547 430 86 113 80 353 161 245 182 317 181 324 328 191 253 +36 22 67 22 221 261 171 20 28 18 112 44 60 48 87 48 103 92 46 53 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 11 10 11 11 11 12 11 11 12 21 21 21 21 21 21 21 21 21 21 +55 58 48 53 54 54 56 63 60 64 103 107 104 106 103 106 103 104 107 106 +23 23 21 21 24 24 24 23 23 23 43 43 43 43 43 43 43 43 43 43 +21 21 19 19 21 21 21 21 21 21 39 39 39 39 39 39 39 39 39 39 +43 42 38 39 43 44 44 43 43 44 79 79 79 79 79 79 79 79 80 80 +43 43 39 40 44 44 44 44 44 44 80 80 80 80 80 80 80 81 80 81 +24 24 21 22 24 24 24 24 24 24 44 44 44 44 44 44 44 44 44 44 +24 24 21 22 24 24 24 24 24 24 44 44 44 44 44 44 44 44 44 44 +27 27 25 25 28 28 28 28 28 28 51 51 51 51 51 51 51 51 51 51 +53 50 51 46 59 62 61 52 56 50 102 97 99 97 100 97 101 101 98 100 +17 16 16 15 18 18 18 17 17 16 31 31 31 31 31 31 31 31 31 31 +9 8 9 7 11 12 11 8 8 8 16 15 15 15 16 15 16 16 15 15 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +87 309 70 171 77 77 81 652 263 766 124 438 251 365 157 366 129 208 413 325 +154 311 127 250 141 142 160 872 506 865 396 707 475 603 388 604 386 491 709 625 +221 294 189 264 214 220 262 1043 763 878 688 974 716 846 650 848 649 812 1012 948 +290 318 254 287 290 306 489 1153 1013 799 1007 1219 956 1073 926 1075 927 1144 1300 1268 +253 265 227 242 261 292 548 748 783 423 858 917 773 825 784 826 786 946 993 1002 +154 156 143 143 167 235 403 368 458 192 527 510 453 465 477 466 479 570 562 584 +138 135 134 124 162 300 429 261 402 152 492 429 403 397 441 398 443 523 483 517 +112 106 120 97 156 283 335 151 263 114 358 287 289 274 323 274 325 371 323 355 +98 89 122 82 180 291 303 109 190 92 298 214 233 211 269 211 271 301 244 277 +86 76 114 70 193 278 256 83 124 77 242 156 187 162 220 162 222 237 179 209 +88 70 158 67 432 587 458 73 96 68 334 125 213 143 293 142 302 308 155 224 +35 31 59 30 297 352 231 31 33 30 131 54 60 55 89 55 117 103 55 56 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +76 267 61 147 67 67 71 581 236 679 103 381 215 316 132 317 108 178 360 282 +157 313 131 255 146 147 164 914 531 902 408 733 490 624 399 626 396 509 736 649 +249 327 214 296 241 248 294 1228 898 1026 795 1133 826 980 748 982 748 942 1180 1104 +280 308 246 278 280 296 484 1145 1008 787 987 1197 934 1051 904 1053 906 1124 1279 1248 +326 338 293 309 335 367 723 995 1046 539 1134 1213 1017 1088 1033 1090 1037 1253 1317 1328 +327 329 300 302 347 470 858 780 980 376 1149 1111 988 1014 1040 1015 1045 1242 1225 1271 +362 357 340 328 398 751 1085 648 1017 384 1293 1135 1070 1056 1165 1056 1171 1369 1270 1355 +288 276 294 255 369 869 1056 363 803 292 1114 868 876 824 995 824 999 1159 996 1104 +259 238 378 223 588 1086 1139 285 635 246 1069 712 795 699 948 699 957 1085 843 982 +196 166 343 158 685 1084 986 188 346 166 825 424 574 455 728 453 736 804 537 677 +134 98 258 95 728 999 778 104 149 92 556 194 343 221 483 220 500 511 243 363 +1 0 32 1 346 420 261 0 0 0 95 0 3 0 38 0 77 59 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +73 255 59 141 65 65 69 571 233 664 99 370 206 305 126 306 102 171 350 274 +174 338 145 277 161 162 181 1003 587 986 450 804 538 685 439 687 436 561 809 715 +245 319 210 288 236 244 290 1218 894 1013 780 1115 810 963 733 965 733 928 1162 1088 +280 307 246 277 280 296 488 1140 1008 780 979 1186 925 1040 896 1042 897 1116 1269 1239 +335 347 301 317 345 376 767 1060 1118 559 1193 1277 1065 1142 1083 1143 1086 1322 1390 1403 +403 403 366 370 421 556 1009 916 1149 446 1355 1311 1170 1200 1231 1202 1236 1461 1441 1494 +436 430 402 395 468 866 1246 749 1169 456 1491 1314 1240 1225 1347 1225 1353 1576 1465 1560 +369 357 367 329 453 1105 1347 452 1024 375 1417 1105 1114 1048 1265 1048 1270 1473 1268 1404 +292 268 431 251 677 1269 1334 320 737 277 1236 814 911 798 1092 797 1103 1255 970 1134 +217 182 391 174 799 1280 1165 209 397 182 955 475 654 512 839 510 848 931 612 779 +136 99 266 97 772 1065 830 106 154 93 581 198 352 222 502 220 520 534 246 374 +0 0 25 0 327 398 248 0 0 0 87 0 1 0 33 0 70 54 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +79 272 64 152 71 70 74 625 258 723 108 403 224 332 136 333 111 187 382 299 +172 330 144 272 159 161 180 1002 589 981 443 796 530 677 432 678 429 555 802 708 +243 314 208 284 235 243 289 1224 902 1013 776 1112 804 958 728 960 728 925 1160 1086 +314 341 276 309 315 332 529 1180 1050 815 1038 1245 982 1098 954 1100 955 1176 1329 1299 +390 399 349 365 400 428 813 1094 1152 602 1262 1343 1137 1211 1154 1212 1158 1388 1453 1467 +388 389 353 357 407 547 1009 913 1151 433 1339 1293 1149 1180 1211 1181 1217 1447 1426 1481 +375 370 351 340 412 797 1166 688 1092 398 1364 1191 1119 1104 1223 1105 1230 1447 1339 1432 +329 316 330 292 410 1021 1250 414 948 334 1295 1001 1009 947 1151 947 1156 1348 1155 1283 +288 264 426 248 672 1269 1337 318 739 273 1228 804 901 787 1083 786 1093 1247 961 1126 +207 174 375 166 782 1263 1151 200 386 175 927 450 628 487 811 485 820 903 588 753 +109 82 200 79 570 785 616 87 123 78 435 160 268 175 377 173 391 401 193 285 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +25 53 19 33 22 22 23 100 51 115 32 72 47 62 35 62 32 42 69 57 +68 104 55 83 63 64 72 228 151 224 126 194 142 170 124 170 124 147 195 177 +82 103 69 88 80 82 101 273 212 232 185 249 189 219 175 219 175 213 259 244 +117 135 101 120 116 128 191 346 314 255 318 372 303 333 296 334 297 355 395 387 +155 164 139 149 160 186 339 449 473 260 498 531 446 476 454 477 455 550 577 583 +135 138 127 126 150 210 334 306 374 175 430 416 372 381 391 381 393 464 457 474 +136 133 135 122 165 276 378 246 355 153 441 389 367 363 399 363 401 467 434 462 +130 123 139 113 180 326 388 178 306 133 418 336 338 321 377 321 379 433 378 414 +154 141 209 131 321 570 600 173 353 146 568 388 428 381 505 381 510 576 454 524 +122 106 183 99 348 537 494 119 200 107 428 243 310 256 382 255 386 419 295 360 +85 67 140 63 379 518 410 70 96 65 300 125 192 133 262 133 271 278 145 204 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +78 264 63 149 70 70 74 645 270 739 104 406 220 331 130 332 107 185 385 301 +172 323 144 267 160 161 181 1025 608 993 442 801 527 677 428 679 426 558 808 714 +245 311 210 281 237 245 294 1255 932 1029 783 1124 808 965 731 967 731 937 1176 1102 +289 316 254 286 290 307 489 1039 932 719 920 1097 870 969 847 971 848 1040 1171 1146 +143 154 129 140 149 178 296 377 397 236 432 458 391 415 397 415 398 474 495 499 +153 156 144 143 170 237 375 343 420 198 489 472 424 434 445 434 447 526 519 538 +154 150 153 138 186 309 423 277 398 172 500 442 418 413 452 413 455 528 491 523 +93 89 95 81 126 249 301 126 233 95 294 229 230 217 262 217 263 306 263 292 +68 65 65 60 75 80 81 70 75 67 135 129 130 129 133 129 133 135 131 133 +83 74 107 68 187 274 255 81 123 75 234 149 179 155 212 154 214 230 173 202 +36 31 48 28 116 155 126 32 39 31 94 47 64 49 83 49 86 88 52 68 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +43 106 34 64 39 39 41 233 109 265 52 151 88 126 59 126 53 78 144 116 +117 201 96 163 108 110 126 549 342 532 267 447 309 384 260 385 259 325 452 404 +191 243 164 218 186 192 232 1011 752 823 611 887 630 757 569 759 569 737 930 870 +199 227 174 204 198 215 329 614 558 442 582 678 553 608 541 608 542 648 720 707 +237 247 213 225 244 277 622 862 920 424 915 983 801 866 818 867 821 1027 1083 1096 +309 311 284 285 329 452 812 731 921 358 1051 1013 899 923 949 924 953 1138 1120 1164 +176 172 176 159 212 350 478 314 450 197 570 505 478 472 517 473 519 601 560 596 +284 273 288 251 359 840 1027 371 787 289 1060 824 829 780 942 780 946 1103 948 1051 +194 176 265 164 407 727 768 220 453 182 728 496 547 487 646 486 652 737 582 672 +84 76 90 71 115 137 132 83 100 77 181 156 165 158 175 157 175 180 163 172 +44 39 46 36 59 67 61 40 45 39 86 74 79 75 83 75 84 84 76 80 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 79 27 49 32 32 34 171 83 192 43 112 67 94 47 94 44 60 108 88 +84 143 69 115 79 80 90 406 253 392 182 315 212 268 176 268 175 225 318 283 +186 234 159 209 180 186 228 935 701 760 575 824 590 706 535 707 535 689 864 810 +316 343 278 310 317 336 573 1283 1152 858 1080 1304 1011 1139 983 1141 985 1235 1401 1371 +348 358 312 327 358 391 814 1100 1173 564 1210 1291 1072 1149 1093 1151 1097 1346 1412 1428 +337 338 309 310 357 481 843 760 952 386 1096 1057 942 966 993 967 997 1183 1164 1209 +207 203 200 187 240 509 767 439 716 226 836 714 663 653 736 653 741 895 819 885 +211 200 223 185 284 646 792 293 607 215 809 625 628 590 717 590 720 843 721 802 +189 171 257 160 399 720 763 214 448 177 713 482 532 472 631 472 637 723 568 658 +163 138 265 131 546 878 810 159 295 139 654 332 448 353 573 352 580 639 425 538 +110 80 192 77 571 796 631 86 129 75 431 163 257 172 367 172 385 399 188 279 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +71 232 58 133 64 64 68 626 268 707 93 378 194 303 111 299 95 166 360 280 +165 301 139 251 155 156 176 1023 615 977 424 777 503 652 402 654 400 540 788 696 +238 295 204 265 231 239 289 1256 942 1014 761 1098 780 937 706 939 706 917 1154 1082 +316 343 279 310 318 336 580 1293 1164 860 1081 1306 1010 1138 982 1141 984 1238 1404 1375 +393 402 353 368 404 435 894 1197 1277 615 1324 1409 1174 1257 1198 1259 1202 1469 1539 1557 +440 439 398 403 458 615 1134 1015 1288 480 1459 1404 1246 1279 1316 1280 1322 1578 1553 1614 +419 414 389 380 454 885 1304 771 1223 442 1480 1288 1206 1190 1323 1191 1330 1573 1453 1557 +351 338 349 311 430 1127 1394 458 1059 357 1391 1061 1066 998 1226 998 1231 1452 1236 1380 +276 252 406 236 659 1284 1368 309 757 261 1202 764 859 743 1047 742 1058 1222 928 1099 +201 167 353 159 775 1280 1179 196 394 167 907 419 596 451 784 449 795 886 563 733 +118 85 220 82 725 1024 809 92 141 79 518 173 286 182 430 181 457 476 198 317 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +68 220 56 126 62 62 65 611 264 687 89 364 182 289 103 284 90 157 347 269 +111 200 92 163 104 105 119 669 406 637 269 497 319 415 253 416 252 344 504 445 +231 284 198 255 224 232 282 1233 928 990 738 1068 755 909 684 911 683 892 1124 1054 +308 335 272 303 310 329 577 1282 1157 847 1061 1283 988 1116 962 1118 964 1218 1382 1354 +382 391 343 357 392 425 888 1188 1271 602 1301 1385 1149 1232 1173 1234 1178 1446 1516 1534 +425 425 386 390 445 606 1130 1008 1284 468 1436 1380 1220 1253 1291 1254 1297 1557 1530 1593 +407 402 379 369 444 877 1299 764 1218 430 1459 1265 1182 1166 1300 1167 1307 1553 1431 1536 +344 331 343 305 423 1122 1391 454 1056 350 1375 1044 1049 981 1209 981 1214 1436 1220 1365 +260 237 368 221 588 1120 1193 293 677 246 1065 691 771 672 932 671 941 1082 832 978 +193 160 321 152 682 1113 1030 189 366 160 811 395 544 419 705 418 714 794 517 663 +112 80 198 78 615 866 689 87 135 74 456 168 261 177 380 177 403 421 189 288 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +37 101 29 59 34 34 36 268 122 300 43 158 80 126 48 123 44 71 151 118 +97 155 80 127 90 91 105 433 278 412 213 349 242 299 203 300 202 258 354 318 +119 147 102 129 116 120 150 510 393 415 325 452 331 390 304 391 304 384 474 447 +253 278 222 250 254 272 471 1005 912 669 839 1009 782 880 762 881 763 960 1086 1065 +295 306 265 279 304 340 705 937 1004 480 1015 1080 894 959 913 960 917 1130 1184 1200 +277 279 255 256 297 418 747 668 846 327 938 901 796 817 843 818 847 1018 1000 1042 +168 165 165 151 200 362 518 321 486 186 577 502 470 464 515 464 518 614 567 608 +243 233 249 215 314 780 966 334 737 248 951 723 726 679 836 679 840 993 844 944 +182 168 260 156 425 826 883 206 496 174 762 483 542 468 662 468 669 775 588 697 +99 91 109 84 153 198 189 98 127 92 226 183 197 184 214 184 215 224 194 210 +64 52 90 48 217 295 240 54 73 51 189 100 130 104 166 104 173 178 108 138 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +55 164 45 96 50 50 53 477 212 532 70 278 135 218 77 211 71 119 266 207 +155 274 131 230 146 147 167 995 606 936 394 734 466 610 364 612 362 509 747 659 +225 274 193 245 219 227 278 1231 932 979 723 1049 736 889 666 891 666 877 1107 1039 +254 279 224 251 255 273 494 1080 979 706 876 1061 811 919 790 921 792 1009 1146 1123 +301 312 271 285 311 347 753 1007 1083 498 1072 1142 938 1009 960 1011 964 1199 1258 1275 +235 237 217 217 253 375 707 626 807 283 860 822 717 738 764 739 768 940 922 964 +174 171 171 157 206 406 597 356 560 193 647 556 517 510 572 510 576 692 635 684 +183 174 192 161 246 595 739 261 564 187 720 545 547 512 631 512 635 753 638 715 +194 178 272 166 443 856 916 220 519 184 794 507 568 492 691 491 698 808 616 728 +165 139 277 132 621 1032 959 163 326 140 721 332 469 350 620 349 630 706 446 583 +99 72 179 69 619 884 704 78 121 67 434 147 229 154 350 154 379 399 161 259 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +61 188 50 110 56 55 59 580 256 643 78 331 154 256 84 245 79 136 317 245 +154 269 130 226 145 147 166 998 611 935 390 730 461 606 357 608 355 506 744 657 +222 268 190 239 216 224 275 1227 932 970 712 1037 724 876 655 878 655 867 1095 1028 +298 323 263 292 300 319 584 1281 1165 830 1033 1251 954 1082 930 1084 932 1192 1354 1328 +365 375 328 342 376 411 894 1188 1281 582 1269 1350 1110 1194 1137 1196 1142 1418 1486 1507 +402 402 366 369 422 595 1135 1003 1292 448 1399 1339 1174 1208 1249 1209 1255 1524 1495 1560 +385 380 361 349 424 869 1305 757 1223 409 1421 1222 1136 1120 1257 1120 1264 1518 1394 1502 +326 314 327 289 406 1111 1390 446 1054 333 1334 1000 1002 934 1164 934 1170 1397 1178 1325 +255 232 374 218 622 1247 1340 290 743 242 1133 701 792 676 977 675 988 1154 866 1034 +182 151 314 144 723 1217 1131 179 373 152 832 366 529 387 710 385 723 815 504 667 +101 72 184 70 654 938 748 80 126 67 453 150 233 158 361 158 394 416 165 266 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +27 48 21 33 25 24 26 102 57 112 35 71 45 60 36 59 35 43 69 58 +75 85 63 76 71 72 79 107 94 106 144 158 147 153 143 152 143 148 158 155 +136 168 116 146 132 137 176 413 335 344 327 415 329 370 311 371 311 369 432 413 +145 164 127 147 145 160 245 424 393 304 395 456 373 408 367 409 367 440 486 479 +104 107 94 98 107 114 124 129 130 119 215 218 211 213 212 213 212 220 221 222 +140 142 131 131 151 176 207 198 215 164 328 323 310 313 316 313 317 339 336 342 +123 121 118 112 137 159 177 153 171 132 277 266 261 261 268 260 269 283 276 282 +87 84 83 78 96 105 109 95 103 88 179 172 172 170 175 170 175 180 175 179 +86 80 86 75 103 119 121 91 105 83 183 168 171 167 177 167 178 184 174 179 +49 46 49 43 58 63 62 49 54 47 98 91 93 91 96 91 96 98 93 95 +21 20 21 18 25 27 26 20 22 20 41 38 39 38 40 38 40 40 38 39 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 13 12 12 13 13 13 13 13 14 24 24 24 24 24 24 24 24 24 24 +47 50 41 46 46 47 49 55 52 55 89 92 89 91 88 91 88 90 92 91 +79 84 69 77 77 80 86 100 95 97 155 162 155 158 154 158 154 158 163 162 +66 68 60 62 67 69 71 74 73 73 128 130 127 128 127 128 127 129 130 130 +92 94 83 86 94 99 106 108 109 102 185 187 182 184 183 184 183 188 189 190 +90 90 83 83 94 99 105 102 105 97 182 181 178 178 179 178 179 184 183 184 +108 106 102 99 118 132 143 128 139 115 232 225 222 221 226 221 226 235 231 235 +92 89 89 83 103 115 121 102 113 94 193 185 185 183 189 183 189 195 189 193 +75 71 74 66 87 98 100 79 89 74 156 146 148 145 152 145 152 156 149 153 +75 67 102 62 209 332 312 75 127 68 246 133 171 137 215 137 219 242 166 206 +28 25 29 23 36 40 37 26 29 25 54 48 51 49 53 49 53 53 49 51 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 14 12 13 13 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 +47 50 41 46 46 47 49 55 52 55 89 92 89 91 88 91 88 90 92 91 +79 84 69 77 77 80 86 100 96 97 155 162 155 158 153 158 153 158 163 162 +102 108 91 99 102 108 120 135 133 125 211 218 208 212 207 212 208 216 222 221 +68 69 62 63 70 71 74 74 74 73 131 132 130 131 131 131 131 132 133 133 +72 72 66 67 75 77 80 78 80 76 141 140 139 139 140 139 140 142 142 142 +138 135 132 124 162 380 595 328 555 152 583 485 442 435 502 435 506 632 570 624 +262 251 266 232 336 924 1164 375 884 268 1085 804 804 748 941 747 946 1139 955 1079 +207 189 297 177 502 1017 1101 238 615 197 906 554 626 530 777 530 787 925 690 828 +140 119 232 113 558 951 891 139 291 121 631 268 390 279 532 278 544 619 374 503 +82 59 139 57 501 724 583 65 103 55 347 123 177 129 271 129 300 319 135 204 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +19 20 16 18 19 18 19 20 20 21 35 36 35 35 35 35 35 35 35 35 +72 102 59 83 68 69 81 240 168 226 138 204 150 178 131 178 131 160 207 190 +60 72 51 61 60 62 78 226 180 182 133 184 134 158 123 158 123 158 195 184 +219 240 193 216 220 238 473 1036 950 649 786 962 716 820 698 822 700 919 1050 1030 +163 171 146 155 169 199 451 595 648 285 591 631 507 549 521 550 524 669 703 715 +143 144 132 132 156 246 474 415 542 179 533 506 433 448 467 448 469 589 576 605 +197 194 193 178 234 482 725 423 679 219 758 644 596 587 664 587 668 814 743 805 +198 190 204 175 261 670 842 288 643 203 783 584 583 544 681 544 685 822 692 780 +183 168 254 157 423 839 908 212 518 175 756 472 529 452 651 451 659 771 581 693 +141 119 219 112 492 821 772 141 277 119 573 270 370 278 489 277 499 563 358 465 +71 52 112 49 356 510 415 57 89 48 265 110 148 115 213 115 232 246 120 167 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 13 11 12 13 13 13 13 13 14 24 24 24 24 24 24 24 24 24 24 +48 51 41 46 46 47 50 56 53 56 89 93 90 92 89 92 89 91 93 93 +76 81 67 74 75 77 83 96 92 93 149 156 149 152 148 152 148 152 157 156 +117 126 104 115 117 126 147 175 171 156 254 266 249 256 248 256 248 263 273 271 +127 133 116 122 132 146 172 184 190 158 286 291 275 281 277 281 278 296 300 302 +119 120 111 111 127 142 161 154 165 135 262 259 251 253 255 253 255 269 267 270 +106 104 100 96 115 130 141 125 137 112 227 220 217 216 221 216 221 231 226 230 +68 66 64 61 73 78 80 72 76 69 135 131 131 130 133 130 133 135 133 134 +51 50 48 46 56 59 59 53 56 51 100 97 97 96 99 96 99 100 98 99 +52 48 53 45 64 72 71 52 59 49 106 97 100 97 103 97 104 106 99 103 +42 37 50 34 114 153 129 38 47 37 107 68 78 69 94 69 99 102 71 83 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 +27 27 24 25 27 27 27 28 28 28 50 50 50 50 50 50 50 50 50 50 +118 141 101 122 116 121 153 663 514 510 353 521 353 434 319 435 319 437 556 522 +121 137 106 122 122 135 215 369 345 258 326 378 305 336 300 336 301 366 406 400 +150 159 136 145 157 190 329 406 437 241 446 469 397 421 406 422 407 492 511 519 +167 169 155 154 182 302 628 543 724 206 689 649 548 569 595 569 599 767 747 789 +144 141 142 131 167 215 257 204 247 159 363 339 329 327 343 327 344 374 359 372 +134 128 137 118 168 226 255 170 220 137 335 298 298 291 316 291 317 343 318 335 +111 104 118 96 152 201 210 124 164 108 265 227 234 224 251 224 252 268 241 257 +80 73 85 68 118 151 146 80 102 75 177 146 156 147 168 147 169 176 154 166 +30 27 32 25 44 52 47 28 33 28 60 51 54 51 58 51 58 59 52 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 10 9 9 10 10 10 10 10 10 18 18 18 18 18 18 18 18 18 18 +41 43 36 39 40 41 42 46 45 47 76 79 77 78 76 78 76 77 79 78 +70 74 62 68 69 71 77 87 83 84 137 142 137 140 136 139 136 140 143 142 +99 112 86 99 100 111 180 314 295 217 262 307 243 270 239 270 240 297 331 326 +97 101 86 91 101 120 225 282 306 156 278 294 241 259 248 259 249 311 325 330 +102 103 94 94 112 164 282 249 317 127 311 295 257 265 275 265 276 340 333 349 +103 101 101 92 125 223 318 201 299 116 326 280 261 257 288 257 290 349 320 345 +91 87 93 79 124 249 306 132 241 94 284 218 218 205 249 205 251 297 254 283 +96 89 99 83 123 153 159 105 130 93 217 192 196 190 207 190 208 218 201 211 +45 42 45 39 53 59 58 45 50 43 90 83 85 83 88 83 88 90 85 88 +15 14 14 13 17 18 18 14 15 14 28 26 27 26 28 26 28 28 27 27 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 29 13 20 15 15 17 78 42 83 22 48 27 39 22 36 22 26 47 39 +56 77 46 62 53 54 63 208 144 192 100 157 109 134 93 134 92 120 161 146 +126 150 108 130 123 129 168 624 492 481 354 505 352 425 322 426 322 430 538 508 +159 176 140 157 161 176 334 671 624 426 514 620 467 531 458 532 459 597 677 666 +138 145 124 131 144 172 344 436 475 228 441 467 382 411 393 411 395 495 517 526 +146 147 135 134 160 242 433 380 489 182 491 467 405 417 434 418 436 539 527 553 +185 182 180 167 219 469 716 412 672 205 720 607 557 549 626 549 631 777 706 768 +56 55 52 51 59 62 63 58 61 57 108 106 106 106 107 106 107 108 107 108 +98 91 113 84 174 298 321 113 207 94 292 206 222 200 259 200 262 297 239 274 +55 50 67 45 134 211 201 56 90 51 157 89 110 91 137 90 139 155 108 132 +36 30 48 28 147 210 174 32 44 30 114 57 68 59 92 58 101 107 61 77 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 19 8 13 9 9 10 63 32 67 12 35 16 27 12 24 12 16 34 27 +30 48 25 39 29 29 34 216 137 194 64 134 76 107 53 107 53 90 139 122 +38 44 32 37 37 39 51 177 140 137 91 133 90 110 82 111 82 112 142 134 +128 141 112 126 129 141 270 537 501 340 401 485 364 414 357 415 358 468 531 523 +43 44 38 40 45 54 127 165 182 76 144 155 120 132 124 132 125 167 176 179 +75 76 68 68 82 124 223 195 252 93 227 214 183 189 198 189 199 252 245 259 +71 70 66 63 83 163 243 144 227 78 221 185 170 167 191 167 193 240 217 237 +105 100 108 92 143 281 345 152 273 108 329 256 255 241 290 241 292 344 295 328 +90 84 104 77 162 281 303 105 194 87 269 188 203 182 238 181 240 274 219 252 +58 53 60 49 76 91 89 58 69 54 122 107 112 107 118 107 118 121 111 117 +30 25 38 23 95 132 111 27 36 25 82 47 55 48 69 48 74 78 50 60 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +30 73 24 45 28 28 30 317 152 335 34 155 55 109 35 92 34 52 151 114 +95 146 80 121 90 92 108 587 381 528 215 401 246 327 184 328 183 282 414 368 +202 238 173 209 197 207 272 1239 970 931 649 962 641 794 579 796 580 809 1032 970 +271 294 239 265 273 296 616 1299 1210 791 959 1171 862 991 844 994 847 1129 1287 1266 +259 269 234 245 269 309 772 1007 1112 439 975 1038 822 895 851 896 855 1112 1166 1190 +307 308 282 283 329 525 1078 928 1234 360 1190 1122 953 987 1033 988 1039 1319 1285 1355 +295 291 282 267 337 785 1234 685 1157 321 1205 1005 915 900 1038 900 1046 1307 1181 1291 +229 219 234 202 299 849 1086 349 830 235 955 692 688 637 817 637 824 1009 837 954 +201 183 288 171 513 1108 1219 237 680 191 929 536 610 499 781 499 792 954 692 848 +95 83 142 78 360 626 597 97 199 84 398 165 235 167 327 166 338 392 230 314 +55 48 78 45 412 615 503 51 66 47 247 85 100 87 167 86 205 226 88 124 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 90 29 55 34 34 35 433 205 455 40 205 66 141 41 115 40 63 200 150 +114 181 96 151 108 110 130 831 532 740 274 544 319 437 225 438 224 374 565 498 +115 138 98 119 112 118 157 449 365 351 290 389 287 335 268 336 268 341 412 393 +144 160 127 143 145 161 279 503 474 332 415 488 381 425 376 426 377 474 529 522 +153 161 138 146 160 193 378 472 516 250 482 508 418 448 430 448 432 540 562 572 +108 110 101 100 121 179 301 265 336 139 334 317 277 285 296 285 298 365 357 374 +118 115 115 106 142 253 360 229 340 133 372 321 299 295 330 295 332 398 366 394 +101 97 100 90 118 141 153 119 139 103 226 210 210 206 217 206 218 229 219 226 +62 59 60 55 71 79 80 66 73 61 127 119 121 119 124 119 124 127 122 125 +40 37 39 35 47 52 51 40 45 38 79 74 76 74 78 74 78 79 75 78 +12 11 12 10 14 15 15 12 13 11 23 21 22 22 23 22 23 23 22 22 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 22 10 15 12 12 13 67 37 70 16 39 20 30 16 27 16 20 38 31 +40 55 33 44 39 40 46 170 117 154 71 119 78 99 64 99 63 88 123 111 +111 130 95 112 109 114 154 658 519 491 328 491 323 402 291 403 291 412 529 497 +101 111 89 98 103 112 208 396 372 252 293 352 265 301 260 301 261 341 386 380 +95 99 85 89 99 119 227 282 308 152 270 284 232 249 239 250 240 303 316 323 +100 100 91 91 109 163 282 247 317 124 301 285 247 254 264 254 266 331 323 339 +97 96 95 87 118 215 310 194 292 110 306 261 241 238 268 238 270 328 300 325 +110 105 113 96 149 292 360 160 287 113 343 267 266 252 302 251 305 359 309 343 +93 87 107 80 166 288 313 109 202 91 278 195 210 188 246 188 248 284 227 261 +51 46 62 42 126 200 193 52 85 48 146 82 101 83 126 83 129 145 100 123 +27 22 36 21 125 182 152 24 34 22 89 41 49 42 68 42 77 83 44 56 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +35 88 29 54 34 34 35 477 228 497 40 217 63 145 40 113 40 61 213 158 +126 192 107 165 121 123 142 970 624 856 306 621 356 494 242 496 241 424 646 569 +195 230 168 202 191 201 277 1239 979 918 628 937 615 767 555 770 556 790 1010 950 +263 286 232 257 266 289 625 1304 1222 780 937 1146 834 963 818 966 821 1109 1265 1247 +321 331 289 302 333 377 948 1222 1356 525 1176 1248 988 1075 1024 1077 1030 1342 1405 1435 +347 349 319 320 371 587 1199 1029 1370 402 1304 1228 1043 1079 1131 1081 1138 1447 1409 1486 +330 325 314 299 375 871 1371 765 1288 359 1319 1099 998 982 1134 982 1143 1433 1294 1416 +280 268 285 247 362 1114 1440 439 1100 288 1224 871 863 794 1037 794 1046 1298 1067 1225 +215 195 309 182 558 1228 1362 259 764 204 1013 574 654 528 846 527 858 1043 750 925 +143 117 234 111 642 1153 1106 147 345 118 699 254 383 257 559 256 584 690 378 539 +73 74 77 68 416 617 513 74 77 75 257 118 118 117 172 117 215 237 116 139 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +33 79 27 49 32 32 33 446 215 463 37 201 56 132 37 101 37 56 197 146 +123 185 104 158 117 119 138 953 615 837 295 603 342 478 230 480 230 411 629 554 +192 226 165 198 188 198 276 1230 974 906 616 921 602 752 543 755 543 777 995 936 +257 280 227 252 260 283 622 1292 1214 768 919 1125 815 943 801 946 803 1090 1245 1227 +311 321 280 293 322 367 936 1204 1340 511 1148 1218 959 1046 996 1048 1002 1311 1373 1404 +336 338 309 309 360 577 1187 1016 1356 391 1276 1200 1015 1051 1103 1053 1110 1418 1380 1458 +324 319 309 293 369 862 1361 759 1279 353 1298 1079 979 963 1114 963 1123 1412 1274 1395 +276 264 281 243 358 1100 1424 436 1089 284 1203 854 845 778 1018 778 1027 1277 1049 1205 +215 194 306 181 554 1220 1356 260 764 203 1003 568 647 521 837 521 849 1035 744 917 +139 113 226 108 625 1126 1083 144 338 115 679 246 369 249 540 248 566 670 365 522 +70 73 69 68 384 571 477 73 71 75 237 114 111 113 157 113 198 219 112 129 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +30 64 25 41 29 29 31 333 165 344 35 154 49 104 35 81 35 49 152 114 +95 135 79 112 90 92 111 452 311 403 206 337 225 283 183 283 183 255 349 316 +140 166 121 145 138 145 195 510 422 397 352 458 346 398 326 399 326 408 485 464 +162 180 143 161 164 182 294 486 464 332 437 500 405 444 401 444 402 490 538 532 +188 197 171 180 197 239 418 505 551 294 550 574 485 514 498 515 500 607 628 639 +207 209 193 192 227 340 589 515 661 259 675 642 561 577 599 577 603 738 721 756 +191 188 187 173 227 391 553 356 523 213 595 520 486 481 532 481 535 634 587 629 +156 150 160 138 208 446 559 230 442 160 524 403 400 377 459 377 463 550 470 525 +178 162 242 151 429 919 1022 216 589 170 770 450 506 415 647 415 655 793 579 707 +86 75 110 70 229 374 362 89 156 76 280 156 191 157 240 157 247 278 190 236 +31 27 34 25 83 114 99 29 35 26 78 52 57 53 67 53 71 75 54 61 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 +36 37 31 34 35 36 37 41 39 41 67 69 67 68 66 68 66 67 69 68 +57 60 51 55 57 58 62 68 66 66 110 114 110 112 110 112 110 112 115 114 +90 94 80 86 91 96 107 120 118 110 185 191 182 186 182 186 182 190 194 194 +104 107 94 98 107 117 134 139 143 123 222 225 215 218 217 218 217 228 231 232 +92 93 86 86 98 106 116 112 117 102 193 191 187 188 189 187 189 196 195 197 +106 104 101 96 118 138 154 133 150 114 236 227 222 221 228 221 228 241 235 241 +95 91 93 84 110 132 143 112 130 97 210 196 195 193 202 192 203 213 204 210 +70 66 69 61 83 98 101 75 88 68 148 136 138 135 143 135 144 149 141 146 +47 43 48 40 60 71 70 47 56 44 97 86 89 86 94 86 94 97 89 93 +16 15 17 14 24 29 26 16 18 16 32 27 29 27 31 27 31 32 28 30 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +33 34 29 31 32 33 34 36 35 37 61 63 61 62 61 62 61 62 63 62 +36 36 32 34 36 37 37 38 38 38 67 68 67 68 67 68 67 68 68 68 +43 43 39 40 44 44 45 45 45 45 81 82 81 81 81 81 81 82 82 82 +43 43 39 40 44 45 45 45 45 45 81 81 81 81 81 81 81 82 82 82 +80 80 74 74 84 89 95 92 96 87 162 161 158 159 159 159 160 164 163 165 +94 93 89 86 103 116 127 113 123 100 201 195 192 191 196 191 196 205 200 204 +78 76 77 69 105 225 283 117 224 81 239 178 176 165 206 165 208 252 212 240 +56 53 54 50 64 71 72 59 65 55 113 107 108 107 111 106 111 114 110 112 +57 53 66 48 129 203 198 59 93 54 159 97 113 98 138 97 142 157 113 136 +21 17 25 16 69 98 84 18 26 17 59 34 39 35 48 35 52 56 36 43 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +22 45 19 29 22 22 23 279 140 284 25 121 33 77 25 55 25 34 120 89 +92 131 78 111 89 90 105 688 453 596 208 424 238 334 161 335 160 292 445 393 +73 87 62 74 72 76 106 265 221 205 161 216 157 184 148 184 148 190 230 219 +92 102 80 90 93 104 180 305 292 202 239 280 217 242 215 243 216 274 305 302 +108 114 97 102 113 140 260 315 346 174 311 326 269 288 277 288 279 349 362 370 +113 115 106 105 126 190 321 281 358 145 347 329 286 294 306 295 308 381 372 390 +120 119 115 108 142 293 446 263 421 134 417 349 318 313 359 313 362 452 409 447 +82 79 83 72 111 233 292 124 232 85 252 190 188 177 218 177 220 266 225 253 +172 157 235 146 435 979 1098 210 627 164 785 437 496 395 650 395 659 812 579 719 +64 57 80 53 181 306 298 66 119 58 211 109 135 109 176 109 183 209 135 173 +17 14 20 13 60 87 74 15 21 14 49 27 31 28 39 28 43 46 29 34 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 5 4 5 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 +34 35 29 32 33 34 35 38 37 38 63 65 63 64 63 64 63 63 65 64 +61 65 54 59 61 63 68 76 74 73 120 124 119 122 119 122 119 122 125 124 +49 52 42 46 50 54 106 198 188 122 130 158 114 132 113 132 113 154 176 173 +94 97 83 87 98 118 232 283 313 149 263 277 224 241 231 241 233 298 310 317 +103 104 96 95 115 174 298 260 333 132 314 297 257 264 276 265 278 346 337 355 +127 125 122 114 150 306 464 276 438 141 436 366 334 329 376 329 379 473 429 468 +172 165 176 152 229 648 842 278 653 178 694 494 487 450 586 450 592 739 608 698 +75 70 84 64 134 243 269 89 173 73 220 149 160 142 192 141 194 226 177 207 +50 45 65 42 189 340 332 52 108 47 194 73 102 74 151 74 160 192 103 148 +13 11 16 10 78 120 101 12 17 11 48 20 23 20 32 20 39 44 21 26 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 30 13 20 16 16 17 193 99 195 20 83 24 53 20 38 20 25 83 62 +68 93 57 77 66 67 79 441 297 381 138 271 155 215 110 215 110 190 285 253 +74 87 63 74 73 77 108 267 223 205 162 216 158 185 148 185 149 191 231 221 +87 91 78 84 88 93 105 117 116 107 179 185 176 180 176 180 176 184 189 188 +137 144 124 131 144 177 322 387 425 217 398 416 346 369 357 369 358 443 459 468 +179 181 167 165 197 315 587 506 664 226 623 586 500 517 541 517 545 690 671 708 +186 183 179 168 218 544 880 483 829 206 777 632 564 554 653 554 660 854 762 843 +191 182 195 168 253 739 965 312 748 197 787 556 547 504 662 504 669 839 687 792 +127 117 159 109 280 592 663 155 395 123 498 298 331 275 419 275 425 514 380 461 +72 64 94 60 232 404 396 76 146 65 265 127 159 127 215 127 225 263 161 212 +26 17 38 17 183 283 238 21 36 16 114 43 52 45 73 45 91 104 48 60 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 31 14 21 17 17 18 210 108 211 21 89 24 56 20 38 20 25 89 66 +106 148 90 127 102 104 121 908 598 774 243 530 280 409 177 410 176 357 560 492 +175 204 151 179 172 182 292 1206 972 860 558 848 532 679 479 681 479 717 927 873 +236 257 209 231 239 263 630 1281 1221 731 852 1050 738 865 728 868 731 1026 1176 1162 +284 294 256 267 296 344 943 1198 1350 476 1074 1138 875 962 916 964 922 1242 1301 1335 +283 285 261 261 306 521 1105 936 1266 338 1110 1034 858 892 943 893 950 1246 1208 1284 +269 265 259 244 313 777 1256 692 1184 297 1119 914 817 803 944 802 953 1229 1100 1215 +245 234 251 216 323 1067 1410 417 1085 254 1111 763 749 684 922 684 932 1189 962 1119 +186 168 258 157 495 1160 1313 232 747 177 899 479 549 425 735 424 746 935 654 823 +115 93 179 88 558 1045 1024 122 306 94 586 200 285 201 442 201 474 581 290 436 +0 0 3 0 244 403 334 0 2 0 89 0 0 0 21 0 55 75 0 7 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 24 12 17 14 14 15 161 84 162 17 69 20 44 17 30 17 21 69 52 +91 125 78 107 88 90 106 737 490 627 203 433 232 335 151 336 151 295 458 403 +155 181 133 158 152 161 259 1003 813 716 473 710 450 570 407 572 408 604 775 731 +231 251 204 226 234 258 626 1268 1211 720 834 1030 721 846 711 849 714 1008 1155 1142 +277 287 250 261 289 337 935 1186 1339 466 1053 1117 855 941 896 943 902 1221 1279 1313 +297 299 274 274 321 552 1183 1000 1356 354 1175 1094 904 941 996 942 1003 1323 1281 1363 +267 263 256 241 310 771 1247 689 1177 295 1105 902 804 791 931 790 940 1215 1086 1200 +218 208 223 192 289 902 1189 367 920 226 944 655 642 589 786 589 795 1009 820 951 +139 128 177 119 319 695 784 172 465 134 571 333 371 303 477 303 483 592 432 528 +97 81 143 76 418 774 760 104 241 82 449 172 230 172 344 172 367 445 235 340 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 17 8 12 10 10 11 107 57 107 13 46 15 30 13 21 13 15 47 35 +77 104 64 87 74 75 91 524 356 447 160 318 179 250 126 250 126 222 335 298 +138 163 119 142 136 144 226 742 609 538 385 553 369 453 339 455 339 478 599 569 +178 194 157 174 180 200 424 801 768 476 565 682 497 572 492 573 494 669 757 750 +251 260 226 237 262 308 812 1021 1151 418 915 968 747 820 782 821 787 1058 1106 1135 +187 189 174 173 206 341 668 571 760 235 682 638 537 556 586 557 589 761 739 783 +219 216 211 198 257 597 949 538 897 244 852 702 630 620 723 619 730 934 839 923 +202 193 207 178 269 816 1074 339 835 209 853 595 583 535 712 535 720 912 743 861 +118 109 142 101 244 500 562 145 345 114 430 267 293 248 365 248 370 445 335 401 +72 63 92 59 227 398 392 76 147 65 260 128 156 129 210 128 221 259 158 209 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 7 4 5 5 5 5 27 15 26 6 14 7 10 6 9 6 7 14 12 +28 29 25 27 28 29 30 32 31 32 53 54 53 54 53 54 53 54 55 54 +17 17 15 15 17 17 17 17 17 17 31 31 31 31 31 31 31 31 31 31 +53 54 48 50 54 56 58 60 59 58 103 104 102 103 102 103 102 104 104 104 +55 55 50 51 56 58 60 60 60 59 106 106 105 105 105 105 105 107 107 107 +59 59 54 54 61 63 66 64 65 62 114 114 113 113 113 113 113 115 115 115 +57 56 52 52 60 62 64 61 63 59 111 109 109 109 110 109 110 111 111 111 +48 47 45 44 52 54 55 51 54 49 94 92 92 92 93 92 93 95 93 94 +84 79 97 73 167 338 380 102 236 83 286 178 195 165 243 165 246 296 223 267 +86 72 123 68 381 715 706 92 218 74 401 149 197 149 301 149 324 398 203 300 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 +42 54 35 44 41 42 50 239 166 204 72 140 79 110 58 110 58 99 148 132 +96 110 83 96 95 100 162 553 454 395 259 384 245 309 223 310 223 329 420 397 +125 135 110 121 128 141 342 681 653 383 425 527 363 429 359 430 360 518 596 589 +243 252 220 229 254 300 849 1072 1215 414 926 982 744 821 782 823 788 1080 1131 1163 +281 283 260 259 305 536 1168 985 1341 338 1127 1045 855 892 947 893 954 1274 1233 1314 +266 262 256 241 310 805 1323 723 1251 295 1133 916 809 795 946 795 956 1252 1115 1238 +179 172 183 158 239 715 945 304 737 186 742 517 505 464 617 464 625 794 647 749 +126 116 154 108 273 587 665 157 404 122 488 291 321 266 409 266 414 506 373 454 +51 47 57 43 114 184 182 53 85 48 140 87 98 87 120 87 124 140 100 120 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +45 57 38 47 44 45 54 243 170 208 77 145 84 115 64 114 64 104 153 137 +85 98 73 84 85 89 142 451 373 324 216 316 205 255 188 256 188 272 345 327 +196 213 174 192 199 221 536 1053 1013 594 682 839 585 687 579 689 581 826 945 936 +100 105 90 95 106 131 251 301 334 160 284 297 241 259 250 260 252 320 333 340 +142 143 132 131 156 260 514 438 584 178 504 470 392 407 430 407 432 565 548 582 +155 153 150 140 184 431 688 391 652 174 601 492 439 432 507 432 512 661 592 654 +95 92 95 84 127 261 330 145 266 99 289 221 218 206 251 206 254 305 260 292 +76 72 83 66 133 245 274 91 180 75 222 151 162 143 193 143 195 229 181 210 +58 52 73 48 195 352 349 62 124 53 215 100 120 100 168 100 179 214 124 169 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +47 59 39 48 45 46 56 252 177 214 80 151 87 119 67 118 67 109 160 143 +110 127 95 110 109 115 194 673 554 475 308 461 290 368 263 369 264 395 506 478 +98 105 86 94 99 110 222 400 387 241 275 330 241 276 239 277 240 325 367 364 +133 138 120 125 139 170 409 506 571 221 445 469 363 398 380 398 383 513 536 551 +143 144 132 132 157 263 521 444 592 179 507 473 394 409 432 409 435 570 552 587 +195 192 188 176 229 567 923 515 874 218 788 639 565 556 658 556 665 870 776 860 +170 163 172 150 226 706 940 295 734 176 717 491 478 437 591 437 599 770 623 726 +157 142 210 133 416 1018 1171 201 678 151 759 388 443 338 609 338 621 795 547 698 +97 78 145 74 495 962 957 106 281 80 507 171 224 172 365 171 400 505 237 370 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 1 0 0 0 0 0 16 8 16 0 5 0 3 0 1 0 1 5 4 +88 116 75 99 86 87 103 843 566 699 187 452 213 333 136 329 136 298 484 423 +167 188 144 166 165 174 300 1126 925 785 498 759 465 600 420 603 421 648 837 790 +214 233 190 209 218 242 628 1253 1208 689 777 966 657 781 650 784 654 952 1095 1085 +257 267 232 243 269 319 938 1181 1344 441 993 1053 788 874 831 876 838 1164 1220 1257 +275 277 255 254 300 537 1187 998 1364 333 1114 1030 836 873 930 874 937 1266 1223 1307 +261 257 251 236 305 811 1346 735 1276 291 1123 902 791 778 931 777 941 1246 1106 1232 +221 210 227 194 295 1029 1385 404 1077 230 1024 683 662 599 834 600 845 1105 883 1038 +159 143 211 134 418 1021 1176 206 686 153 763 391 445 341 612 341 624 799 551 702 +91 74 134 70 446 865 863 100 261 76 461 163 207 163 333 163 365 460 221 339 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 1 0 0 0 0 0 9 5 9 0 3 0 2 0 1 0 0 3 2 +80 107 67 89 77 79 98 657 449 545 165 366 184 275 130 271 130 250 391 345 +118 138 102 121 117 124 204 620 517 443 319 454 302 371 279 372 280 396 495 471 +149 163 131 146 151 170 370 682 661 398 467 563 406 469 403 470 405 557 630 625 +159 166 144 151 167 207 468 572 644 263 521 547 431 468 450 469 453 597 621 638 +169 171 157 156 187 306 586 502 664 214 584 546 460 476 501 477 505 653 634 672 +149 147 144 135 178 388 610 357 579 168 540 447 400 395 458 395 463 592 533 586 +120 116 121 107 159 315 399 182 325 125 363 283 278 264 318 264 320 382 330 367 +130 120 161 111 296 673 772 166 467 126 536 302 336 273 440 273 447 558 402 498 +49 44 58 40 142 253 253 52 99 45 162 84 96 84 129 84 136 162 100 131 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 9 8 9 9 9 9 9 9 9 17 17 17 17 17 17 17 17 17 17 +32 33 29 30 32 33 34 34 34 34 60 61 60 61 60 61 60 61 61 61 +49 50 44 46 50 51 54 55 55 54 95 96 94 95 94 95 94 96 96 96 +56 57 51 52 58 60 62 62 63 60 109 109 108 108 108 108 108 110 110 111 +60 60 55 56 63 66 69 67 69 64 118 118 116 116 117 116 117 119 119 120 +68 67 63 62 73 79 84 78 82 72 138 135 134 134 136 133 136 140 138 140 +42 41 38 38 44 46 47 44 45 42 80 79 79 78 79 78 79 81 80 80 +42 41 40 38 47 52 54 45 49 42 85 80 81 80 83 80 83 85 82 84 +17 16 16 15 19 20 20 17 18 17 33 31 32 31 32 31 32 33 32 32 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +19 20 17 18 19 19 20 20 20 21 36 36 36 36 36 36 36 36 36 36 +49 51 43 46 49 50 53 59 57 57 94 97 94 95 93 95 93 96 98 97 +69 73 60 64 70 77 147 251 244 154 165 197 144 165 144 165 144 195 220 218 +92 96 82 86 97 121 237 283 316 147 256 268 215 232 224 232 225 291 302 310 +84 85 77 77 93 146 260 225 292 108 245 230 194 201 211 201 213 274 266 282 +91 90 87 83 102 120 135 117 132 99 202 194 189 189 195 189 195 207 202 206 +51 50 48 46 55 59 62 56 59 52 102 99 99 98 100 98 100 102 100 102 +59 56 63 51 105 203 230 72 150 59 171 111 119 104 146 104 148 177 136 162 +31 29 31 27 39 47 47 32 38 30 63 57 58 57 61 56 61 63 59 61 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +44 55 37 45 43 44 53 294 206 244 74 160 80 119 61 117 61 110 171 151 +148 172 128 150 146 156 300 1126 930 768 457 719 420 556 376 558 377 610 800 754 +204 221 180 199 207 232 620 1222 1185 661 732 914 612 733 607 735 611 905 1042 1034 +169 175 152 159 177 215 570 706 803 285 592 625 473 522 498 523 502 692 723 745 +181 183 168 167 198 345 720 610 825 225 670 621 507 529 562 530 567 760 735 784 +222 219 214 201 262 677 1123 624 1069 249 922 740 647 636 762 636 770 1025 910 1014 +170 163 174 150 229 700 940 309 742 178 704 483 467 426 579 427 586 759 614 717 +81 77 91 70 158 330 377 102 240 80 275 169 183 157 230 156 234 286 215 258 +40 38 40 35 56 73 73 42 53 39 85 72 75 72 80 71 81 85 76 81 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 18 12 15 14 15 18 99 70 82 23 52 26 39 19 38 19 36 56 50 +51 57 43 49 51 54 82 212 180 154 103 145 97 118 91 119 91 127 158 151 +86 93 75 83 87 99 179 295 288 186 216 252 192 216 191 216 192 250 279 277 +189 197 171 178 198 241 663 823 938 322 681 721 540 598 571 600 575 799 836 862 +152 153 140 140 166 292 612 518 701 190 564 522 425 444 472 444 475 640 619 661 +132 130 126 119 156 355 569 330 543 148 481 393 348 343 403 343 407 531 475 525 +89 86 89 79 118 248 318 140 259 93 269 204 199 188 232 188 234 285 242 273 +82 77 95 71 175 401 463 102 285 81 309 173 190 156 252 156 257 324 232 289 +58 50 75 46 245 479 484 64 159 51 254 101 117 101 183 101 201 255 128 192 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +74 94 64 80 73 74 88 792 540 642 143 392 160 274 110 262 109 252 425 370 +153 172 133 152 152 160 300 1102 915 749 449 701 411 543 369 546 370 598 781 738 +199 216 176 194 203 227 628 1238 1204 661 722 906 597 720 593 723 597 898 1037 1029 +240 249 217 226 251 302 939 1177 1348 419 937 994 726 812 772 815 778 1111 1165 1204 +259 261 240 239 283 525 1191 1000 1375 318 1062 977 777 815 873 817 881 1217 1174 1259 +244 240 236 221 288 794 1343 736 1281 275 1068 846 731 719 871 719 882 1194 1054 1181 +205 195 211 180 277 1006 1377 407 1081 215 967 631 604 542 776 543 787 1052 832 988 +148 133 193 124 403 1057 1239 197 731 142 748 352 403 302 580 302 596 789 528 689 +81 64 117 61 424 858 869 92 267 66 428 148 174 148 293 147 329 430 194 313 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +58 72 49 61 57 58 69 510 353 415 106 262 116 187 87 179 87 174 283 248 +54 61 47 52 55 57 88 221 189 160 110 153 104 126 97 126 97 135 167 160 +81 88 71 77 82 93 171 282 276 176 201 235 177 200 177 200 177 234 261 259 +86 89 77 80 90 113 227 270 303 137 236 247 196 212 204 212 206 269 280 287 +232 234 215 214 254 461 1017 857 1171 287 914 842 675 707 755 708 762 1044 1008 1080 +203 200 196 183 240 619 1030 577 984 229 831 665 579 570 683 570 691 926 822 917 +183 174 191 160 253 754 1017 347 808 193 765 527 508 465 628 465 636 825 670 780 +119 109 141 101 256 578 670 156 420 116 465 268 292 244 380 244 388 486 354 435 +42 38 49 35 124 226 229 46 92 39 141 74 82 74 110 74 117 142 87 115 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +54 67 46 57 53 54 65 617 422 496 95 289 107 195 73 184 73 181 316 273 +105 117 91 103 104 110 214 787 654 530 301 480 273 367 244 369 244 408 538 508 +150 162 132 145 153 170 465 907 884 484 518 651 427 516 425 518 427 647 748 742 +221 229 199 208 231 280 870 1089 1249 387 854 907 658 738 701 740 707 1015 1065 1101 +219 220 203 202 239 445 1005 845 1161 271 883 812 644 676 725 677 731 1015 978 1050 +194 191 187 175 229 610 1028 571 982 219 812 645 557 549 663 549 671 908 803 899 +153 147 155 135 204 678 925 294 733 160 655 435 417 377 529 377 536 712 568 670 +136 123 175 115 366 973 1146 182 682 132 681 317 362 272 525 273 541 721 480 629 +70 64 83 60 304 615 626 75 192 66 303 117 126 117 205 116 233 305 141 223 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +59 73 51 62 58 59 70 686 470 550 104 320 117 214 83 201 82 201 350 303 +137 154 119 136 136 144 286 1066 887 714 405 648 365 494 325 496 327 551 728 687 +193 209 171 188 196 221 629 1237 1207 651 698 881 571 694 568 697 572 876 1014 1007 +232 241 210 219 244 294 940 1177 1352 410 911 968 698 785 744 787 751 1087 1141 1181 +248 250 230 229 271 514 1188 997 1375 306 1029 944 742 781 839 783 847 1187 1143 1229 +235 232 227 213 278 786 1344 736 1286 266 1040 818 700 689 841 689 852 1168 1029 1156 +177 170 181 156 237 891 1233 366 973 186 838 537 511 455 665 456 675 915 719 859 +141 127 182 118 387 1046 1236 191 737 136 725 331 377 282 554 283 572 768 508 669 +92 85 104 79 362 725 739 96 232 87 364 152 158 151 248 151 282 366 176 271 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +64 79 55 67 63 65 77 741 510 592 114 346 126 231 93 215 93 218 379 328 +141 158 123 140 140 148 293 1067 891 715 410 652 370 497 330 500 331 555 731 691 +188 204 167 183 191 216 621 1219 1190 639 680 860 554 675 552 678 556 855 992 985 +227 236 206 215 239 289 932 1166 1341 403 894 951 682 768 728 770 735 1069 1122 1162 +242 244 225 223 265 506 1174 986 1361 300 1008 924 724 763 820 764 828 1164 1122 1207 +186 184 178 168 219 626 1077 589 1032 209 817 640 545 536 658 536 666 920 809 911 +150 144 152 132 201 666 914 295 727 158 640 424 405 365 515 366 522 697 555 656 +82 77 91 71 157 337 391 105 253 81 278 169 181 157 230 157 235 290 217 262 +29 27 32 24 72 128 131 32 58 28 84 48 52 48 67 48 71 84 55 70 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +14 14 12 13 14 14 14 15 14 15 26 26 26 26 26 26 26 26 26 26 +34 35 31 32 34 35 37 38 38 38 65 66 65 66 65 65 65 66 67 66 +63 65 56 60 64 67 74 79 79 74 125 128 124 125 123 125 124 128 130 130 +76 78 70 72 79 86 97 99 102 89 159 160 154 156 155 156 155 163 164 165 +87 87 81 81 93 106 122 116 125 99 188 186 179 180 182 180 183 194 192 195 +73 72 68 66 79 89 98 88 96 78 153 148 146 146 149 145 149 156 153 155 +67 65 64 60 76 90 97 79 90 69 143 135 134 132 138 132 138 145 140 144 +43 41 42 38 50 58 61 48 54 43 90 83 84 83 87 83 87 90 86 89 +16 15 16 14 19 21 21 17 18 16 32 30 31 30 31 30 32 32 31 32 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +29 35 24 28 29 29 36 187 134 152 43 95 45 69 38 65 38 66 103 91 +41 46 35 39 41 43 70 183 156 129 82 118 76 95 71 95 71 104 130 124 +61 64 53 56 62 69 137 233 229 139 141 170 121 140 121 140 121 170 192 191 +102 105 91 95 106 131 310 376 426 166 307 323 247 271 260 271 262 358 373 385 +182 184 169 168 200 364 806 681 930 228 699 643 510 535 573 536 578 803 774 831 +142 140 136 128 168 409 677 390 650 161 542 436 379 374 446 374 451 604 537 598 +95 92 94 85 126 319 427 167 346 100 324 232 223 207 270 207 273 349 288 332 +65 61 71 56 140 352 415 82 258 65 246 123 136 109 192 109 198 261 179 230 +24 22 26 20 62 112 114 26 50 23 69 38 41 38 54 38 57 69 44 57 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +58 70 50 60 57 58 69 715 494 566 96 319 106 205 82 185 82 197 352 303 +136 152 118 134 135 143 293 1061 888 703 390 629 348 475 309 477 311 536 710 670 +183 199 162 178 186 211 625 1224 1198 634 662 841 533 654 531 657 535 839 975 969 +221 230 200 209 233 283 934 1170 1347 397 873 929 658 745 705 747 712 1050 1103 1143 +236 239 219 218 260 502 1183 994 1374 295 991 906 702 742 800 744 808 1150 1107 1194 +222 219 215 201 264 766 1328 731 1277 253 995 777 656 646 796 646 806 1124 987 1113 +185 177 191 163 252 967 1353 410 1076 196 894 566 534 472 702 474 714 982 768 922 +130 117 164 109 356 1007 1203 180 728 126 678 295 336 251 508 252 527 722 470 628 +82 76 89 70 323 666 686 86 225 78 321 135 139 135 212 135 244 325 152 241 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +53 64 46 54 53 54 64 682 472 538 85 297 93 187 73 167 73 181 329 283 +141 157 122 139 140 148 299 1055 886 700 395 631 353 478 315 480 317 539 711 672 +184 200 163 180 187 213 597 1145 1122 602 639 803 519 631 518 634 522 802 927 922 +202 210 183 191 212 259 848 1061 1221 363 786 837 592 670 635 672 641 946 994 1031 +217 220 202 201 239 443 999 846 1157 273 856 786 618 651 698 652 705 987 952 1023 +205 202 199 186 245 658 1121 632 1079 235 861 681 581 573 696 574 705 967 855 959 +136 130 137 120 182 580 799 272 642 143 560 375 357 323 451 324 458 610 489 577 +83 78 92 72 158 343 400 109 263 82 283 173 184 161 234 161 239 296 222 269 +37 32 44 30 134 267 275 42 105 33 143 65 71 65 102 65 112 144 77 112 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +17 20 14 16 17 17 21 100 73 81 24 52 26 37 23 35 23 36 56 50 +36 37 32 34 36 37 39 41 40 40 68 69 68 68 67 68 67 69 70 70 +68 72 59 63 69 77 151 253 248 151 160 191 139 159 138 159 139 191 215 214 +87 91 78 81 92 115 233 276 310 139 237 248 196 212 205 212 206 271 282 290 +84 85 78 78 90 103 118 113 122 96 183 180 173 175 176 175 177 188 186 189 +81 80 77 74 90 107 122 105 119 89 179 172 167 167 172 167 172 184 179 183 +69 67 67 62 80 97 107 84 98 72 151 141 140 138 145 138 145 154 147 152 +48 46 48 43 59 71 76 54 65 48 103 94 95 93 99 93 99 104 98 102 +22 21 22 19 29 35 36 23 28 22 46 40 42 40 44 40 44 46 42 44 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 +35 36 31 33 35 36 38 40 40 40 67 68 67 67 66 67 66 68 69 69 +54 56 48 51 55 57 62 65 65 62 106 108 105 106 105 106 105 108 110 110 +77 79 70 73 80 88 100 103 107 91 162 163 156 158 157 158 158 166 168 169 +82 83 76 76 88 100 115 109 118 94 178 175 169 170 172 170 172 182 181 184 +79 78 75 72 88 103 117 101 114 86 173 166 162 162 166 162 167 177 173 177 +67 65 65 60 77 93 102 81 94 70 146 136 135 133 140 133 140 148 142 147 +40 38 38 35 46 53 55 43 49 40 81 76 76 75 79 75 79 82 78 81 +21 20 21 18 26 32 33 22 26 20 43 38 39 38 41 38 41 43 39 41 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 +29 29 26 27 29 30 31 32 31 31 54 55 54 55 54 55 54 55 55 55 +33 33 30 31 34 34 35 35 35 35 63 63 62 62 62 62 62 63 63 63 +37 37 34 34 38 39 40 39 40 39 71 71 70 70 70 70 70 71 71 71 +34 34 31 32 35 36 36 36 36 36 65 65 64 64 64 64 64 65 65 65 +20 20 18 18 20 20 20 20 20 20 37 37 37 37 37 37 37 37 37 37 +31 30 29 28 33 34 34 32 33 32 59 58 58 58 59 58 59 59 59 59 +17 17 16 15 18 18 18 18 18 17 32 32 32 32 32 32 32 32 32 32 +8 8 8 7 9 9 9 8 9 8 16 15 15 15 15 15 15 16 15 15 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +12 13 11 12 12 12 13 13 13 13 23 23 23 23 23 23 23 23 23 23 +35 37 31 34 36 37 39 41 41 40 68 69 68 68 67 68 67 69 70 70 +34 34 31 32 35 35 36 37 37 36 64 65 64 64 64 64 64 65 65 65 +29 29 26 26 29 30 30 30 30 30 54 54 54 54 54 54 54 54 54 54 +53 53 49 49 55 58 61 60 61 57 104 104 102 103 103 103 103 106 105 106 +37 36 33 33 38 39 40 39 39 38 70 69 69 69 69 69 69 70 70 70 +18 18 17 17 19 19 19 19 19 19 34 34 34 34 34 34 34 34 34 34 +14 14 13 13 15 15 15 15 15 15 27 27 27 27 27 27 27 27 27 27 +7 7 6 6 7 8 8 7 7 7 13 13 13 13 13 13 13 13 13 13 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 11 10 10 11 11 11 11 11 11 20 20 20 20 20 20 20 20 20 20 +33 34 29 31 33 34 35 37 37 37 62 63 62 63 62 62 62 63 64 64 +63 66 57 61 64 69 77 85 85 77 129 133 126 129 126 129 127 133 135 135 +56 57 51 53 58 61 66 66 68 63 112 112 110 111 110 111 110 113 114 114 +74 75 69 69 79 88 99 95 101 83 156 155 150 151 152 151 152 160 159 161 +72 71 68 66 79 91 102 90 100 78 154 149 146 146 149 146 149 158 154 157 +71 69 69 64 84 105 118 89 107 74 159 147 145 143 151 143 152 163 154 160 +53 51 52 47 66 86 93 61 78 53 116 103 104 101 110 101 111 118 109 115 +26 25 25 23 36 48 49 27 35 26 54 45 47 45 51 45 51 54 48 51 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +33 38 28 31 33 33 40 390 274 304 43 158 46 93 41 79 41 94 177 151 +122 135 106 119 121 128 283 1012 853 658 336 562 292 413 257 415 258 477 642 606 +169 184 149 164 172 196 613 1196 1176 606 603 777 473 592 473 595 477 778 911 906 +207 216 187 196 218 269 923 1159 1336 383 815 871 600 686 647 688 654 993 1046 1086 +221 223 205 204 243 480 1166 987 1365 280 930 848 642 683 738 685 746 1090 1049 1135 +208 205 202 188 249 742 1314 733 1275 240 939 726 601 593 739 594 749 1070 937 1063 +171 163 177 150 234 930 1327 422 1070 183 835 518 479 420 644 422 655 926 719 870 +115 104 139 96 311 945 1150 165 717 113 611 250 280 217 442 217 464 656 419 569 +70 65 70 60 262 565 590 73 217 67 260 116 117 116 163 115 192 265 121 199 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 37 27 30 31 32 39 328 233 256 43 137 45 83 41 71 41 84 153 132 +84 95 72 82 84 89 183 595 504 392 213 341 188 256 168 257 169 293 387 366 +113 122 100 109 115 131 299 528 520 296 323 393 272 319 272 320 274 394 447 445 +107 111 96 100 112 139 275 326 365 168 290 303 243 262 253 262 255 330 342 352 +150 152 140 139 167 283 572 495 658 196 512 476 386 404 428 405 431 582 565 603 +149 147 144 135 179 429 716 425 696 172 561 453 390 386 459 386 464 628 560 624 +120 116 122 106 162 437 601 238 494 128 439 309 293 271 360 271 365 477 392 454 +67 64 68 59 107 212 247 84 173 67 189 129 134 123 161 123 164 197 156 182 +20 19 21 17 69 144 151 23 62 19 70 32 34 32 47 32 53 72 36 56 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +12 14 10 11 12 12 14 78 57 62 16 37 16 25 15 23 15 25 40 36 +44 49 38 42 45 47 77 190 164 133 84 120 77 95 72 96 72 106 133 127 +39 40 33 35 40 44 99 175 172 98 92 114 75 90 75 91 76 115 132 132 +50 51 45 47 52 54 57 57 58 55 98 98 97 97 97 97 97 99 100 100 +56 56 52 52 59 63 67 65 68 61 112 112 110 110 111 110 111 114 114 114 +44 44 41 41 47 49 51 49 51 47 87 86 85 85 86 85 86 88 87 88 +33 32 30 30 35 36 37 35 36 34 63 62 62 62 63 62 63 64 63 63 +23 22 22 21 25 26 27 24 25 23 45 43 43 43 44 43 44 45 44 44 +9 8 8 8 9 10 10 9 9 8 17 16 16 16 16 16 16 17 16 16 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +20 23 17 19 20 20 25 248 175 192 25 96 26 54 24 44 24 56 109 93 +67 74 58 65 67 71 147 476 404 312 160 262 140 194 125 195 125 224 299 283 +71 76 62 67 72 82 158 260 257 156 168 199 145 166 145 166 146 200 224 223 +113 116 101 105 118 145 441 549 630 199 382 408 285 324 306 325 309 464 488 507 +146 148 135 135 160 297 685 586 800 186 550 504 387 410 441 411 445 641 619 667 +86 85 81 77 100 193 300 193 292 98 251 211 188 186 213 186 215 276 251 275 +74 72 72 66 95 210 281 128 235 78 217 162 155 146 183 146 185 233 197 224 +41 40 41 36 71 159 189 53 129 42 121 71 75 67 97 67 100 127 94 115 +19 18 20 16 48 92 96 21 46 18 56 32 34 32 43 32 46 57 36 48 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 9 8 9 9 9 9 9 9 10 17 17 17 17 17 17 17 17 17 17 +29 30 26 27 29 30 31 33 33 32 55 56 55 56 55 56 55 56 57 56 +34 34 30 32 34 35 37 37 37 36 64 65 64 64 64 64 64 65 65 65 +72 74 65 68 75 82 94 98 101 85 151 152 146 148 147 148 147 155 157 158 +67 68 62 62 71 78 87 84 89 75 139 138 134 135 136 135 136 142 142 143 +74 73 70 67 82 97 111 96 108 81 162 155 151 151 156 151 156 166 162 166 +40 39 37 36 43 46 48 43 46 41 79 76 76 76 77 76 77 79 78 79 +23 22 21 20 24 26 26 24 25 23 44 42 42 42 43 42 43 44 43 43 +16 15 15 14 20 24 25 17 20 15 32 28 29 28 31 28 31 32 30 31 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +34 39 30 32 35 35 41 558 392 427 44 203 44 105 42 79 42 111 232 195 +110 122 96 107 110 116 271 981 828 629 297 516 252 370 219 372 220 435 595 560 +107 115 95 102 109 123 352 667 657 345 334 427 263 327 263 328 266 429 500 498 +94 97 84 87 98 122 248 295 331 148 250 262 207 224 216 224 218 287 298 307 +121 122 112 112 133 219 435 379 500 156 386 360 293 306 323 307 326 439 426 454 +117 115 111 105 138 293 474 295 463 134 386 319 279 277 321 277 325 428 386 426 +99 95 98 88 130 329 452 191 375 105 334 240 227 211 275 212 279 362 300 346 +73 69 79 63 145 372 451 99 300 73 275 148 157 139 214 138 221 293 208 262 +38 30 49 28 174 385 407 48 172 31 183 77 84 75 117 75 135 189 89 145 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 17 13 13 16 16 18 228 161 175 17 80 17 40 16 30 16 43 92 77 +33 36 28 31 34 35 61 161 138 110 63 94 57 73 53 73 53 83 106 101 +56 58 48 51 57 63 131 222 219 129 124 152 104 123 105 123 105 152 174 173 +50 51 44 45 52 63 154 188 214 81 128 136 98 110 105 110 105 154 161 167 +71 71 63 64 76 136 307 265 359 89 226 207 156 166 179 167 181 267 257 278 +33 33 30 30 38 97 168 98 164 37 109 84 68 68 84 68 86 125 109 124 +58 56 55 52 66 78 86 69 80 60 124 116 115 114 119 114 119 126 121 125 +40 39 40 35 68 154 185 51 127 41 117 69 72 65 93 65 96 123 91 112 +19 18 20 16 47 91 96 22 48 18 57 34 36 34 44 34 47 58 38 49 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 9 6 7 7 8 9 92 65 71 10 35 10 19 9 15 9 20 39 34 +62 69 53 60 62 66 134 423 360 278 141 231 123 171 110 171 110 198 264 249 +93 99 82 88 95 105 346 681 670 337 306 404 231 299 231 300 234 406 481 479 +73 74 64 66 76 92 303 381 438 131 235 254 167 195 182 195 184 293 310 323 +71 71 64 64 77 123 239 209 274 90 196 183 148 155 163 155 165 225 218 233 +69 68 63 61 80 160 254 162 249 78 196 162 141 140 163 140 164 218 197 217 +57 55 55 51 65 77 85 68 79 59 122 115 114 112 117 112 117 124 119 123 +38 36 37 33 44 53 57 42 50 38 79 73 73 72 76 72 76 80 76 78 +15 14 14 13 19 23 24 16 19 14 30 27 27 26 29 26 29 30 28 29 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 5 5 5 5 6 6 5 5 6 10 10 10 10 10 10 10 10 10 10 +31 32 27 29 31 32 34 36 36 35 59 60 59 60 59 59 59 60 61 61 +65 69 56 61 66 75 147 243 240 145 150 179 128 148 128 148 129 179 202 202 +78 81 70 73 82 102 215 258 290 126 205 216 167 182 175 182 176 238 248 256 +84 85 77 77 92 143 267 236 305 107 236 221 183 190 200 191 201 267 260 276 +160 158 153 145 190 543 970 559 953 185 675 523 428 425 527 425 535 773 679 770 +114 110 114 101 152 520 747 273 616 122 473 304 279 250 368 251 374 525 415 496 +75 70 82 65 184 615 764 104 494 75 375 141 156 130 259 130 276 407 254 352 +20 19 20 17 88 205 219 22 91 19 85 33 35 33 48 33 59 88 36 66 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 +15 15 13 14 15 15 16 15 15 16 28 28 28 28 28 28 28 28 28 28 +19 19 17 18 20 20 20 20 20 20 36 36 36 36 36 36 36 36 36 36 +33 33 29 30 33 34 35 35 35 34 62 62 61 61 61 61 61 62 62 62 +30 29 27 27 30 31 31 31 31 31 56 56 55 56 56 56 56 56 56 56 +61 60 55 54 70 145 235 148 230 68 171 139 119 119 139 119 141 192 172 191 +33 32 30 29 41 120 169 67 140 35 102 66 61 55 79 55 80 113 89 107 +17 17 16 15 34 99 122 22 81 18 59 24 26 23 42 23 44 64 41 56 +13 12 13 11 16 20 21 14 17 13 27 24 24 24 26 24 26 27 25 26 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 +29 30 26 27 29 30 32 34 33 33 55 56 55 56 55 56 55 56 57 57 +52 54 47 49 53 56 62 67 67 62 104 106 102 104 102 104 102 106 108 108 +51 52 47 48 53 56 60 61 62 57 102 102 100 101 100 101 100 104 104 104 +65 65 60 60 69 76 85 82 86 72 134 133 129 130 131 130 131 137 137 138 +36 36 33 33 37 39 40 38 39 37 69 68 68 68 68 68 68 69 69 69 +51 50 49 46 58 67 73 61 68 54 108 103 102 101 105 101 105 110 106 109 +36 35 35 32 43 51 54 41 48 36 76 70 70 69 73 69 73 77 73 75 +13 12 14 11 35 71 75 15 37 13 39 22 23 22 29 22 31 40 24 34 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +5 5 5 5 5 6 6 5 6 6 10 10 10 10 10 10 10 10 10 10 +28 29 25 27 29 29 31 33 32 32 54 55 54 55 54 55 54 55 56 56 +49 50 44 46 49 52 57 61 61 57 96 98 95 96 95 96 95 98 100 100 +20 20 18 19 21 21 21 21 21 21 38 38 38 38 38 38 38 38 38 38 +57 58 53 53 60 65 71 69 72 63 116 116 113 113 114 113 114 119 118 119 +45 44 41 41 47 50 53 50 52 47 88 87 86 86 87 86 87 89 88 89 +27 27 25 25 29 30 30 29 30 28 52 51 51 51 52 51 52 52 52 52 +18 17 17 16 19 20 20 19 20 18 34 34 34 34 34 34 34 35 34 34 +6 6 6 6 7 8 8 7 7 6 13 12 12 12 12 12 12 13 12 13 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +18 18 16 17 18 19 19 19 19 19 34 34 34 34 34 34 34 34 34 34 +30 31 27 28 31 32 33 33 33 33 58 58 57 58 57 57 57 58 58 58 +39 39 34 35 40 49 129 160 181 65 102 109 76 87 82 87 82 124 131 136 +45 45 39 40 48 80 170 149 198 56 124 114 87 93 99 93 100 146 141 152 +159 157 152 144 189 546 990 576 978 185 675 522 422 420 523 420 531 777 682 775 +130 125 131 115 174 704 1039 360 859 140 611 371 331 290 459 292 467 687 531 647 +92 84 105 77 235 824 1036 138 679 92 501 185 203 173 342 173 364 547 339 473 +39 35 38 33 164 395 424 42 182 37 160 67 69 67 88 67 109 167 70 125 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +18 18 16 16 18 18 18 19 18 19 33 33 33 33 33 33 33 33 33 33 +30 31 27 28 31 32 33 33 33 33 58 58 57 58 57 57 57 58 58 58 +122 127 110 115 128 162 414 512 580 214 381 405 296 331 314 331 317 453 475 491 +158 160 146 146 174 334 832 722 986 205 625 572 421 452 487 454 493 741 716 776 +133 132 126 120 155 475 878 506 869 153 574 437 346 345 437 345 444 665 581 664 +127 122 129 112 172 641 941 340 781 138 569 356 320 284 433 285 441 638 499 603 +71 66 75 61 133 354 435 99 299 71 262 142 149 136 201 136 209 280 200 251 +25 22 28 20 72 150 160 31 81 23 89 50 53 49 66 49 71 91 57 76 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 15 11 13 13 14 17 167 120 128 18 60 18 30 17 24 17 33 68 58 +60 66 52 58 61 64 153 544 460 346 143 263 115 182 99 183 100 220 307 289 +113 122 100 109 116 131 414 806 794 405 363 479 276 355 276 357 279 481 570 567 +147 152 132 138 154 190 693 886 1017 289 552 598 388 456 424 457 429 690 733 763 +164 166 152 151 180 353 903 784 1074 213 666 609 442 477 515 478 522 794 767 833 +141 139 134 128 165 489 897 523 890 163 597 459 366 365 458 365 465 690 605 689 +119 114 120 105 159 564 826 306 688 128 507 322 291 260 389 261 395 567 446 537 +76 70 83 65 162 489 610 112 411 76 329 153 162 145 239 145 251 355 238 314 +26 20 32 19 114 266 287 34 131 22 122 52 57 51 76 51 87 127 61 99 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 +12 12 11 11 12 13 13 13 13 13 23 23 23 23 23 23 23 23 23 23 +22 22 20 20 22 22 23 23 23 23 41 41 41 41 41 41 41 41 41 41 +15 15 13 13 15 15 15 15 14 15 27 27 27 27 27 27 27 27 27 27 +44 44 40 41 46 48 51 50 51 47 87 86 85 85 86 85 86 88 87 88 +39 38 35 35 40 43 44 42 44 40 75 74 74 74 74 73 74 76 75 76 +21 20 19 19 22 22 22 21 22 21 39 39 39 39 39 39 39 39 39 39 +15 15 14 13 16 16 16 15 16 15 28 28 28 28 28 28 28 28 28 28 +3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 5 4 4 4 5 6 25 18 19 7 12 7 8 6 8 6 9 13 12 +30 32 25 28 30 32 66 212 180 138 58 102 47 72 42 72 42 86 119 112 +87 93 76 83 89 100 269 501 494 264 243 312 192 239 192 240 194 314 367 365 +154 160 138 145 161 201 735 943 1083 308 582 632 408 480 445 482 451 729 775 808 +153 155 141 141 167 333 881 768 1054 197 631 576 410 445 482 447 489 759 733 798 +111 110 104 100 129 368 674 397 670 128 444 342 272 272 340 272 345 513 450 513 +70 68 66 62 88 296 434 165 363 74 256 162 145 130 195 131 199 287 226 272 +56 53 57 49 120 421 533 78 356 57 252 95 103 91 171 91 182 276 172 240 +13 13 14 12 83 219 238 15 101 13 78 25 26 25 37 25 48 82 27 59 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +6 7 5 6 6 6 8 33 25 26 9 16 9 12 9 11 9 12 18 16 +35 38 30 32 35 37 63 160 139 110 62 92 55 71 51 71 51 81 103 99 +59 62 52 55 60 67 138 234 231 136 134 163 113 132 113 132 114 163 185 185 +92 95 82 86 96 118 244 294 329 147 241 253 198 216 207 216 209 278 290 298 +100 101 92 92 109 165 306 275 352 128 280 265 221 230 239 230 241 315 308 326 +79 78 74 71 91 176 282 186 279 90 226 190 166 166 189 166 191 251 229 251 +80 78 77 71 99 214 293 142 251 85 228 174 165 157 193 157 195 247 211 238 +80 74 88 68 183 632 801 124 539 81 394 159 169 151 273 151 289 431 274 377 +17 15 19 14 57 127 138 21 67 15 63 31 34 31 42 31 47 66 36 53 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 12 9 10 11 11 13 117 85 90 14 42 14 22 14 18 14 24 48 41 +67 73 58 64 67 71 176 640 541 404 159 301 124 205 107 205 108 250 354 332 +130 141 114 126 132 151 519 1032 1014 509 438 589 324 428 324 430 328 592 707 704 +172 180 156 163 182 227 870 1124 1290 359 677 739 468 555 513 557 519 854 911 949 +187 191 174 174 207 418 1122 982 1346 247 803 734 519 564 611 567 620 967 935 1017 +177 176 172 161 213 673 1268 740 1266 211 820 624 486 485 618 487 629 955 835 955 +123 119 123 109 162 730 1105 382 922 133 611 356 308 267 445 268 455 695 530 655 +98 93 99 86 194 702 891 129 604 99 430 170 180 166 294 166 314 471 299 411 +41 39 39 36 150 367 398 43 181 41 150 71 71 70 84 70 103 158 72 120 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +9 10 8 8 9 9 12 89 65 68 13 33 13 18 12 16 12 20 38 32 +51 55 44 48 51 53 132 480 406 303 114 220 87 148 75 148 75 181 259 242 +85 91 75 81 87 97 281 537 528 277 243 319 187 238 187 239 189 320 378 376 +91 94 82 85 95 118 297 370 418 158 263 281 204 229 217 229 218 315 331 342 +103 104 94 94 112 184 388 347 455 133 321 301 237 250 264 251 266 371 361 386 +100 99 93 90 114 212 335 225 333 113 285 244 216 216 242 216 245 314 288 314 +81 80 77 74 97 140 171 113 153 86 189 167 163 160 174 160 175 197 182 193 +60 57 59 53 89 189 229 78 168 61 167 114 116 110 139 110 142 176 139 163 +8 8 8 7 10 12 12 9 10 8 17 16 16 16 17 16 17 17 16 17 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 3 4 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 +10 10 9 9 10 10 10 10 10 10 18 18 18 18 18 18 18 18 18 18 +37 38 33 35 37 39 41 43 43 41 71 72 70 71 70 71 70 72 73 73 +40 40 36 37 41 43 45 45 46 43 77 78 76 77 77 77 77 78 78 79 +43 43 38 38 46 75 166 148 195 54 118 109 82 88 93 88 94 139 135 146 +34 34 31 31 36 37 38 37 38 36 66 65 65 65 65 65 65 66 66 66 +55 53 52 49 62 76 85 67 79 57 118 110 109 108 113 108 113 120 116 119 +78 72 85 66 173 606 773 126 526 79 379 155 163 148 262 148 277 416 266 364 +17 15 19 14 42 83 90 21 49 16 53 33 35 32 41 32 44 55 37 47 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 +16 17 15 15 17 17 17 17 17 18 31 31 31 31 31 31 31 31 31 31 +38 39 34 35 38 40 42 44 44 42 73 74 72 73 72 73 72 74 75 75 +111 115 99 104 116 144 437 556 633 209 358 388 263 303 283 304 286 441 468 485 +68 68 63 63 72 82 95 91 98 78 145 143 137 139 140 139 140 149 148 150 +98 97 92 89 112 208 328 222 327 112 280 240 212 212 238 212 240 308 283 309 +76 75 74 68 97 262 376 163 320 82 254 178 164 152 204 153 207 280 230 268 +54 52 53 48 80 174 211 71 155 55 150 101 103 98 125 98 127 159 125 147 +14 13 15 12 50 117 128 17 62 13 54 26 27 25 34 25 39 57 29 45 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 5 4 4 4 5 6 20 16 16 7 11 7 8 6 8 6 8 12 11 +39 43 34 37 39 41 69 167 145 116 72 103 65 82 62 82 62 91 114 109 +70 75 62 66 71 80 154 255 251 153 162 192 140 160 140 160 141 193 216 216 +88 90 78 81 91 113 284 354 400 152 249 267 193 216 205 217 206 298 315 325 +107 108 98 98 116 172 319 290 368 137 295 281 234 244 253 245 255 332 326 344 +105 104 98 95 119 219 344 235 344 119 297 256 227 227 254 227 256 327 301 327 +66 64 63 59 82 182 253 122 218 70 187 140 131 124 155 124 157 203 172 196 +54 52 53 47 79 171 208 71 153 54 148 100 102 97 123 97 126 157 124 145 +26 24 27 22 106 268 294 30 136 25 108 48 49 47 59 47 73 114 50 86 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 1 1 1 1 1 25 17 18 1 7 1 2 1 2 1 3 8 7 +51 57 44 49 51 54 98 267 230 180 105 158 92 122 87 122 87 138 178 169 +62 66 54 58 63 71 141 236 233 140 140 169 120 139 120 139 120 169 192 191 +119 125 108 113 125 158 411 517 584 218 368 395 284 320 302 320 304 442 466 481 +139 140 128 128 150 219 397 363 457 177 383 366 309 321 332 321 334 428 420 442 +97 96 91 88 109 150 199 155 197 109 230 213 201 201 212 201 213 242 232 242 +85 84 80 77 100 148 184 119 165 89 196 172 168 165 180 165 181 205 189 201 +46 44 44 41 57 77 86 55 72 46 100 88 88 86 94 86 94 102 94 99 +16 17 15 16 18 22 22 16 19 17 39 37 37 37 38 37 38 39 37 38 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +36 38 32 35 36 38 42 50 48 46 71 74 70 72 70 72 70 73 76 75 +38 39 34 35 38 40 43 45 44 43 73 74 72 73 72 73 72 74 75 75 +55 56 50 52 57 61 68 70 72 64 112 113 109 110 109 110 109 114 115 116 +62 62 57 57 66 73 83 80 85 70 130 128 124 125 126 125 126 133 132 134 +61 60 57 55 66 77 86 77 85 66 129 125 122 122 125 122 125 132 130 132 +23 23 21 21 24 25 25 24 25 24 44 44 44 44 44 43 44 44 44 44 +25 25 24 23 29 32 33 28 31 26 51 49 49 48 50 48 50 52 50 51 +4 4 3 3 4 4 4 4 4 4 8 7 7 7 7 7 7 8 7 7 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 +7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 +57 61 51 55 58 63 74 86 85 74 119 123 115 119 115 119 116 123 127 127 +61 63 56 58 64 70 81 84 87 74 128 130 124 126 125 126 125 132 133 134 +57 57 52 53 60 66 73 71 74 63 117 116 112 113 114 113 114 119 119 120 +77 76 72 70 86 108 131 110 130 86 174 165 159 159 164 159 165 181 175 181 +62 60 59 55 72 92 107 80 98 65 138 127 124 123 130 123 131 142 134 140 +43 41 41 38 53 70 77 51 65 43 93 83 83 81 88 81 88 95 88 92 +12 12 12 11 16 22 23 13 17 12 25 22 22 22 24 21 24 26 23 24 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +7 8 6 6 7 7 9 90 65 69 9 29 9 13 9 11 9 15 34 28 +75 82 66 73 75 79 216 846 710 530 177 369 128 240 116 238 116 299 439 409 +140 149 124 134 143 158 528 1065 1042 530 437 595 321 429 320 431 324 594 714 710 +165 173 149 157 174 218 861 1134 1295 367 648 715 439 529 483 531 489 827 888 925 +181 185 169 169 202 391 1059 948 1282 245 755 697 489 535 574 537 582 912 886 962 +169 167 163 153 201 650 1259 751 1273 202 787 598 454 456 585 458 595 927 811 930 +141 135 145 124 192 833 1285 470 1088 156 712 422 359 316 517 317 529 813 626 770 +91 82 102 76 211 849 1104 169 759 92 508 187 192 177 335 177 358 563 348 490 +46 46 39 42 162 420 464 45 214 47 160 74 73 75 83 74 104 170 72 128 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +50 56 43 48 50 53 97 269 231 181 103 157 90 120 86 120 86 137 177 168 +99 108 87 96 101 115 277 506 496 279 271 339 222 267 222 268 223 339 392 390 +141 149 128 134 149 189 566 729 825 281 478 519 354 408 380 409 384 586 624 646 +109 111 100 101 119 192 406 370 480 145 340 321 253 268 280 268 283 392 384 410 +84 83 78 76 95 180 291 198 292 96 237 202 176 176 199 176 201 263 241 264 +80 78 76 71 98 209 290 146 253 85 226 174 163 156 191 156 193 245 210 237 +65 62 64 57 93 197 240 87 180 66 179 126 127 121 151 121 154 189 152 176 +22 20 22 19 45 86 94 25 54 21 61 42 43 41 49 41 51 63 45 55 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +11 11 10 10 11 12 12 12 12 12 21 21 21 21 21 21 21 21 21 21 +47 49 40 43 48 53 112 197 193 113 98 123 81 97 80 97 81 123 142 142 +55 56 50 51 57 61 69 71 73 64 112 113 108 110 109 110 109 114 115 116 +51 51 47 47 53 58 63 61 64 56 103 102 100 100 100 100 101 104 104 105 +29 29 26 26 30 31 31 31 31 30 55 55 54 54 55 54 55 55 55 55 +33 33 31 30 36 38 40 37 39 34 66 64 64 63 64 63 64 66 65 66 +39 38 38 35 48 62 68 47 58 40 85 76 77 75 81 75 81 87 81 85 +19 20 17 18 26 39 41 20 28 20 36 30 30 29 33 29 34 37 32 35 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 19 16 17 19 19 20 20 20 20 35 35 35 35 35 35 35 35 35 35 +55 58 49 52 55 60 70 80 79 70 112 116 109 112 109 112 109 116 119 119 +38 39 35 36 39 41 43 43 44 42 74 75 73 74 74 74 74 75 76 76 +54 55 50 50 57 62 69 67 70 60 111 110 107 108 108 107 108 113 112 113 +53 52 49 48 57 63 70 64 69 57 109 106 104 104 106 104 106 111 109 111 +20 20 18 18 21 21 22 21 21 21 38 38 38 38 38 38 38 38 38 38 +24 24 23 22 27 30 32 27 30 25 49 47 47 46 48 46 48 50 48 49 +12 11 11 10 15 20 21 13 16 12 24 21 21 21 23 21 23 24 22 23 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 14 12 12 13 14 14 14 14 14 25 25 25 25 25 25 25 25 25 25 +31 32 28 29 31 32 34 35 35 34 59 60 59 59 59 59 59 60 61 61 +70 71 61 64 72 87 242 311 350 127 194 211 144 166 154 166 156 238 254 263 +83 84 75 76 90 146 331 302 395 108 255 240 182 195 205 195 207 300 293 314 +83 83 77 75 95 246 455 285 462 96 295 232 183 184 226 185 230 343 304 345 +87 85 86 78 112 289 420 193 364 95 293 210 192 181 236 181 239 322 269 310 +69 65 73 60 142 577 756 125 527 71 346 132 134 125 229 125 245 385 240 336 +31 29 31 27 151 419 468 35 214 30 149 55 56 55 69 55 91 161 57 116 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +27 28 23 25 27 28 30 33 32 31 51 53 51 52 51 52 51 52 53 53 +54 57 49 52 55 60 70 80 80 70 112 116 109 112 109 112 109 116 120 119 +75 78 68 71 78 89 111 120 126 96 164 167 155 159 157 159 157 172 175 176 +72 73 67 67 78 90 109 105 114 85 159 157 149 151 152 151 152 164 164 166 +37 37 34 34 39 41 43 41 42 39 72 71 71 71 71 71 71 73 72 73 +23 22 21 21 24 24 25 24 24 23 43 43 43 43 43 43 43 43 43 43 +34 33 33 31 41 50 54 40 48 35 73 67 67 66 70 66 70 74 70 73 +17 18 15 16 23 34 37 18 26 18 34 28 29 28 31 28 31 34 30 32 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +61 66 53 58 61 64 163 632 529 400 132 276 98 180 94 176 94 222 327 304 +121 129 107 116 123 136 449 918 894 462 368 506 270 363 268 365 271 503 608 603 +154 162 139 146 162 201 803 1073 1221 356 595 663 400 487 440 489 446 765 826 859 +166 170 154 154 183 356 1039 944 1275 222 709 657 444 493 528 495 536 868 847 921 +163 162 157 148 193 611 1198 731 1223 196 748 573 432 436 555 438 564 882 777 889 +124 119 125 109 165 669 1042 400 892 137 585 356 302 270 427 271 437 668 520 635 +75 69 80 64 154 630 828 140 580 76 383 147 149 140 254 140 271 426 268 373 +41 39 37 36 149 397 444 42 209 41 152 69 69 69 79 69 99 164 69 123 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 +32 33 29 30 32 34 35 37 36 35 61 62 61 61 61 61 61 62 63 63 +45 45 40 42 46 48 52 53 54 50 88 89 86 87 87 87 87 90 90 90 +43 43 39 39 44 47 50 49 50 46 84 83 82 82 82 82 83 85 84 85 +46 46 43 42 49 54 58 54 57 50 93 91 90 90 91 90 91 95 94 95 +43 42 40 39 47 54 58 50 55 45 88 85 84 83 86 83 86 90 87 89 +42 41 40 37 51 67 75 50 64 43 91 81 81 79 86 79 86 93 86 90 +17 18 15 16 23 34 36 18 26 18 34 28 29 28 31 28 31 34 30 32 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +67 74 59 65 67 71 196 810 674 509 149 337 106 213 102 207 102 267 403 374 +133 142 117 127 135 149 506 1049 1019 527 408 568 297 404 294 407 298 564 685 679 +159 167 143 151 167 208 839 1127 1281 376 620 693 416 508 457 509 463 798 864 898 +176 180 163 164 194 374 1097 1003 1350 238 753 699 473 525 561 527 570 922 900 979 +150 149 143 136 177 534 1041 643 1065 180 658 510 387 392 492 393 501 775 685 781 +126 121 126 111 166 720 1135 429 974 139 619 369 308 274 446 274 456 711 550 676 +80 73 87 68 162 627 824 153 582 82 398 166 168 157 271 157 288 441 285 389 +28 25 28 24 128 356 400 31 186 27 130 50 51 49 62 49 81 141 52 104 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +66 73 58 64 66 70 193 804 668 506 146 333 104 210 100 203 100 263 399 369 +132 141 117 127 134 148 502 1046 1015 526 406 566 295 402 292 405 295 560 682 676 +158 167 143 151 166 207 835 1125 1277 377 617 691 414 506 455 507 461 795 861 894 +175 179 162 163 193 371 1092 1002 1346 237 749 697 471 523 559 526 567 918 897 975 +168 167 162 153 200 630 1245 767 1277 204 776 597 447 454 575 455 585 918 809 925 +138 132 140 121 186 799 1261 480 1083 154 693 415 346 308 500 309 511 796 616 757 +89 81 99 75 191 823 1090 182 767 91 498 185 187 175 326 175 350 556 347 487 +47 46 41 43 175 481 540 47 253 48 177 77 76 77 86 77 112 192 75 143 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +68 76 59 66 68 72 166 617 516 397 146 286 116 194 113 189 113 233 334 312 +86 94 76 83 88 100 219 395 385 227 221 274 186 220 185 221 186 273 314 311 +143 152 130 137 151 192 571 750 843 300 483 529 358 415 383 415 387 594 635 656 +141 145 131 132 156 256 567 528 681 196 473 449 348 371 387 372 390 550 541 577 +138 137 129 125 155 302 507 348 517 158 416 356 307 309 348 309 351 464 427 467 +108 106 104 97 132 266 369 196 327 116 305 242 228 220 261 220 263 329 288 320 +73 70 72 64 102 213 261 100 200 74 200 143 143 138 169 138 172 211 172 198 +26 24 27 22 51 99 108 30 64 25 72 50 51 49 58 49 61 74 54 66 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +13 14 12 12 13 14 14 14 14 14 25 25 25 25 25 25 25 25 25 25 +45 48 41 43 46 49 55 61 60 55 91 94 89 91 89 91 89 94 96 95 +29 29 26 27 29 30 31 31 31 31 55 55 54 55 54 54 54 55 55 55 +60 61 55 56 64 71 80 78 83 68 125 124 120 121 122 121 122 129 128 130 +63 62 59 57 69 81 93 82 92 69 135 131 127 127 130 127 130 139 136 139 +57 55 54 51 65 81 93 73 87 60 124 116 114 113 118 113 119 128 122 126 +40 39 39 36 49 63 70 48 60 41 87 78 79 77 83 77 83 89 83 87 +5 5 5 5 6 6 7 6 6 5 11 10 10 10 10 10 10 11 10 11 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 69 55 61 63 66 182 776 642 490 136 318 98 199 95 191 95 249 381 352 +121 129 107 116 123 135 451 948 917 481 365 512 267 364 263 366 266 505 616 610 +158 168 143 152 167 211 739 993 1119 364 580 645 407 486 441 488 446 732 790 818 +194 200 182 182 218 396 1080 1003 1327 275 790 742 524 575 607 577 615 953 935 1010 +180 179 176 164 220 577 1083 698 1111 226 752 605 480 485 584 487 592 871 782 878 +146 139 153 128 204 731 1135 465 983 166 678 436 375 343 508 343 518 769 613 736 +77 71 82 65 148 599 793 147 564 78 378 154 156 145 255 145 271 420 271 371 +22 18 28 17 84 209 235 32 119 20 102 48 51 46 64 46 73 108 56 87 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +37 41 32 35 37 39 72 221 187 149 68 114 59 84 57 82 57 96 130 123 +100 109 88 97 102 115 378 790 763 404 305 427 225 305 222 307 224 421 514 508 +153 161 138 145 161 199 799 1089 1231 373 590 665 396 486 434 487 440 762 828 859 +170 174 157 158 187 350 1049 973 1300 230 720 674 454 505 537 508 545 883 866 940 +150 149 142 136 175 542 1082 675 1115 179 672 520 388 395 498 396 507 796 705 804 +135 130 137 120 181 768 1221 472 1055 151 673 407 338 303 486 304 497 774 602 737 +80 73 86 68 154 603 798 155 570 82 389 165 167 155 266 155 282 431 283 382 +39 36 37 33 143 390 441 42 211 38 154 68 68 67 80 67 101 167 69 127 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +24 26 20 22 24 25 44 123 104 84 40 64 35 48 34 47 34 55 73 69 +47 50 41 43 48 53 110 197 192 116 99 125 82 99 82 99 82 123 144 142 +61 62 53 56 63 76 174 223 247 107 148 161 116 131 122 131 123 177 189 194 +67 68 60 61 72 108 221 208 263 88 177 170 133 142 146 142 148 205 203 215 +52 52 49 48 56 62 69 63 68 57 107 105 103 103 105 103 105 109 108 110 +89 87 87 80 113 329 498 221 435 97 321 222 197 185 251 185 255 359 295 346 +79 75 78 69 109 225 276 109 213 81 216 156 157 151 184 151 187 228 187 214 +21 18 23 17 49 103 115 26 65 19 67 41 43 40 51 40 54 70 47 61 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +15 16 14 14 15 16 16 17 16 17 29 29 29 29 29 29 29 29 29 29 +34 35 30 32 34 36 38 40 39 38 65 66 65 65 64 65 65 66 67 67 +45 46 41 42 46 49 53 54 55 51 89 90 87 88 88 88 88 91 91 91 +50 51 46 47 53 57 62 61 63 56 101 101 99 99 99 99 100 103 103 104 +52 52 49 48 56 62 69 63 68 57 107 105 103 103 105 103 105 109 108 110 +34 33 31 31 36 39 41 37 39 35 66 65 64 64 65 64 65 67 66 67 +47 46 46 43 58 80 90 58 76 49 104 92 92 89 97 89 98 107 98 104 +9 8 9 8 11 12 13 10 11 9 18 17 17 16 17 16 18 18 17 18 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +18 19 16 17 18 19 20 21 20 20 35 35 35 35 35 35 35 35 36 35 +31 32 28 29 31 32 34 35 35 34 59 60 59 59 59 59 59 60 61 61 +68 71 62 65 71 79 96 104 107 86 146 149 140 143 141 143 141 152 155 156 +74 74 66 67 79 117 235 223 280 97 197 189 151 160 165 160 166 227 224 237 +72 72 68 66 80 98 119 103 119 82 162 155 149 149 154 149 154 168 164 168 +63 62 60 56 77 172 246 125 218 68 178 135 124 119 147 119 149 195 167 189 +43 42 42 38 67 207 269 68 197 44 146 77 77 73 108 73 113 160 114 145 +26 24 26 22 112 318 361 30 171 25 121 46 47 46 59 46 77 132 49 99 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +48 53 41 46 48 50 114 437 362 285 94 194 75 129 73 125 73 155 227 211 +47 49 42 45 47 50 57 63 63 58 94 97 92 94 92 94 92 97 99 99 +76 78 67 70 79 95 202 258 284 131 190 205 155 171 161 171 162 223 236 242 +54 55 50 51 57 63 69 68 71 61 111 111 108 108 109 108 109 114 114 115 +107 107 100 97 121 216 350 250 358 124 303 264 232 233 258 234 260 335 312 337 +78 76 74 69 96 348 546 224 476 84 308 195 165 151 227 151 232 352 279 337 +62 59 60 54 85 187 233 87 179 63 171 119 119 114 143 114 145 181 146 170 +13 12 13 11 34 79 89 16 47 13 42 23 24 23 29 23 32 45 26 37 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +52 56 45 49 52 54 142 627 515 401 105 254 78 159 75 151 75 196 304 280 +97 104 85 93 98 110 369 794 763 408 294 420 214 296 210 298 213 411 507 500 +83 85 73 77 86 104 318 429 478 173 248 277 179 212 192 212 194 311 336 347 +114 116 104 105 123 197 473 448 577 153 375 358 269 290 301 291 305 442 437 466 +120 119 113 109 138 338 634 418 655 143 444 362 289 293 348 294 353 513 464 518 +80 79 77 72 100 308 472 207 413 87 294 199 175 163 226 163 230 330 269 318 +68 65 70 60 110 341 443 115 326 70 255 140 140 132 192 131 199 278 201 253 +18 16 19 15 42 93 104 22 57 17 56 33 35 32 41 32 44 59 37 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 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +10 10 8 9 10 10 23 89 74 58 17 37 13 24 13 23 13 29 44 41 +70 76 62 67 71 80 180 340 328 195 173 221 143 174 142 175 143 218 255 252 +130 137 117 123 136 168 518 701 781 284 432 480 318 373 339 373 343 536 578 596 +165 169 152 154 181 325 980 926 1225 225 685 647 438 488 514 490 521 839 826 894 +168 168 162 153 200 582 1158 742 1202 207 748 591 447 456 562 457 572 881 787 892 +140 135 143 124 188 742 1179 477 1027 158 674 423 355 324 495 324 506 772 610 739 +96 87 106 80 186 777 1037 202 748 98 504 210 210 192 344 192 363 560 367 497 +70 72 56 65 179 472 533 64 262 73 201 105 103 107 112 106 140 216 101 170 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +38 41 32 35 38 40 88 349 288 228 70 150 56 99 54 95 54 118 177 164 +86 93 75 82 87 97 291 612 586 324 243 338 184 245 180 246 182 330 403 398 +82 85 73 77 86 103 265 351 388 158 230 252 177 202 187 203 188 278 298 306 +108 109 98 100 115 146 212 205 240 134 253 248 225 230 233 230 234 272 270 279 +114 113 104 104 124 179 255 198 259 127 269 247 229 230 243 230 245 288 274 289 +80 79 77 72 98 206 292 154 260 86 228 178 165 159 192 159 194 248 215 241 +32 31 31 29 37 43 46 37 42 33 67 63 63 62 65 62 65 68 65 67 +22 20 24 18 51 108 121 28 69 21 71 43 45 42 54 42 57 74 49 64 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +26 27 23 25 26 27 29 33 32 31 50 52 50 51 49 51 49 51 52 52 +52 55 47 50 53 57 66 76 76 67 107 111 105 107 104 107 104 111 114 114 +32 33 29 30 33 34 35 35 35 35 62 62 61 61 61 61 61 62 62 62 +83 84 76 77 89 106 136 132 147 101 187 185 173 176 177 176 178 196 196 200 +82 82 77 75 91 117 147 124 148 93 189 180 171 171 178 171 178 198 192 198 +56 55 54 51 64 78 89 72 84 60 123 115 113 113 117 113 118 126 121 125 +52 51 50 47 64 90 102 64 86 53 115 101 101 98 107 98 108 118 108 115 +28 30 24 27 38 59 64 30 44 30 55 44 45 44 50 44 50 56 47 52 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 From d432a0bacf2e407b1f9ca4076825c7d1790fc65b Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:31:09 -0500 Subject: [PATCH 13/25] Added all tests to verify that any of them are creating the Montreal.cli file --- tests/test_city_merge.py | 108 + tests/test_construction_catalog.py | 73 + tests/test_construction_factory.py | 308 ++ tests/test_costs_catalog.py | 28 + tests/test_custom_insel_block.py | 138 + tests/test_enrichement.py | 161 + tests/test_exports.py | 150 + tests/test_geometry_factory.py | 186 + tests/test_greenery_catalog.py | 37 + tests/test_greenery_in_idf.py | 79 + tests/test_results_import.py | 94 + tests/test_systems_catalog.py | 36 + tests/test_systems_factory.py | 118 + tests/test_usage_catalog.py | 23 + tests/test_usage_factory.py | 184 + tests/tests_data/C40_Final.gml | 3377 +++++++++++++++++ tests/tests_data/FZK_Haus_LoD_2.gml | 240 ++ tests/tests_data/eilat.geojson | 177 + tests/tests_data/kelowna.obj | 81 + tests/tests_data/levis.geojson | 73 + .../one_building_in_kelowna_alkis.gml | 409 ++ tests/tests_data/pluto_building.gml | 420 ++ tests/tests_data/w2w_user_output.csv | 14 + 23 files changed, 6514 insertions(+) create mode 100644 tests/test_city_merge.py create mode 100644 tests/test_construction_catalog.py create mode 100644 tests/test_construction_factory.py create mode 100644 tests/test_costs_catalog.py create mode 100644 tests/test_custom_insel_block.py create mode 100644 tests/test_enrichement.py create mode 100644 tests/test_exports.py create mode 100644 tests/test_geometry_factory.py create mode 100644 tests/test_greenery_catalog.py create mode 100644 tests/test_greenery_in_idf.py create mode 100644 tests/test_results_import.py create mode 100644 tests/test_systems_catalog.py create mode 100644 tests/test_systems_factory.py create mode 100644 tests/test_usage_catalog.py create mode 100644 tests/test_usage_factory.py create mode 100644 tests/tests_data/C40_Final.gml create mode 100644 tests/tests_data/FZK_Haus_LoD_2.gml create mode 100644 tests/tests_data/eilat.geojson create mode 100644 tests/tests_data/kelowna.obj create mode 100644 tests/tests_data/levis.geojson create mode 100644 tests/tests_data/one_building_in_kelowna_alkis.gml create mode 100644 tests/tests_data/pluto_building.gml create mode 100644 tests/tests_data/w2w_user_output.csv diff --git a/tests/test_city_merge.py b/tests/test_city_merge.py new file mode 100644 index 0000000..24bdc80 --- /dev/null +++ b/tests/test_city_merge.py @@ -0,0 +1,108 @@ +""" +TestCityMerge test and validate the merge of several cities into one +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import copy +import distutils.spawn +import subprocess +from pathlib import Path +from unittest import TestCase + +from hub.city_model_structure.city import City +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.results_factory import ResultFactory +from hub.exports.exports_factory import ExportsFactory +import hub.helpers.constants as cte + + +class TestCityMerge(TestCase): + """ + Functional TestCityMerge + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + self._executable = 'sra' + + def test_merge(self): + file_path = Path(self._example_path / 'test.geojson').resolve() + full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city + self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') + odd_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + for building in full_city.buildings: + if int(building.name) % 2 == 0: + even_city.add_city_object(copy.deepcopy(building)) + else: + odd_city.add_city_object(copy.deepcopy(building)) + self.assertEqual(8, len(odd_city.buildings), 'Wrong number of odd buildings') + self.assertEqual(9, len(even_city.buildings), 'Wrong number of par buildings') + merged_city = odd_city.merge(even_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + merged_city = even_city.merge(odd_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + merged_city = full_city.merge(odd_city).merge(even_city) + self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') + + def test_merge_with_radiation(self): + sra = distutils.spawn.find_executable('sra') + file_path = Path(self._example_path / 'test.geojson').resolve() + + full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city + even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) + for building in full_city.buildings: + if int(building.name) % 2 == 0: + even_city.add_city_object(copy.deepcopy(building)) + ExportsFactory('sra', full_city, self._output_path).export() + sra_file = str((self._output_path / f'{full_city.name}_sra.xml').resolve()) + subprocess.run([sra, sra_file], stdout=subprocess.DEVNULL) + ResultFactory('sra', full_city, self._output_path).enrich() + self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') + merged_city = full_city.merge(even_city) + + full_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + full_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + + merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) + + merged_city = even_city.merge(full_city) + merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) + + for building in even_city.buildings: + for surface in building.surfaces: + surface.global_irradiance[cte.YEAR] = [3] + + merged_city = full_city.merge(even_city) + first_merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + first_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + merged_city = even_city.merge(full_city) + second_merged_city_building_total_radiation = 0 + for building in merged_city.buildings: + for surface in building.surfaces: + if surface.global_irradiance: + second_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] + self.assertAlmostEqual(first_merged_city_building_total_radiation, second_merged_city_building_total_radiation, 8) + diff --git a/tests/test_construction_catalog.py b/tests/test_construction_catalog.py new file mode 100644 index 0000000..5c5a0e9 --- /dev/null +++ b/tests/test_construction_catalog.py @@ -0,0 +1,73 @@ +""" +TestConstructionCatalog +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +Contributors Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" + +from unittest import TestCase +from hub.catalog_factories.construction_catalog_factory import ConstructionCatalogFactory + + +class TestConstructionCatalog(TestCase): + + def test_nrel_catalog(self): + catalog = ConstructionCatalogFactory('nrel').catalog + catalog_categories = catalog.names() + constructions = catalog.names('constructions') + windows = catalog.names('windows') + materials = catalog.names('materials') + self.assertEqual(33, len(constructions['constructions'])) + self.assertEqual(5, len(windows['windows'])) + self.assertEqual(33, len(materials['materials'])) + with self.assertRaises(ValueError): + catalog.names('unknown') + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') + + def test_nrcan_catalog(self): + catalog = ConstructionCatalogFactory('nrcan').catalog + catalog_categories = catalog.names() + constructions = catalog.names('constructions') + windows = catalog.names('windows') + materials = catalog.names('materials') + self.assertEqual(540, len(constructions['constructions'])) + self.assertEqual(96, len(windows['windows'])) + self.assertEqual(552, len(materials['materials'])) + with self.assertRaises(ValueError): + catalog.names('unknown') + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') + + def test_eilat_catalog(self): + catalog = ConstructionCatalogFactory('eilat').catalog + catalog_categories = catalog.names() + constructions = catalog.names('constructions') + windows = catalog.names('windows') + materials = catalog.names('materials') + self.assertEqual(9, len(constructions['constructions'])) + self.assertEqual(3, len(windows['windows'])) + self.assertEqual(553, len(materials['materials'])) + with self.assertRaises(ValueError): + catalog.names('unknown') + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') diff --git a/tests/test_construction_factory.py b/tests/test_construction_factory.py new file mode 100644 index 0000000..710894b --- /dev/null +++ b/tests/test_construction_factory.py @@ -0,0 +1,308 @@ +""" +TestConstructionFactory test and validate the city model structure construction parameters +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +from pathlib import Path +from unittest import TestCase + +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.construction_factory import ConstructionFactory +from hub.helpers.dictionaries import Dictionaries + + +class TestConstructionFactory(TestCase): + """ + TestConstructionFactory TestCase + """ + def setUp(self) -> None: + """ + Configure test environment + :return: + """ + self._city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + self.assertIsNotNone(self._city.level_of_detail.geometry, 'wrong construction level of detail') + return self._city + + @staticmethod + def _internal_function(function_format, original_function): + if function_format == 'hft': + new_function = Dictionaries().hft_function_to_hub_function[original_function] + elif function_format == 'pluto': + new_function = Dictionaries().pluto_function_to_hub_function[original_function] + else: + raise Exception('Function key not recognized. Implemented only "hft" and "pluto"') + return new_function + + def test_citygml_function(self): + """ + Test city objects' functions in the city + """ + # case 1: hft + file = 'one_building_in_kelowna.gml' + function_format = 'hft' + city = self._get_citygml(file) + for building in city.buildings: + building.function = self._internal_function(function_format, building.function) + self.assertEqual('residential', building.function, 'format hft') + + # case 2: Pluto + file = 'pluto_building.gml' + function_format = 'pluto' + city = self._get_citygml(file) + for building in city.buildings: + building.function = self._internal_function(function_format, building.function) + self.assertEqual('education', building.function, 'format pluto') + + # case 3: Alkis + file = 'one_building_in_kelowna_alkis.gml' + function_format = 'alkis' + city = self._get_citygml(file) + for building in city.buildings: + self.assertRaises(Exception, lambda: self._internal_function(function_format, building.function)) + + def _check_buildings(self, city): + for building in city.buildings: + self.assertIsNotNone(building.name, 'building name is none') + self.assertIsNotNone(building.type, 'building type is none') + self.assertIsNotNone(building.volume, 'building volume is none') + self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') + self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') + self.assertIsNotNone(building.surfaces, 'building surfaces is none') + self.assertIsNotNone(building.centroid, 'building centroid is none') + self.assertIsNotNone(building.max_height, 'building max_height is none') + self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') + self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') + self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') + self.assertEqual(len(building.beam), 0, 'building beam is calculated') + self.assertIsNotNone(building.lower_corner, 'building lower corner is none') + self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') + self.assertIsNotNone(building.internal_zones, 'no internal zones created') + self.assertIsNotNone(building.grounds, 'building grounds is none') + self.assertIsNotNone(building.walls, 'building walls is none') + self.assertIsNotNone(building.roofs, 'building roofs is none') + self.assertIsNotNone(building.internal_walls, 'building internal walls is none') + self.assertIsNone(building.basement_heated, 'building basement_heated is not none') + self.assertIsNone(building.attic_heated, 'building attic_heated is not none') + self.assertIsNone(building.terrains, 'building terrains is not none') + self.assertIsNotNone(building.year_of_construction, 'building year_of_construction is none') + self.assertIsNotNone(building.function, 'building function is none') + self.assertIsNotNone(building.average_storey_height, 'building average_storey_height is none') + self.assertIsNotNone(building.storeys_above_ground, 'building storeys_above_ground is none') + self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') + self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') + self.assertIsNotNone(building.eave_height, 'building eave height is none') + self.assertIsNotNone(building.roof_type, 'building roof type is none') + self.assertIsNotNone(building.floor_area, 'building floor_area is none') + self.assertIsNone(building.households, 'building households is not none') + self.assertFalse(building.is_conditioned, 'building is conditioned') + self.assertIsNotNone(building.shell, 'building shell is none') + + def _check_thermal_zones(self, internal_zone): + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self.assertIsNotNone(thermal_zone.id, 'thermal_zone id is none') + self.assertIsNotNone(thermal_zone.footprint_area, 'thermal_zone floor area is none') + self.assertTrue(len(thermal_zone.thermal_boundaries) > 0, 'thermal_zone thermal_boundaries not defined') + self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, 'additional_thermal_bridge_u_value is none') + self.assertIsNotNone(thermal_zone.effective_thermal_capacity, 'thermal_zone effective_thermal_capacity is none') + self.assertIsNotNone(thermal_zone.infiltration_rate_system_off, + 'thermal_zone infiltration_rate_system_off is none') + self.assertIsNotNone(thermal_zone.infiltration_rate_system_on, 'thermal_zone infiltration_rate_system_on is none') + self.assertIsNotNone(thermal_zone.volume, 'thermal_zone volume is none') + self.assertIsNone(thermal_zone.ordinate_number, 'thermal_zone ordinate number is not none') + self.assertIsNotNone(thermal_zone.view_factors_matrix, 'thermal_zone view factors matrix is none') + self.assertIsNotNone(thermal_zone.total_floor_area, 'thermal zone total_floor_area is none') + self.assertIsNone(thermal_zone.usage_name, 'thermal_zone usage is not none') + self.assertIsNone(thermal_zone.hours_day, 'thermal_zone hours a day is not none') + self.assertIsNone(thermal_zone.days_year, 'thermal_zone days a year is not none') + self.assertIsNone(thermal_zone.mechanical_air_change, 'thermal_zone mechanical air change is not none') + self.assertIsNone(thermal_zone.occupancy, 'thermal_zone occupancy is not none') + self.assertIsNone(thermal_zone.lighting, 'thermal_zone lighting is not none') + self.assertIsNone(thermal_zone.appliances, 'thermal_zone appliances is not none') + self.assertIsNone(thermal_zone.thermal_control, 'thermal_zone thermal control is not none') + self.assertIsNone(thermal_zone.internal_gains, 'thermal_zone internal gains not returns none') + + def _check_thermal_boundaries(self, thermal_zone): + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.id, 'thermal_boundary id is none') + self.assertIsNotNone(thermal_boundary.parent_surface, 'thermal_boundary surface is none') + self.assertIsNotNone(thermal_boundary.thermal_zones, 'thermal_boundary delimits no thermal zone') + self.assertIsNotNone(thermal_boundary.opaque_area, 'thermal_boundary area is none') + self.assertIsNotNone(thermal_boundary.thickness, 'thermal_boundary thickness is none') + self.assertIsNotNone(thermal_boundary.type, 'thermal_boundary type is none') + self.assertIsNotNone(thermal_boundary.thermal_openings, 'thermal_openings is none') + self.assertIsNotNone(thermal_boundary.window_ratio, 'window_ratio is none') + self.assertIsNone(thermal_boundary.windows_areas, 'windows_areas is not none') + self.assertIsNotNone(thermal_boundary.u_value, 'u_value is none') + self.assertIsNotNone(thermal_boundary.hi, 'hi is none') + self.assertIsNotNone(thermal_boundary.he, 'he is none') + self.assertIsNotNone(thermal_boundary.internal_surface, 'virtual_internal_surface is none') + self.assertIsNotNone(thermal_boundary.layers, 'layers is not none') + + def _check_thermal_openings(self, thermal_boundary): + for thermal_opening in thermal_boundary.thermal_openings: + self.assertIsNotNone(thermal_opening.id, 'thermal opening id is not none') + self.assertIsNotNone(thermal_opening.area, 'thermal opening area is not none') + self.assertIsNotNone(thermal_opening.frame_ratio, 'thermal opening frame_ratio is none') + self.assertIsNotNone(thermal_opening.g_value, 'thermal opening g_value is none') + self.assertIsNotNone(thermal_opening.overall_u_value, 'thermal opening overall_u_value is none') + self.assertIsNotNone(thermal_opening.hi, 'thermal opening hi is none') + self.assertIsNotNone(thermal_opening.he, 'thermal opening he is none') + + def _check_surfaces(self, thermal_boundary): + external_surface = thermal_boundary.external_surface + internal_surface = thermal_boundary.internal_surface + self.assertIsNotNone(external_surface.short_wave_reflectance, + 'external surface short_wave_reflectance id is not none') + self.assertIsNotNone(external_surface.long_wave_emittance, 'external surface long_wave_emittance id is not none') + self.assertIsNotNone(internal_surface.short_wave_reflectance, + 'external surface short_wave_reflectance id is not none') + self.assertIsNotNone(internal_surface.long_wave_emittance, 'external surface long_wave_emittance id is not none') + + def test_city_with_construction_extended_library(self): + """ + Enrich the city with the construction information and verify it + """ + file = 'one_building_in_kelowna.gml' + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 1980 + building.function = self._internal_function('hft', building.function) + ConstructionFactory('nrcan', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + file = 'pluto_building.gml' + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 1980 + building.function = self._internal_function('pluto', building.function) + ConstructionFactory('nrcan', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + file = 'pluto_building.gml' + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 2006 + building.function = self._internal_function('pluto', building.function) + ConstructionFactory('nrel', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + file = 'one_building_in_kelowna.gml' + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 1980 + building.function = self._internal_function('hft', building.function) + ConstructionFactory('nrcan', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + file_path = (self._example_path / 'test.geojson').resolve() + self._city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + ConstructionFactory('nrcan', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + def test_nrcan_construction_factory(self): + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + ConstructionFactory('nrcan', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) + + def test_eilat_construction_factory(self): + file = 'eilat.geojson' + file_path = (self._example_path / file).resolve() + city = GeometryFactory('geojson', + path=file_path, + height_field='heightmax', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().eilat_function_to_hub_function).city + ConstructionFactory('eilat', city).enrich() + + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self._check_thermal_zones(internal_zone) + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_boundaries(thermal_zone) + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.layers, 'layers is none') + self._check_thermal_openings(thermal_boundary) + self._check_surfaces(thermal_boundary) \ No newline at end of file diff --git a/tests/test_costs_catalog.py b/tests/test_costs_catalog.py new file mode 100644 index 0000000..8f87385 --- /dev/null +++ b/tests/test_costs_catalog.py @@ -0,0 +1,28 @@ +""" +TestMontrealCustomCatalog +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Atiya atiya.atiya@mail.concordia.ca +Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" + +from unittest import TestCase +from hub.catalog_factories.costs_catalog_factory import CostsCatalogFactory + + +class TestCostsCatalog(TestCase): + + def test_costs_catalog(self): + catalog = CostsCatalogFactory('montreal_custom').catalog + catalog_categories = catalog.names() + self.assertIsNotNone(catalog, 'catalog is none') + content = catalog.entries() + self.assertTrue(len(content.archetypes) == 2) + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') diff --git a/tests/test_custom_insel_block.py b/tests/test_custom_insel_block.py new file mode 100644 index 0000000..822b74b --- /dev/null +++ b/tests/test_custom_insel_block.py @@ -0,0 +1,138 @@ +""" +TestInselExports test +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +import logging +from pathlib import Path +from unittest import TestCase +import pandas as pd +import hub.helpers.constants as cte +from hub.helpers.monthly_values import MonthlyValues +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.usage_factory import UsageFactory +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.imports.weather_factory import WeatherFactory + + +class TestExports(TestCase): + """ + TestExports class contains the unittest for export functionality + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._complete_city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _set_irradiance_surfaces(self, city): + """ + saves in building surfaces the correspondent irradiance at different time-scales depending on the mode + if building is None, it saves all buildings' surfaces in file, if building is specified, it saves only that + specific building values + :parameter city: city + :return: none + """ + city.level_of_detail.surface_radiation = 2 + path = (self._example_path / "one_building_in_kelowna_sra_SW.out").resolve() + self._results = pd.read_csv(path, sep='\s+', header=0).to_dict(orient='list') + _irradiance = {} + for key in self._results: + header_name = key.split(':') + result = [x / cte.WATTS_HOUR_TO_JULES for x in self._results[key]] + city_object_name = header_name[1] + building = self._city.city_object(city_object_name) + surface_id = header_name[2] + surface = building.surface_by_id(surface_id) + monthly_result = MonthlyValues.get_total_month(result) + yearly_result = [sum(result)] + _irradiance[cte.YEAR] = yearly_result + _irradiance[cte.MONTH] = monthly_result + _irradiance[cte.HOUR] = result + surface.global_irradiance = _irradiance + + def test_insel_monthly_energy_balance_export(self): + """ + export to Insel MonthlyEnergyBalance + """ + city = self._get_citygml('one_building_in_kelowna.gml') + WeatherFactory('epw', city).enrich() + for building in city.buildings: + building.external_temperature[cte.MONTH] = MonthlyValues().\ + get_mean_values(building.external_temperature[cte.HOUR]) + self._set_irradiance_surfaces(city) + + for building in city.buildings: + self.assertIsNotNone(building.external_temperature[cte.MONTH], f'building {building.name} ' + f'external_temperature is none') + for surface in building.surfaces: + if surface.type != 'Ground': + self.assertIsNotNone(surface.global_irradiance[cte.MONTH], f'surface in building {building.name} ' + f'global_irradiance is none') + + for building in city.buildings: + building.year_of_construction = 2006 + if building.function is None: + building.function = 'large office' + building.attic_heated = 0 + building.basement_heated = 0 + ConstructionFactory('nrel', city).enrich() + UsageFactory('comnet', city).enrich() + + # parameters written: + for building in city.buildings: + self.assertIsNotNone(building.volume, f'building {building.name} volume is none') + self.assertIsNotNone(building.average_storey_height, f'building {building.name} average_storey_height is none') + self.assertIsNotNone(building.storeys_above_ground, f'building {building.name} storeys_above_ground is none') + self.assertIsNotNone(building.attic_heated, f'building {building.name} attic_heated is none') + self.assertIsNotNone(building.basement_heated, f'building {building.name} basement_heated is none') + for internal_zone in building.internal_zones: + self.assertIsNotNone(internal_zone.area, f'internal zone {internal_zone.id} area is none') + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self.assertIsNotNone(thermal_zone.indirectly_heated_area_ratio, f'thermal zone {thermal_zone.id} ' + f'indirectly_heated_area_ratio is none') + self.assertIsNotNone(thermal_zone.effective_thermal_capacity, f'thermal zone {thermal_zone.id} ' + f'effective_thermal_capacity is none') + self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, f'thermal zone {thermal_zone.id} ' + f'additional_thermal_bridge_u_value ' + f'is none') + self.assertIsNotNone(thermal_zone.total_floor_area, f'thermal zone {thermal_zone.id} ' + f'total_floor_area is none') + for thermal_boundary in thermal_zone.thermal_boundaries: + self.assertIsNotNone(thermal_boundary.type) + self.assertIsNotNone(thermal_boundary.opaque_area) + if thermal_boundary.type in (cte.WALL, cte.ROOF): + self.assertIsNotNone(thermal_boundary.window_ratio) + self.assertIsNotNone(thermal_boundary.u_value) + self.assertIsNotNone(thermal_boundary.thermal_openings) + if thermal_boundary.type is not cte.GROUND: + self.assertIsNotNone(thermal_boundary.external_surface.short_wave_reflectance) + + for usage in internal_zone.usages: + self.assertIsNotNone(usage.percentage, f'usage zone {usage.name} percentage is none') + self.assertIsNotNone(usage.internal_gains, f'usage zone {usage.name} internal_gains is none') + self.assertIsNotNone(usage.thermal_control, f'usage zone {usage.name} thermal_control is none') + self.assertIsNotNone(usage.hours_day, f'usage zone {usage.name} hours_day is none') + self.assertIsNotNone(usage.days_year, f'usage zone {usage.name} days_year is none') + self.assertIsNotNone( + usage.mechanical_air_change, + f'usage zone {usage.name} mechanical_air_change is none' + ) + # export files + try: + EnergyBuildingsExportsFactory('insel_monthly_energy_balance', city, self._output_path, 'MEB_Montreal').export() + except Exception as err: + logging.exception(err) + self.fail("Insel MonthlyEnergyBalance ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/test_enrichement.py b/tests/test_enrichement.py new file mode 100644 index 0000000..531acd6 --- /dev/null +++ b/tests/test_enrichement.py @@ -0,0 +1,161 @@ +""" +TestGeometryFactory test and validate the city model structure geometric parameters +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +from pathlib import Path +from unittest import TestCase +from hub.imports.geometry_factory import GeometryFactory +from hub.helpers.dictionaries import Dictionaries +from hub.imports.usage_factory import UsageFactory +from hub.imports.construction_factory import ConstructionFactory + + +class TestGeometryFactory(TestCase): + """ + Non-functional TestGeometryFactory + Load testing + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _check_result(self, city): + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self.assertIsNot(len(internal_zone.usages), 0, 'no building usages defined') + for usage in internal_zone.usages: + self.assertIsNotNone(usage.id, 'usage id is none') + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_thermal_zone(thermal_zone) + + def _check_buildings(self, city): + for building in city.buildings: + self.assertIsNotNone(building.internal_zones, 'no internal zones created') + for internal_zone in building.internal_zones: + self.assertIsNotNone(internal_zone.usages, 'usage zones are not defined') + self.assertIsNotNone(internal_zone.thermal_zones_from_internal_zones, 'thermal zones are not defined') + self.assertIsNone(building.basement_heated, 'building basement_heated is not none') + self.assertIsNone(building.attic_heated, 'building attic_heated is not none') + self.assertIsNotNone(building.average_storey_height, 'building average_storey_height is none') + self.assertIsNotNone(building.storeys_above_ground, 'building storeys_above_ground is none') + self.assertTrue(building.is_conditioned, 'building is_conditioned is not conditioned') + + def _check_thermal_zone(self, thermal_zone): + self.assertIsNotNone(thermal_zone.id, 'thermal_zone id is none') + self.assertIsNotNone(thermal_zone.usage_name, 'thermal_zone usage is not none') + self.assertIsNotNone(thermal_zone.hours_day, 'thermal_zone hours a day is none') + self.assertIsNotNone(thermal_zone.days_year, 'thermal_zone days a year is none') + self.assertIsNotNone(thermal_zone.occupancy, 'thermal_zone occupancy is none') + self.assertIsNotNone(thermal_zone.thermal_control, 'thermal_zone thermal control is none') + self.assertIsNotNone(thermal_zone.internal_gains, 'thermal_zone internal gains returns none') + + def _check_extra_thermal_zone(self, thermal_zone): + self.assertIsNotNone(thermal_zone.lighting, 'thermal_zone lighting is none') + self.assertIsNotNone(thermal_zone.appliances, 'thermal_zone appliances is none') + self.assertIsNotNone(thermal_zone.mechanical_air_change, 'thermal_zone mechanical air change is none') + + @staticmethod + def _prepare_case_usage_first(city, input_key, construction_key, usage_key): + if input_key == 'pluto': + for building in city.buildings: + building.function = Dictionaries().pluto_function_to_hub_function[building.function] + elif input_key == 'hft': + for building in city.buildings: + building.function = Dictionaries().hft_function_to_hub_function[building.function] + UsageFactory(usage_key, city).enrich() + ConstructionFactory(construction_key, city).enrich() + + @staticmethod + def _prepare_case_construction_first(city, input_key, construction_key, usage_key): + if input_key == 'pluto': + for building in city.buildings: + building.function = Dictionaries().pluto_function_to_hub_function[building.function] + elif input_key == 'hft': + for building in city.buildings: + building.function = Dictionaries().hft_function_to_hub_function[building.function] + ConstructionFactory(construction_key, city).enrich() + UsageFactory(usage_key, city).enrich() + + def _test_hft(self, file): + _construction_keys = ['nrel'] + _usage_keys = ['comnet'] + for construction_key in _construction_keys: + for usage_key in _usage_keys: + print(construction_key, usage_key) + # construction factory called first + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 2006 + self.assertTrue(len(city.buildings) > 0) + self._prepare_case_construction_first(city, 'hft', construction_key, usage_key) + self._check_result(city) + if usage_key == 'comnet': + for building in city.buildings: + for internal_zone in building.internal_zones: + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_extra_thermal_zone(thermal_zone) + # usage factory called first + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 2006 + self.assertTrue(len(city.buildings) > 0) + self._prepare_case_usage_first(city, 'hft', construction_key, usage_key) + self._check_result(city) + if usage_key == 'comnet': + for building in city.buildings: + for internal_zone in building.internal_zones: + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_extra_thermal_zone(thermal_zone) + + def _test_pluto(self, file): + _construction_keys = ['nrel'] + _usage_keys = ['comnet', 'nrcan'] + for construction_key in _construction_keys: + for usage_key in _usage_keys: + # construction factory called first + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 2006 + self.assertTrue(len(city.buildings) > 0) + self._prepare_case_construction_first(city, 'pluto', construction_key, usage_key) + self._check_result(city) + if usage_key == 'comnet': + for building in city.buildings: + for internal_zone in building.internal_zones: + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_extra_thermal_zone(thermal_zone) + # usage factory called first + city = self._get_citygml(file) + for building in city.buildings: + building.year_of_construction = 2006 + self.assertTrue(len(city.buildings) > 0) + self._prepare_case_usage_first(city, 'pluto', construction_key, usage_key) + self._check_result(city) + if usage_key == 'comnet': + for building in city.buildings: + for internal_zone in building.internal_zones: + for thermal_zone in internal_zone.thermal_zones_from_internal_zones: + self._check_extra_thermal_zone(thermal_zone) + + def test_enrichment(self): + """ + Test enrichment of the city with different orders + :return: None + """ + file_1 = 'one_building_in_kelowna.gml' + self._test_hft(file_1) + file_2 = 'C40_Final.gml' + self._test_hft(file_2) diff --git a/tests/test_exports.py b/tests/test_exports.py new file mode 100644 index 0000000..e719790 --- /dev/null +++ b/tests/test_exports.py @@ -0,0 +1,150 @@ +""" +TestExports test and validate the city export formats +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +import json +import os +from pathlib import Path +from unittest import TestCase + +import hub.helpers.constants as cte +from hub.city_model_structure.city import City +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.exports.exports_factory import ExportsFactory +from hub.helpers.dictionaries import Dictionaries +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.usage_factory import UsageFactory +from hub.imports.weather_factory import WeatherFactory + + +class TestExports(TestCase): + """ + TestExports class contains the unittest for export functionality + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._complete_city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _get_complete_city(self, from_pickle): + if self._complete_city is None: + if from_pickle: + file_path = (self._example_path / 'ConcordiaSWGcampus.pickle').resolve() + self._complete_city = City.load(file_path) + else: + file_path = (self._example_path / 'one_building_in_kelowna.gml').resolve() + self._complete_city = self._get_citygml(file_path) + for building in self._complete_city.buildings: + building.function = Dictionaries().hft_function_to_hub_function[building.function] + building.year_of_construction = 2006 + ConstructionFactory('nrel', self._complete_city).enrich() + UsageFactory('nrcan', self._complete_city).enrich() + cli = (self._example_path / 'weather' / 'inseldb_Summerland.cli').resolve() + self._complete_city.climate_file = Path(cli) + self._complete_city.climate_reference_city = 'Summerland' + dummy_measures = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] + for building in self._complete_city.buildings: + building.heating_demand[cte.MONTH] = dummy_measures + building.cooling_demand[cte.MONTH] = dummy_measures + building.heating_demand[cte.YEAR] = [0.0] + building.cooling_demand[cte.YEAR] = [0.0] + return self._complete_city + + def _export(self, export_type, from_pickle=False): + self._complete_city = self._get_complete_city(from_pickle) + ExportsFactory(export_type, self._complete_city, self._output_path, base_uri='../glb').export() + + def _export_building_energy(self, export_type, from_pickle=False): + self._complete_city = self._get_complete_city(from_pickle) + EnergyBuildingsExportsFactory(export_type, self._complete_city, self._output_path).export() + + def test_obj_export(self): + """ + export to obj + """ + self._export('obj', False) + + def test_cesiumjs_tileset_export(self): + """ + export to cesiumjs tileset + """ + self._export('cesiumjs_tileset', False) + tileset = Path(self._output_path / f'{self._city.name}.json') + self.assertTrue(tileset.exists()) + with open(tileset, 'r') as f: + json_tileset = json.load(f) + self.assertEqual(1, len(json_tileset['root']['children']), "Wrong number of children") + + def test_glb_export(self): + """ + export to glb format + """ + self._export('glb', False) + for building in self._city.buildings: + glb_file = Path(self._output_path / f'{building.name}.glb') + self.assertTrue(glb_file.exists(), f'{building.name} Building glb wasn\'t correctly generated') + + def test_geojson_export(self): + self._export('geojson', False) + geojson_file = Path(self._output_path / f'{self._city.name}.geojson') + self.assertTrue(geojson_file.exists(), f'{geojson_file} doesn\'t exists') + with open(geojson_file, 'r') as f: + geojson = json.load(f) + self.assertEqual(1, len(geojson['features']), 'Wrong number of buildings') + geometry = geojson['features'][0]['geometry'] + self.assertEqual('Polygon', geometry['type'], 'Wrong geometry type') + self.assertEqual(1, len(geometry['coordinates']), 'Wrong polygon structure') + self.assertEqual(11, len(geometry['coordinates'][0]), 'Wrong number of vertices') + os.unlink(geojson_file) # todo: this test need to cover a multipolygon example too + + def test_energy_ade_export(self): + """ + export to energy ADE + """ + self._export_building_energy('energy_ade') + + def test_sra_export(self): + """ + export to SRA + """ + self._export('sra') + + def test_idf_export(self): + """ + export to IDF + """ + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + self.assertIsNotNone(city, 'city is none') + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + ConstructionFactory('nrcan', city).enrich() + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + UsageFactory('nrcan', city).enrich() + WeatherFactory('epw', city).enrich() + print(self._output_path) + try: + EnergyBuildingsExportsFactory('idf', city, self._output_path).export() + except Exception: + self.fail("Idf ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/test_geometry_factory.py b/tests/test_geometry_factory.py new file mode 100644 index 0000000..3b5bd8f --- /dev/null +++ b/tests/test_geometry_factory.py @@ -0,0 +1,186 @@ +""" +TestGeometryFactory test and validate the city model structure geometric parameters +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +from pathlib import Path +from unittest import TestCase + +import hub.exports.exports_factory +from hub.helpers.dictionaries import MontrealFunctionToHubFunction +from hub.helpers.geometry_helper import GeometryHelper +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory + + +class TestGeometryFactory(TestCase): + """ + Non-functional TestGeometryFactory + Load testing + """ + + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + + def _get_city(self, file, file_type, height_field=None, year_of_construction_field=None, function_field=None): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory(file_type, + path=file_path, + height_field=height_field, + year_of_construction_field=year_of_construction_field, + function_field=function_field, + ).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _check_buildings(self, city): + for building in city.buildings: + self.assertIsNotNone(building.name, 'building name is none') + self.assertIsNotNone(building.type, 'building type is none') + self.assertIsNotNone(building.volume, 'building volume is none') + self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') + self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') + self.assertIsNotNone(building.surfaces, 'building surfaces is none') + self.assertIsNotNone(building.max_height, 'building max_height is none') + self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') + self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') + self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') + self.assertEqual(len(building.beam), 0, 'building beam is calculated') + self.assertIsNotNone(building.lower_corner, 'building lower corner is none') + self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') + self.assertIsNotNone(building.internal_zones, 'no internal zones created') + self.assertIsNotNone(building.grounds, 'building grounds is none') + self.assertIsNotNone(building.walls, 'building walls is none') + self.assertIsNotNone(building.roofs, 'building roofs is none') + self.assertIsNotNone(building.internal_zones, 'building internal zones is none') + for internal_zone in building.internal_zones: + self.assertIsNone(internal_zone.usages, 'usage zones are defined') + self.assertIsNone(internal_zone.thermal_archetype, 'thermal archetype is defined') + self.assertIsNone(building.basement_heated, 'building basement_heated is not none') + self.assertIsNone(building.attic_heated, 'building attic_heated is not none') + self.assertIsNone(building.terrains, 'building terrains is not none') + self.assertIsNone(building.average_storey_height, 'building average_storey_height is not none') + self.assertIsNone(building.storeys_above_ground, 'building storeys_above_ground is not none') + self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') + self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') + self.assertIsNotNone(building.eave_height, 'building eave height is none') + self.assertIsNotNone(building.roof_type, 'building roof type is none') + self.assertIsNotNone(building.floor_area, 'building floor_area is none') + self.assertIsNone(building.households, 'building households is not none') + self.assertFalse(building.is_conditioned, 'building is_conditioned is conditioned') + + def _check_surfaces(self, building): + for surface in building.surfaces: + self.assertIsNotNone(surface.name, 'surface name is none') + self.assertIsNotNone(surface.id, 'surface id is none') + self.assertIsNotNone(surface.lower_corner, 'surface envelope_lower_corner is none') + self.assertIsNotNone(surface.upper_corner, 'surface envelope_upper_corner is none') + self.assertIsNotNone(surface.perimeter_area, 'surface area_above_ground is none') + self.assertIsNotNone(surface.azimuth, 'surface azimuth is none') + self.assertIsNotNone(surface.inclination, 'surface inclination is none') + self.assertIsNotNone(surface.type, 'surface type is none') + self.assertEqual(len(surface.global_irradiance), 0, 'global irradiance is calculated') + self.assertIsNotNone(surface.perimeter_polygon, 'surface perimeter_polygon is none') + self.assertIsNone(surface.holes_polygons, 'surface hole_polygons is not none') + self.assertIsNotNone(surface.solid_polygon, 'surface solid_polygon is none') + self.assertIsNone(surface.short_wave_reflectance, 'surface short_wave_reflectance is not none') + self.assertIsNone(surface.long_wave_emittance, 'surface long_wave_emittance is not none') + self.assertIsNotNone(surface.inverse, 'surface inverse is none') + self.assertEqual(len(surface.associated_thermal_boundaries), 0, 'associated_thermal_boundaries are assigned') + self.assertIsNone(surface.vegetation, 'surface vegetation is not none') + + # citygml_classes + def test_import_citygml(self): + """ + Test city objects in the city + :return: None + """ + file = 'FZK_Haus_LoD_2.gml' + city = self._get_city(file, 'citygml') + self.assertTrue(len(city.buildings) == 1) + self._check_buildings(city) + for building in city.buildings: + self._check_surfaces(building) + city = ConstructionFactory('nrel', city).enrich() + + def test_import_obj(self): + """ + Test obj import + """ + file = 'kelowna.obj' + city = self._get_city(file, 'obj') + self.assertTrue(len(city.buildings) == 1) + self._check_buildings(city) + for building in city.buildings: + self._check_surfaces(building) + + def test_import_geojson(self): + """ + Test geojson import + """ + file = Path(self._example_path / 'test.geojson').resolve() + city = GeometryFactory('geojson', + path=file, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + aliases_field=['ID_UEV', 'CIVIQUE_DE', 'NOM_RUE'], + function_field='CODE_UTILI', + function_to_hub=MontrealFunctionToHubFunction().dictionary).city + hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() + for building in city.building_alias('01002777'): + self.assertEqual('1', building.name, 'Wrong building name when looking for alias') + self.assertEqual(8, len(city.building_alias('rue Sherbrooke Ouest (MTL+MTO+WMT)'))) + self.assertEqual(17, len(city.buildings), 'wrong number of buildings') + + self.assertIsNotNone(city.city_object('15'), 'Building name 15 is missing in the city') + city.remove_city_object(city.city_object('15')) + self.assertIsNone(city.city_object('15'), 'Building name 15 wasn\'t removed') + for building in city.buildings: + _building = city.city_object(building.name) + self.assertEqual(_building.name, building.name, 'hash map it\'s unsync') + + def test_map_neighbours(self): + """ + Test neighbours map creation + """ + file = 'test.geojson' + + city = self._get_city(file, 'geojson', + year_of_construction_field='ANNEE_CONS', + function_field='LIBELLE_UT') + info_lod0 = GeometryHelper.city_mapping(city, plot=False) + city = self._get_city(file, 'geojson', + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='LIBELLE_UT') + info_lod1 = GeometryHelper.city_mapping(city, plot=False) + hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() + self.assertEqual(info_lod0, info_lod1) + self.assertEqual(2, len(city.city_object('1').neighbours)) + self.assertEqual(3, len(city.city_object('2').neighbours)) + self.assertEqual(2, len(city.city_object('3').neighbours)) + self.assertEqual(2, len(city.city_object('4').neighbours)) + self.assertEqual(3, len(city.city_object('5').neighbours)) + self.assertEqual(3, len(city.city_object('6').neighbours)) + self.assertEqual(1, len(city.city_object('8').neighbours)) + self.assertEqual(2, len(city.city_object('9').neighbours)) + self.assertEqual(2, len(city.city_object('10').neighbours)) + self.assertEqual(2, len(city.city_object('11').neighbours)) + self.assertEqual(2, len(city.city_object('12').neighbours)) + self.assertEqual(1, len(city.city_object('13').neighbours)) + self.assertEqual(2, len(city.city_object('14').neighbours)) + self.assertEqual(1, len(city.city_object('15').neighbours)) + self.assertEqual(1, len(city.city_object('16').neighbours)) + self.assertEqual(2, len(city.city_object('67').neighbours)) + self.assertEqual(1, len(city.city_object('68').neighbours)) + + self.assertEqual('12', city.city_object('8').neighbours[0].name) + self.assertEqual('14', city.city_object('13').neighbours[0].name) + self.assertEqual('14', city.city_object('15').neighbours[0].name) diff --git a/tests/test_greenery_catalog.py b/tests/test_greenery_catalog.py new file mode 100644 index 0000000..291aeb1 --- /dev/null +++ b/tests/test_greenery_catalog.py @@ -0,0 +1,37 @@ +""" +Test greenery factory test and validate the greenery construction +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +""" + +from unittest import TestCase + +from hub.catalog_factories.greenery_catalog_factory import GreeneryCatalogFactory + + +class TestGreeneryCatalog(TestCase): + def test_catalog(self): + catalog = GreeneryCatalogFactory('nrel').catalog + catalog_categories = catalog.names() + vegetations = catalog.names('vegetations') + plants = catalog.names('plants') + soils = catalog.names('soils') + self.assertTrue(len(catalog_categories) == 3) + self.assertTrue(len(vegetations['vegetations']) == 4) + self.assertTrue(len(plants['plants']) == 14) + self.assertTrue(len(soils['soils']) == 6) + with self.assertRaises(ValueError): + catalog.names('unknown') + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') + + self.assertTrue(len(catalog.entries().vegetations) == 4) + self.assertTrue(len(catalog.entries().plants) == 14) + self.assertTrue(len(catalog.entries().soils) == 6) diff --git a/tests/test_greenery_in_idf.py b/tests/test_greenery_in_idf.py new file mode 100644 index 0000000..857b96c --- /dev/null +++ b/tests/test_greenery_in_idf.py @@ -0,0 +1,79 @@ +""" +Greenery in idf test +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +from pathlib import Path +from unittest import TestCase + +import hub.helpers.constants as cte +from hub.city_model_structure.greenery.plant import Plant +from hub.city_model_structure.greenery.soil import Soil +from hub.city_model_structure.greenery.vegetation import Vegetation +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.usage_factory import UsageFactory +from hub.imports.weather_factory import WeatherFactory + + +class GreeneryInIdf(TestCase): + """ + GreeneryInIdf TestCase 1 + """ + def test_greenery_in_idf(self): + + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + output_path = (Path(__file__).parent / 'tests_outputs').resolve() + city_file = (self._example_path / "one_building_in_kelowna.gml").resolve() + city = GeometryFactory('citygml', path=city_file).city + for building in city.buildings: + building.year_of_construction = 2006 + ConstructionFactory('nrel', city).enrich() + UsageFactory('comnet', city).enrich() + WeatherFactory('epw', city).enrich() + vegetation_name = 'BaseEco' + soil_thickness = 0.18 + soil_name = 'EcoRoofSoil' + roughness = 'MediumSmooth' + dry_conductivity = 0.4 + dry_density = 641 + dry_specific_heat = 1100 + thermal_absorptance = 0.95 + solar_absorptance = 0.8 + visible_absorptance = 0.7 + saturation_volumetric_moisture_content = 0.4 + residual_volumetric_moisture_content = 0.01 + soil = Soil(soil_name, roughness, dry_conductivity, dry_density, dry_specific_heat, thermal_absorptance, + solar_absorptance, visible_absorptance, saturation_volumetric_moisture_content, + residual_volumetric_moisture_content) + soil.initial_volumetric_moisture_content = 0.2 + plant_name = 'plant' + height = 0.5 + leaf_area_index = 5 + leaf_reflectivity = 0.2 + leaf_emissivity = 0.95 + minimal_stomatal_resistance = 180 + co2_sequestration = 0 + grows_on_soils = [soil] + plant = Plant(plant_name, height, leaf_area_index, leaf_reflectivity, leaf_emissivity, minimal_stomatal_resistance, + co2_sequestration, grows_on_soils) + plant.percentage = 1 + plants = [plant] + vegetation = Vegetation(vegetation_name, soil, soil_thickness, plants) + for building in city.buildings: + for surface in building.surfaces: + if surface.type == cte.ROOF: + surface.vegetation = vegetation + + _idf = EnergyBuildingsExportsFactory('idf', city, output_path).export() + self.assertIsNotNone(_idf) + city = GeometryFactory('citygml', path=city_file).city + for building in city.buildings: + building.year_of_construction = 2006 + ConstructionFactory('nrel', city).enrich() + UsageFactory('comnet', city).enrich() + WeatherFactory('epw', city).enrich() + _idf = EnergyBuildingsExportsFactory('idf', city, output_path).export() + self.assertIsNotNone(_idf) diff --git a/tests/test_results_import.py b/tests/test_results_import.py new file mode 100644 index 0000000..76be587 --- /dev/null +++ b/tests/test_results_import.py @@ -0,0 +1,94 @@ +""" +TestExports test and validate the city export formats +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +""" + +import subprocess +from pathlib import Path +from unittest import TestCase + +import hub.helpers.constants as cte +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.exports.exports_factory import ExportsFactory +from hub.helpers.dictionaries import Dictionaries +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.results_factory import ResultFactory +from hub.imports.usage_factory import UsageFactory + + +class TestResultsImport(TestCase): + """ + TestImports class contains the unittest for import functionality + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + ConstructionFactory('nrcan', self._city).enrich() + UsageFactory('comnet', self._city).enrich() + + def test_sra_import(self): + ExportsFactory('sra', self._city, self._output_path).export() + sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() + subprocess.run(['sra', str(sra_path)]) + ResultFactory('sra', self._city, self._output_path).enrich() + # Check that all the buildings have radiance in the surfaces + for building in self._city.buildings: + for surface in building.surfaces: + self.assertIsNotNone(surface.global_irradiance) + + def test_meb_import(self): + ExportsFactory('sra', self._city, self._output_path).export() + sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() + subprocess.run(['sra', str(sra_path)]) + ResultFactory('sra', self._city, self._output_path).enrich() + EnergyBuildingsExportsFactory('insel_monthly_energy_balance', self._city, self._output_path).export() + for building in self._city.buildings: + insel_path = (self._output_path / f'{building.name}.insel') + subprocess.run(['insel', str(insel_path)]) + ResultFactory('insel_monthly_energy_balance', self._city, self._output_path).enrich() + # Check that all the buildings have heating and cooling values + for building in self._city.buildings: + self.assertIsNotNone(building.heating_demand[cte.MONTH]) + self.assertIsNotNone(building.cooling_demand[cte.MONTH]) + self.assertIsNotNone(building.heating_demand[cte.YEAR]) + self.assertIsNotNone(building.cooling_demand[cte.YEAR]) + self.assertIsNotNone(building.lighting_peak_load[cte.MONTH]) + self.assertIsNotNone(building.lighting_peak_load[cte.YEAR]) + self.assertIsNotNone(building.appliances_peak_load[cte.MONTH]) + self.assertIsNotNone(building.appliances_peak_load[cte.YEAR]) + + def test_peak_loads(self): + # todo: this is not technically a import + ExportsFactory('sra', self._city, self._output_path).export() + sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() + subprocess.run(['sra', str(sra_path)]) + ResultFactory('sra', self._city, self._output_path).enrich() + for building in self._city.buildings: + self.assertIsNotNone(building.heating_peak_load) + self.assertIsNotNone(building.cooling_peak_load) + + values = [0 for _ in range(8760)] + values[0] = 1000 + expected_monthly_list = [0 for _ in range(12)] + expected_monthly_list[0] = 1000 + for building in self._city.buildings: + building.heating_demand[cte.HOUR] = values + building.cooling_demand[cte.HOUR] = values + self.assertIsNotNone(building.heating_peak_load) + self.assertIsNotNone(building.cooling_peak_load) diff --git a/tests/test_systems_catalog.py b/tests/test_systems_catalog.py new file mode 100644 index 0000000..48af728 --- /dev/null +++ b/tests/test_systems_catalog.py @@ -0,0 +1,36 @@ +""" +TestSystemsCatalog +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" + +from unittest import TestCase +from hub.catalog_factories.energy_systems_catalog_factory import EnergySystemsCatalogFactory + + +class TestSystemsCatalog(TestCase): + + def test_montreal_custom_catalog(self): + catalog = EnergySystemsCatalogFactory('montreal_custom').catalog + catalog_categories = catalog.names() + archetypes = catalog.names('archetypes') + self.assertEqual(23, len(archetypes['archetypes'])) + systems = catalog.names('systems') + self.assertEqual(18, len(systems['systems'])) + generation_equipments = catalog.names('generation_equipments') + self.assertEqual(7, len(generation_equipments['generation_equipments'])) + distribution_equipments = catalog.names('distribution_equipments') + self.assertEqual(8, len(distribution_equipments['distribution_equipments'])) + emission_equipments = catalog.names('emission_equipments') + self.assertEqual(3, len(emission_equipments['emission_equipments'])) + with self.assertRaises(ValueError): + catalog.names('unknown') + + # retrieving all the entries should not raise any exceptions + for category in catalog_categories: + for value in catalog_categories[category]: + catalog.get_entry(value) + + with self.assertRaises(IndexError): + catalog.get_entry('unknown') diff --git a/tests/test_systems_factory.py b/tests/test_systems_factory.py new file mode 100644 index 0000000..8d19104 --- /dev/null +++ b/tests/test_systems_factory.py @@ -0,0 +1,118 @@ +""" +TestSystemsFactory +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2023 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" + +import subprocess +from pathlib import Path +from unittest import TestCase +import copy + +import hub.helpers.constants as cte +from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory +from hub.exports.exports_factory import ExportsFactory +from hub.helpers.dictionaries import Dictionaries +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.weather_factory import WeatherFactory +from hub.imports.results_factory import ResultFactory +from hub.imports.usage_factory import UsageFactory +from hub.imports.energy_systems_factory import EnergySystemsFactory +from hub.city_model_structure.energy_systems.energy_system import EnergySystem +from hub.city_model_structure.energy_systems.generation_system import GenerationSystem +from hub.city_model_structure.energy_systems.distribution_system import DistributionSystem +from hub.city_model_structure.energy_systems.emission_system import EmissionSystem + + +class TestSystemsFactory(TestCase): + """ + TestSystemsFactory TestCase + """ + def setUp(self) -> None: + """ + Test setup + :return: None + """ + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + def test_montreal_custom_system_factory(self): + """ + Enrich the city with the construction information and verify it + """ + for building in self._city.buildings: + building.energy_systems_archetype_name = 'system 1 gas' + + EnergySystemsFactory('montreal_custom', self._city).enrich() + self.assertEqual(17, len(self._city.energy_systems_connection_table)) + + def test_montreal_custom_system_results(self): + """ + Enrich the city with the construction information and verify it + """ + ConstructionFactory('nrcan', self._city).enrich() + UsageFactory('nrcan', self._city).enrich() + WeatherFactory('epw', self._city).enrich() + ExportsFactory('sra', self._city, self._output_path).export() + sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() + subprocess.run(['sra', str(sra_path)]) + ResultFactory('sra', self._city, self._output_path).enrich() + EnergyBuildingsExportsFactory('insel_monthly_energy_balance', self._city, self._output_path).export() + for building in self._city.buildings: + insel_path = (self._output_path / f'{building.name}.insel') + subprocess.run(['insel', str(insel_path)]) + ResultFactory('insel_monthly_energy_balance', self._city, self._output_path).enrich() + + for building in self._city.buildings: + building.energy_systems_archetype_name = 'system 1 gas pv' + EnergySystemsFactory('montreal_custom', self._city).enrich() + # Need to assign energy systems to buildings: + energy_systems_connection = self._city.energy_systems_connection_table + for building in self._city.buildings: + _building_energy_systems = [] + energy_systems = energy_systems_connection['Energy System Type'][ + energy_systems_connection['Building'] == building.name] + for energy_system in energy_systems: + _generic_building_energy_systems = self._city.generic_energy_systems[energy_system] + for _generic_building_energy_system in _generic_building_energy_systems: + _building_energy_equipment = EnergySystem() + _building_energy_equipment.demand_types = _generic_building_energy_system.demand_types + + _building_distribution_system = DistributionSystem() + _building_distribution_system.generic_distribution_system = ( + copy.deepcopy(_generic_building_energy_system.distribution_system) + ) + _building_emission_system = EmissionSystem() + _building_emission_system.generic_emission_system = ( + copy.deepcopy(_generic_building_energy_system.emission_system) + ) + _building_generation_system = GenerationSystem() + _building_generation_system.generic_generation_system = ( + copy.deepcopy(_generic_building_energy_system.generation_system) + ) + if cte.HEATING in _building_energy_equipment.demand_types: + _building_generation_system.heat_power = building.heating_peak_load[cte.YEAR][0] + if cte.COOLING in _building_energy_equipment.demand_types: + _building_generation_system.cooling_power = building.cooling_peak_load[cte.YEAR][0] + _building_energy_equipment.generation_system = _building_generation_system + _building_energy_equipment.distribution_system = _building_distribution_system + _building_energy_equipment.emission_system = _building_emission_system + + _building_energy_systems.append(_building_energy_equipment) + building.energy_systems = _building_energy_systems + + for building in self._city.buildings: + self.assertLess(0, building.heating_consumption[cte.YEAR][0]) + self.assertLess(0, building.cooling_consumption[cte.YEAR][0]) + self.assertLess(0, building.domestic_hot_water_consumption[cte.YEAR][0]) + self.assertLess(0, building.onsite_electrical_production[cte.YEAR][0]) diff --git a/tests/test_usage_catalog.py b/tests/test_usage_catalog.py new file mode 100644 index 0000000..2d92737 --- /dev/null +++ b/tests/test_usage_catalog.py @@ -0,0 +1,23 @@ +""" +TestUsageCatalog +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca +""" + +from unittest import TestCase +from hub.catalog_factories.usage_catalog_factory import UsageCatalogFactory + + +class TestConstructionCatalog(TestCase): + def test_comnet_catalog(self): + catalog = UsageCatalogFactory('comnet').catalog + self.assertIsNotNone(catalog, 'catalog is none') + content = catalog.entries() + self.assertEqual(32, len(content.usages), 'Wrong number of usages') + + def test_nrcan_catalog(self): + catalog = UsageCatalogFactory('nrcan').catalog + self.assertIsNotNone(catalog, 'catalog is none') + content = catalog.entries() + self.assertEqual(34, len(content.usages), 'Wrong number of usages') diff --git a/tests/test_usage_factory.py b/tests/test_usage_factory.py new file mode 100644 index 0000000..6b6d821 --- /dev/null +++ b/tests/test_usage_factory.py @@ -0,0 +1,184 @@ +""" +TestUsageFactory test and validate the city model structure usage parameters +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca +""" +from pathlib import Path +from unittest import TestCase + +from hub.imports.geometry_factory import GeometryFactory +from hub.imports.construction_factory import ConstructionFactory +from hub.imports.usage_factory import UsageFactory +from hub.helpers.dictionaries import Dictionaries + + +class TestUsageFactory(TestCase): + """ + TestUsageFactory TestCase + """ + def setUp(self) -> None: + """ + Configure test environment + :return: + """ + self._city = None + self._example_path = (Path(__file__).parent / 'tests_data').resolve() + + def _get_citygml(self, file): + file_path = (self._example_path / file).resolve() + self._city = GeometryFactory('citygml', path=file_path).city + self.assertIsNotNone(self._city, 'city is none') + return self._city + + def _check_buildings(self, city): + for building in city.buildings: + self.assertIsNotNone(building.name, 'building name is none') + self.assertIsNotNone(building.type, 'building type is none') + self.assertIsNotNone(building.volume, 'building volume is none') + self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') + self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') + self.assertIsNotNone(building.surfaces, 'building surfaces is none') + self.assertIsNotNone(building.centroid, 'building centroid is none') + self.assertIsNotNone(building.max_height, 'building max_height is none') + self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') + self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') + self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') + self.assertEqual(len(building.beam), 0, 'building beam is calculated') + self.assertIsNotNone(building.lower_corner, 'building lower corner is none') + self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') + self.assertIsNotNone(building.internal_zones, 'no internal zones created') + self.assertIsNotNone(building.grounds, 'building grounds is none') + self.assertIsNotNone(building.walls, 'building walls is none') + self.assertIsNotNone(building.roofs, 'building roofs is none') + for internal_zone in building.internal_zones: + if internal_zone.usages is not None: + self.assertTrue(len(internal_zone.usages) > 0, 'usage zones are not defined') + self.assertIsNone(building.basement_heated, 'building basement_heated is not none') + self.assertIsNone(building.attic_heated, 'building attic_heated is not none') + self.assertIsNone(building.terrains, 'building terrains is not none') + self.assertIsNotNone(building.year_of_construction, 'building year_of_construction is none') + self.assertIsNotNone(building.function, 'building function is none') + self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') + self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') + self.assertIsNotNone(building.eave_height, 'building eave height is none') + self.assertIsNotNone(building.roof_type, 'building roof type is none') + self.assertIsNotNone(building.floor_area, 'building floor_area is none') + + def _check_usage(self, usage): + self.assertIsNotNone(usage.name, 'usage is none') + self.assertIsNotNone(usage.percentage, 'usage percentage is none') + self.assertIsNotNone(usage.hours_day, 'hours per day is none') + self.assertIsNotNone(usage.days_year, 'days per year is none') + self.assertIsNotNone(usage.thermal_control, 'thermal control is none') + self.assertIsNotNone(usage.thermal_control.mean_heating_set_point, 'control heating set point is none') + self.assertIsNotNone(usage.thermal_control.heating_set_back, 'control heating set back is none') + self.assertIsNotNone(usage.thermal_control.mean_cooling_set_point, 'control cooling set point is none') + + def test_import_comnet(self): + """ + Enrich the city with the usage information from comnet and verify it + """ + file = 'pluto_building.gml' + city = self._get_citygml(file) + for building in city.buildings: + building.function = Dictionaries().pluto_function_to_hub_function[building.function] + + UsageFactory('comnet', city).enrich() + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + self.assertIsNot(len(internal_zone.usages), 0, 'no building usage defined') + for usage in internal_zone.usages: + self._check_usage(usage) + self.assertIsNotNone(usage.mechanical_air_change, 'mechanical air change is none') + self.assertIsNotNone(usage.thermal_control.heating_set_point_schedules, + 'control heating set point schedule is none') + self.assertIsNotNone(usage.thermal_control.cooling_set_point_schedules, + 'control cooling set point schedule is none') + self.assertIsNotNone(usage.occupancy, 'occupancy is none') + occupancy = usage.occupancy + self.assertIsNotNone(occupancy.occupancy_density, 'occupancy density is none') + self.assertIsNotNone(occupancy.latent_internal_gain, 'occupancy latent internal gain is none') + self.assertIsNotNone(occupancy.sensible_convective_internal_gain, + 'occupancy sensible convective internal gain is none') + self.assertIsNotNone(occupancy.sensible_radiative_internal_gain, + 'occupancy sensible radiant internal gain is none') + self.assertIsNotNone(occupancy.occupancy_schedules, 'occupancy schedule is none') + self.assertIsNotNone(usage.lighting, 'lighting is none') + lighting = usage.lighting + self.assertIsNotNone(lighting.density, 'lighting density is none') + self.assertIsNotNone(lighting.latent_fraction, 'lighting latent fraction is none') + self.assertIsNotNone(lighting.convective_fraction, 'lighting convective fraction is none') + self.assertIsNotNone(lighting.radiative_fraction, 'lighting radiant fraction is none') + self.assertIsNotNone(lighting.schedules, 'lighting schedule is none') + self.assertIsNotNone(usage.appliances, 'appliances is none') + appliances = usage.appliances + self.assertIsNotNone(appliances.density, 'appliances density is none') + self.assertIsNotNone(appliances.latent_fraction, 'appliances latent fraction is none') + self.assertIsNotNone(appliances.convective_fraction, 'appliances convective fraction is none') + self.assertIsNotNone(appliances.radiative_fraction, 'appliances radiant fraction is none') + self.assertIsNotNone(appliances.schedules, 'appliances schedule is none') + self.assertIsNotNone(usage.thermal_control.hvac_availability_schedules, + 'control hvac availability is none') + self.assertIsNotNone(usage.domestic_hot_water.density, 'domestic hot water density is none') + self.assertIsNotNone(usage.domestic_hot_water.service_temperature, + 'domestic hot water service temperature is none') + self.assertIsNotNone(usage.domestic_hot_water.schedules, 'domestic hot water schedules is none') + + def test_import_nrcan(self): + """ + Enrich the city with the usage information from nrcan and verify it + """ + file = 'test.geojson' + file_path = (self._example_path / file).resolve() + city = GeometryFactory('geojson', + path=file_path, + height_field='citygml_me', + year_of_construction_field='ANNEE_CONS', + function_field='CODE_UTILI', + function_to_hub=Dictionaries().montreal_function_to_hub_function).city + + ConstructionFactory('nrcan', city).enrich() + UsageFactory('nrcan', city).enrich() + self._check_buildings(city) + for building in city.buildings: + for internal_zone in building.internal_zones: + if internal_zone.usages is not None: + self.assertIsNot(len(internal_zone.usages), 0, 'no building usage defined') + for usage in internal_zone.usages: + self._check_usage(usage) + self.assertIsNotNone(usage.mechanical_air_change, 'mechanical air change is none') + self.assertIsNotNone(usage.thermal_control.heating_set_point_schedules, + 'control heating set point schedule is none') + self.assertIsNotNone(usage.thermal_control.cooling_set_point_schedules, + 'control cooling set point schedule is none') + self.assertIsNotNone(usage.occupancy, 'occupancy is none') + occupancy = usage.occupancy + self.assertIsNotNone(occupancy.occupancy_density, 'occupancy density is none') + self.assertIsNotNone(occupancy.latent_internal_gain, 'occupancy latent internal gain is none') + self.assertIsNotNone(occupancy.sensible_convective_internal_gain, + 'occupancy sensible convective internal gain is none') + self.assertIsNotNone(occupancy.sensible_radiative_internal_gain, + 'occupancy sensible radiant internal gain is none') + self.assertIsNotNone(occupancy.occupancy_schedules, 'occupancy schedule is none') + self.assertIsNotNone(usage.lighting, 'lighting is none') + lighting = usage.lighting + self.assertIsNotNone(lighting.density, 'lighting density is none') + self.assertIsNotNone(lighting.latent_fraction, 'lighting latent fraction is none') + self.assertIsNotNone(lighting.convective_fraction, 'lighting convective fraction is none') + self.assertIsNotNone(lighting.radiative_fraction, 'lighting radiant fraction is none') + self.assertIsNotNone(lighting.schedules, 'lighting schedule is none') + self.assertIsNotNone(usage.appliances, 'appliances is none') + appliances = usage.appliances + self.assertIsNotNone(appliances.density, 'appliances density is none') + self.assertIsNotNone(appliances.latent_fraction, 'appliances latent fraction is none') + self.assertIsNotNone(appliances.convective_fraction, 'appliances convective fraction is none') + self.assertIsNotNone(appliances.radiative_fraction, 'appliances radiant fraction is none') + self.assertIsNotNone(appliances.schedules, 'appliances schedule is none') + self.assertIsNotNone(usage.thermal_control.hvac_availability_schedules, + 'control hvac availability is none') + self.assertIsNotNone(usage.domestic_hot_water.peak_flow, 'domestic hot water peak flow is none') + self.assertIsNotNone(usage.domestic_hot_water.service_temperature, + 'domestic hot water service temperature is none') + self.assertIsNotNone(usage.domestic_hot_water.schedules, 'domestic hot water schedules is none') diff --git a/tests/tests_data/C40_Final.gml b/tests/tests_data/C40_Final.gml new file mode 100644 index 0000000..34126bd --- /dev/null +++ b/tests/tests_data/C40_Final.gml @@ -0,0 +1,3377 @@ + + + + +610610.7547462888 5035770.347264212 566.5784301757819 +610818.6731258357 5035968.504367453 598.217651367188 + + + + + + +residential +1996 +12.822875976562045 +2 +4.5 + + + + + + + + +610731.736095011 5035823.038792845 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610731.736095011 5035823.038792845 566.5784301757819 610731.736095011 5035823.038792845 579.401306152344 + + + + + + + + +610710.8787736718 5035807.662177984 579.401306152344 610710.8787736718 5035807.662177984 566.5784301757819 610731.736095011 5035823.038792845 566.5784301757819 610710.8787736718 5035807.662177984 579.401306152344 + + + + + + + + +610731.736095011 5035823.038792845 579.401306152344 610685.9119691952 5035884.728175624 566.5784301757819 610685.9119691952 5035884.728175624 579.401306152344 610731.736095011 5035823.038792845 579.401306152344 + + + + + + + + +610731.736095011 5035823.038792845 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 610731.736095011 5035823.038792845 579.401306152344 610731.736095011 5035823.038792845 566.5784301757819 + + + + + + + + +610731.736095011 5035823.038792845 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 610731.736095011 5035823.038792845 566.5784301757819 + + + + + + + + +610685.9119691952 5035884.728175624 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 + + + + + + + + +610685.9119691952 5035884.728175624 579.401306152344 610665.0659159254 5035869.341116842 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 + + + + + + + + +610731.736095011 5035823.038792845 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610731.736095011 5035823.038792845 579.401306152344 + + + + + + + + +610710.8787736718 5035807.662177984 566.5784301757819 610710.8787736718 5035807.662177984 579.401306152344 610665.0659159254 5035869.341116842 579.401306152344 610710.8787736718 5035807.662177984 566.5784301757819 + + + + + + + + +610710.8787736718 5035807.662177984 566.5784301757819 610665.0659159254 5035869.341116842 579.401306152344 610665.0659159254 5035869.341116842 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 + + + + + + + + +610665.0659159254 5035869.341116842 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 610665.0659159254 5035869.341116842 566.5784301757819 610665.0659159254 5035869.341116842 579.401306152344 + + + + + + + + +610685.9119691952 5035884.728175624 579.401306152344 610685.9119691952 5035884.728175624 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610685.9119691952 5035884.728175624 579.401306152344 + + + + + + + + + + + + +residential +1996 +17.09716796875 +2 +6 + + + + + + + + +610703.3889290215 5035897.594541908 583.6755981445319 610684.1980603877 5035923.445129678 566.5784301757819 610684.1980603877 5035923.445129678 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 + + + + + + + + +610703.3889290215 5035897.594541908 566.5784301757819 610684.1980603877 5035923.445129678 566.5784301757819 610703.3889290215 5035897.594541908 583.6755981445319 610703.3889290215 5035897.594541908 566.5784301757819 + + + + + + + + +610703.3889290215 5035897.594541908 583.6755981445319 610665.0659159254 5035869.341116842 583.6755981445319 610703.3889290215 5035897.594541908 566.5784301757819 610703.3889290215 5035897.594541908 583.6755981445319 + + + + + + + + +610665.0659159254 5035869.341116842 583.6755981445319 610665.0659159254 5035869.341116842 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 610665.0659159254 5035869.341116842 583.6755981445319 + + + + + + + + +610684.1980603877 5035923.445129678 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 610684.1980603877 5035923.445129678 583.6755981445319 + + + + + + + + +610703.3889290215 5035897.594541908 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610665.0659159254 5035869.341116842 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 + + + + + + + + +610665.0659159254 5035869.341116842 566.5784301757819 610665.0659159254 5035869.341116842 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610665.0659159254 5035869.341116842 566.5784301757819 + + + + + + + + +610665.0659159254 5035869.341116842 566.5784301757819 610645.9080433963 5035895.192514391 583.6755981445319 610645.9080433963 5035895.192514391 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 + + + + + + + + +610645.9080433963 5035895.192514391 583.6755981445319 610684.1980603877 5035923.445129678 583.6755981445319 610645.9080433963 5035895.192514391 566.5784301757819 610645.9080433963 5035895.192514391 583.6755981445319 + + + + + + + + +610684.1980603877 5035923.445129678 583.6755981445319 610684.1980603877 5035923.445129678 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610684.1980603877 5035923.445129678 583.6755981445319 + + + + + + + + +610684.1980603877 5035923.445129678 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610684.1980603877 5035923.445129678 566.5784301757819 + + + + + + + + +610703.3889290215 5035897.594541908 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 + + + + + + + + + + + + +residential +1996 +6.411376953125 +1 +4.5 + + + + + + + + +610621.7522854737 5035912.554446138 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 610621.7522854737 5035912.554446138 566.578491210938 610621.7522854737 5035912.554446138 572.989868164063 + + + + + + + + +610646.6181083214 5035930.900036323 572.989868164063 610646.6181083214 5035930.900036323 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610646.6181083214 5035930.900036323 572.989868164063 + + + + + + + + +610663.4816818945 5035908.180781324 572.989868164063 610646.6181083214 5035930.900036323 566.578491210938 610646.6181083214 5035930.900036323 572.989868164063 610663.4816818945 5035908.180781324 572.989868164063 + + + + + + + + +610663.4816818945 5035908.180781324 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 610663.4816818945 5035908.180781324 572.989868164063 610663.4816818945 5035908.180781324 566.578491210938 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610668.1231967269 5035865.259882145 566.578491210938 610668.1231967269 5035865.259882145 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610710.889553302 5035807.673307475 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 610710.889553302 5035807.673307475 572.989868164063 610710.889553302 5035807.673307475 566.578491210938 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610692.6219659926 5035794.191143957 572.989868164063 610710.889553302 5035807.673307475 566.578491210938 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610692.6219659926 5035794.191143957 572.989868164063 610692.6219659926 5035794.191143957 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 610692.6219659926 5035794.191143957 572.989868164063 + + + + + + + + +610621.7522854737 5035912.554446138 572.989868164063 610619.3578221387 5035915.772196898 566.578491210938 610619.3578221387 5035915.772196898 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 + + + + + + + + +610621.7522854737 5035912.554446138 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 610621.7522854737 5035912.554446138 572.989868164063 610621.7522854737 5035912.554446138 566.578491210938 + + + + + + + + +610614.1462577312 5035911.9282374615 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 610614.1462577312 5035911.9282374615 566.578491210938 610614.1462577312 5035911.9282374615 572.989868164063 + + + + + + + + +610619.3578221387 5035915.772196898 572.989868164063 610619.3578221387 5035915.772196898 566.578491210938 610614.1462577312 5035911.9282374615 566.578491210938 610619.3578221387 5035915.772196898 572.989868164063 + + + + + + + + +610649.8555010457 5035851.7888990585 566.578491210938 610649.8555010457 5035851.7888990585 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610649.8555010457 5035851.7888990585 566.578491210938 + + + + + + + + +610692.6219659926 5035794.191143957 566.578491210938 610692.6219659926 5035794.191143957 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610692.6219659926 5035794.191143957 566.578491210938 + + + + + + + + +610649.8555010457 5035851.7888990585 566.578491210938 610610.7547462888 5035904.451651935 572.989868164063 610610.7547462888 5035904.451651935 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 + + + + + + + + +610692.6219659926 5035794.191143957 566.578491210938 610649.8555010457 5035851.7888990585 572.989868164063 610649.8555010457 5035851.7888990585 566.578491210938 610692.6219659926 5035794.191143957 566.578491210938 + + + + + + + + +610619.3578221387 5035915.772196898 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 + + + + + + + + +610621.7522854737 5035912.554446138 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 + + + + + + + + +610616.5297475372 5035908.71028959 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 + + + + + + + + +610668.1231967269 5035865.259882145 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 + + + + + + + + +610645.8968785583 5035895.203257089 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 + + + + + + + + +610646.6181083214 5035930.900036323 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610663.4816818945 5035908.180781324 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 + + + + + + + + +610646.6181083214 5035930.900036323 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 + + + + + + + + +610668.1231967269 5035865.259882145 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 + + + + + + + + +610619.3578221387 5035915.772196898 572.989868164063 610614.1462577312 5035911.9282374615 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610692.6219659926 5035794.191143957 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610663.4816818945 5035908.180781324 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610663.4816818945 5035908.180781324 566.578491210938 610663.4816818945 5035908.180781324 572.989868164063 + + + + + + + + +610645.8968785583 5035895.203257089 572.989868164063 610645.8968785583 5035895.203257089 566.578491210938 610663.4816818945 5035908.180781324 566.578491210938 610645.8968785583 5035895.203257089 572.989868164063 + + + + + + + + +610616.5297475372 5035908.71028959 566.578491210938 610616.5297475372 5035908.71028959 572.989868164063 610614.1462577312 5035911.9282374615 572.989868164063 610616.5297475372 5035908.71028959 566.578491210938 + + + + + + + + +610616.5297475372 5035908.71028959 566.578491210938 610614.1462577312 5035911.9282374615 572.989868164063 610614.1462577312 5035911.9282374615 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 + + + + + + + + +610619.3578221387 5035915.772196898 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 + + + + + + + + +610621.7522854737 5035912.554446138 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 + + + + + + + + +610616.5297475372 5035908.71028959 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 + + + + + + + + +610668.1231967269 5035865.259882145 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 + + + + + + + + +610645.8968785583 5035895.203257089 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 + + + + + + + + +610646.6181083214 5035930.900036323 566.578491210938 610663.4816818945 5035908.180781324 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 + + + + + + + + +610646.6181083214 5035930.900036323 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 + + + + + + + + +610668.1231967269 5035865.259882145 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 + + + + + + + + +610619.3578221387 5035915.772196898 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610614.1462577312 5035911.9282374615 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 + + + + + + + + +610710.889553302 5035807.673307475 566.578491210938 610692.6219659926 5035794.191143957 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 + + + + + + + + +610668.1231967269 5035865.259882145 572.989868164063 610645.8968785583 5035895.203257089 566.578491210938 610645.8968785583 5035895.203257089 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 + + + + + + + + +610668.1231967269 5035865.259882145 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610668.1231967269 5035865.259882145 572.989868164063 610668.1231967269 5035865.259882145 566.578491210938 + + + + + + + + +610610.7547462888 5035904.451651935 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610610.7547462888 5035904.451651935 566.578491210938 610610.7547462888 5035904.451651935 572.989868164063 + + + + + + + + +610616.5297475372 5035908.71028959 572.989868164063 610616.5297475372 5035908.71028959 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610616.5297475372 5035908.71028959 572.989868164063 + + + + + + + + + + + + +residential +1996 +6.411376953125 +1 +4.5 + + + + + + + + +610621.7524780579 5035912.543510207 579.401306152344 610623.0743290926 5035913.518509444 579.401306152344 610621.7524780579 5035912.543510207 572.989929199219 610621.7524780579 5035912.543510207 579.401306152344 + + + + + + + + +610623.0743290926 5035913.518509444 579.401306152344 610623.0743290926 5035913.518509444 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610623.0743290926 5035913.518509444 579.401306152344 + + + + + + + + +610619.3362629502 5035915.74993861 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 + + + + + + + + +610616.5191605 5035908.688224501 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 610610.7547462888 5035904.451651935 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 + + + + + + + + +610621.7524780579 5035912.543510207 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 + + + + + + + + +610704.9412724827 5035803.280188803 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 + + + + + + + + +610623.0743290926 5035913.518509444 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610623.0743290926 5035913.518509444 572.989929199219 + + + + + + + + +610619.3362629502 5035915.74993861 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610614.1350929802 5035911.9389801845 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 + + + + + + + + +610704.9412724827 5035803.280188803 579.401306152344 610623.0743290926 5035913.518509444 572.989929199219 610623.0743290926 5035913.518509444 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 + + + + + + + + +610704.9412724827 5035803.280188803 572.989929199219 610623.0743290926 5035913.518509444 572.989929199219 610704.9412724827 5035803.280188803 579.401306152344 610704.9412724827 5035803.280188803 572.989929199219 + + + + + + + + +610619.3362629502 5035915.74993861 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 + + + + + + + + +610616.5191605 5035908.688224501 579.401306152344 610610.7547462888 5035904.451651935 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 + + + + + + + + +610621.7524780579 5035912.543510207 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 + + + + + + + + +610704.9412724827 5035803.280188803 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 + + + + + + + + +610623.0743290926 5035913.518509444 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610623.0743290926 5035913.518509444 579.401306152344 + + + + + + + + +610619.3362629502 5035915.74993861 579.401306152344 610614.1350929802 5035911.9389801845 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 + + + + + + + + +610621.7524780579 5035912.543510207 579.401306152344 610619.3362629502 5035915.74993861 572.989929199219 610619.3362629502 5035915.74993861 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 + + + + + + + + +610621.7524780579 5035912.543510207 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 610621.7524780579 5035912.543510207 579.401306152344 610621.7524780579 5035912.543510207 572.989929199219 + + + + + + + + +610614.1350929802 5035911.9389801845 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 610614.1350929802 5035911.9389801845 572.989929199219 610614.1350929802 5035911.9389801845 579.401306152344 + + + + + + + + +610619.3362629502 5035915.74993861 579.401306152344 610619.3362629502 5035915.74993861 572.989929199219 610614.1350929802 5035911.9389801845 572.989929199219 610619.3362629502 5035915.74993861 579.401306152344 + + + + + + + + +610704.9412724827 5035803.280188803 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610704.9412724827 5035803.280188803 572.989929199219 610704.9412724827 5035803.280188803 579.401306152344 + + + + + + + + +610692.6329383818 5035794.1913372995 579.401306152344 610692.6329383818 5035794.1913372995 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610692.6329383818 5035794.1913372995 579.401306152344 + + + + + + + + +610616.5191605 5035908.688224501 572.989929199219 610616.5191605 5035908.688224501 579.401306152344 610614.1350929802 5035911.9389801845 579.401306152344 610616.5191605 5035908.688224501 572.989929199219 + + + + + + + + +610616.5191605 5035908.688224501 572.989929199219 610614.1350929802 5035911.9389801845 579.401306152344 610614.1350929802 5035911.9389801845 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 + + + + + + + + +610692.6329383818 5035794.1913372995 572.989929199219 610692.6329383818 5035794.1913372995 579.401306152344 610610.7547462888 5035904.451651935 579.401306152344 610692.6329383818 5035794.1913372995 572.989929199219 + + + + + + + + +610692.6329383818 5035794.1913372995 572.989929199219 610610.7547462888 5035904.451651935 579.401306152344 610610.7547462888 5035904.451651935 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 + + + + + + + + +610610.7547462888 5035904.451651935 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610610.7547462888 5035904.451651935 572.989929199219 610610.7547462888 5035904.451651935 579.401306152344 + + + + + + + + +610616.5191605 5035908.688224501 579.401306152344 610616.5191605 5035908.688224501 572.989929199219 610610.7547462888 5035904.451651935 572.989929199219 610616.5191605 5035908.688224501 579.401306152344 + + + + + + + + + + + + +residential +1996 +6.411437988281023 +1 +4.5 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 610629.0223648318 5035917.922411644 579.401306152344 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610629.0223648318 5035917.922411644 579.401306152344 610710.889553302 5035807.673307475 579.401306152344 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610710.889553302 5035807.673307475 579.401306152344 610704.9412724827 5035803.280188803 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 610710.889553302 5035807.673307475 579.401306152344 + + + + + + + + +610704.9412724827 5035803.280188803 579.401306152344 610704.9412724827 5035803.280188803 572.989868164063 610710.889553302 5035807.673307475 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 + + + + + + + + +610629.0223648318 5035917.922411644 579.401306152344 610623.0741365062 5035913.5294453725 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 + + + + + + + + +610710.889553302 5035807.673307475 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610710.889553302 5035807.673307475 579.401306152344 + + + + + + + + +610629.0223648318 5035917.922411644 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 610623.0741365062 5035913.5294453725 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 + + + + + + + + +610710.889553302 5035807.673307475 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 + + + + + + + + +610623.0741365062 5035913.5294453725 579.401306152344 610629.0223648318 5035917.922411644 572.989868164063 610623.0741365062 5035913.5294453725 572.989868164063 610623.0741365062 5035913.5294453725 579.401306152344 + + + + + + + + +610629.0223648318 5035917.922411644 579.401306152344 610629.0223648318 5035917.922411644 572.989868164063 610623.0741365062 5035913.5294453725 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 + + + + + + + + +610704.9412724827 5035803.280188803 572.989868164063 610704.9412724827 5035803.280188803 579.401306152344 610623.0741365062 5035913.5294453725 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 + + + + + + + + +610704.9412724827 5035803.280188803 579.401306152344 610623.0741365062 5035913.5294453725 579.401306152344 610623.0741365062 5035913.5294453725 572.989868164063 610704.9412724827 5035803.280188803 579.401306152344 + + + + + + + + + + + + +residential +1996 +6.411376953125 +1 +4.5 + + + + + + + + +610681.0666060724 5035921.147394737 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 610664.20319311 5035943.855621107 579.401306152344 610681.0666060724 5035921.147394737 572.989929199219 + + + + + + + + +610681.0666060724 5035921.147394737 572.989929199219 610664.20319311 5035943.855621107 579.401306152344 610681.0666060724 5035921.147394737 579.401306152344 610681.0666060724 5035921.147394737 572.989929199219 + + + + + + + + +610681.0666060724 5035921.147394737 579.401306152344 610645.9080433963 5035895.192514391 572.989929199219 610681.0666060724 5035921.147394737 572.989929199219 610681.0666060724 5035921.147394737 579.401306152344 + + + + + + + + +610645.9080433963 5035895.192514391 579.401306152344 610645.9080433963 5035895.192514391 572.989929199219 610681.0666060724 5035921.147394737 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 + + + + + + + + +610664.20319311 5035943.855621107 579.401306152344 610629.0113926606 5035917.922218408 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 + + + + + + + + +610664.20319311 5035943.855621107 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 610681.0666060724 5035921.147394737 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 + + + + + + + + +610664.20319311 5035943.855621107 572.989929199219 610681.0666060724 5035921.147394737 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 + + + + + + + + +610664.20319311 5035943.855621107 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 610629.0113926606 5035917.922218408 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 + + + + + + + + +610629.0113926606 5035917.922218408 579.401306152344 610664.20319311 5035943.855621107 572.989929199219 610629.0113926606 5035917.922218408 572.989929199219 610629.0113926606 5035917.922218408 579.401306152344 + + + + + + + + +610664.20319311 5035943.855621107 579.401306152344 610664.20319311 5035943.855621107 572.989929199219 610629.0113926606 5035917.922218408 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 + + + + + + + + +610645.9080433963 5035895.192514391 572.989929199219 610645.9080433963 5035895.192514391 579.401306152344 610629.0113926606 5035917.922218408 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 + + + + + + + + +610645.9080433963 5035895.192514391 579.401306152344 610629.0113926606 5035917.922218408 579.401306152344 610629.0113926606 5035917.922218408 572.989929199219 610645.9080433963 5035895.192514391 579.401306152344 + + + + + + + + + + + + + + + + +residential +1996 +14.532531738281023 +3 +3.4 + + + + + + + + +610730.5091460128 5035898.247573101 578.840942382813 610730.5091460128 5035898.247573101 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610730.5091460128 5035898.247573101 578.840942382813 + + + + + + + + +610734.9514596879 5035901.520172936 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610734.9514596879 5035901.520172936 573.996765136719 610734.9514596879 5035901.520172936 578.840942382813 + + + + + + + + +610730.5091460128 5035898.247573101 573.996765136719 610709.3888679559 5035920.847918315 578.840942382813 610709.3888679559 5035920.847918315 573.996765136719 610730.5091460128 5035898.247573101 573.996765136719 + + + + + + + + +610730.5091460128 5035898.247573101 573.996765136719 610730.5091460128 5035898.247573101 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610730.5091460128 5035898.247573101 573.996765136719 + + + + + + + + +610753.0128684435 5035914.845466099 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610753.0128684435 5035914.845466099 573.996765136719 + + + + + + + + +610734.9514596879 5035901.520172936 573.996765136719 610730.5091460128 5035898.247573101 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 + + + + + + + + +610733.181859054 5035938.39824457 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 + + + + + + + + +610716.5712022368 5035954.229941277 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 610695.9420089822 5035939.010844626 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 + + + + + + + + +610716.5712022368 5035954.229941277 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 + + + + + + + + +610716.5712022368 5035954.229941277 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 + + + + + + + + +610696.2016912752 5035938.599727995 573.996765136719 610695.9420089822 5035939.010844626 578.648071289063 610695.9420089822 5035939.010844626 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 + + + + + + + + +610696.2016912752 5035938.599727995 573.996765136719 610696.1905264247 5035938.610470531 578.835571289063 610695.9420089822 5035939.010844626 578.648071289063 610696.2016912752 5035938.599727995 573.996765136719 + + + + + + + + +610753.0128684435 5035914.845466099 588.529296875 610733.181859054 5035938.39824457 583.6851196289069 610733.181859054 5035938.39824457 588.529296875 610753.0128684435 5035914.845466099 588.529296875 + + + + + + + + +610753.0128684435 5035914.845466099 583.6851196289069 610733.181859054 5035938.39824457 578.840942382813 610733.181859054 5035938.39824457 583.6851196289069 610753.0128684435 5035914.845466099 583.6851196289069 + + + + + + + + +610753.0128684435 5035914.845466099 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610753.0128684435 5035914.845466099 578.840942382813 610753.0128684435 5035914.845466099 573.996765136719 + + + + + + + + +610753.0128684435 5035914.845466099 583.6851196289069 610733.181859054 5035938.39824457 583.6851196289069 610753.0128684435 5035914.845466099 588.529296875 610753.0128684435 5035914.845466099 583.6851196289069 + + + + + + + + +610753.0128684435 5035914.845466099 578.840942382813 610733.181859054 5035938.39824457 578.840942382813 610753.0128684435 5035914.845466099 583.6851196289069 610753.0128684435 5035914.845466099 578.840942382813 + + + + + + + + +610753.0128684435 5035914.845466099 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610733.181859054 5035938.39824457 578.840942382813 610753.0128684435 5035914.845466099 578.840942382813 + + + + + + + + +610753.0128684435 5035914.845466099 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610753.0128684435 5035914.845466099 583.6851196289069 610753.0128684435 5035914.845466099 588.529296875 + + + + + + + + +610753.0128684435 5035914.845466099 583.6851196289069 610734.9514596879 5035901.520172936 583.6851196289069 610753.0128684435 5035914.845466099 578.840942382813 610753.0128684435 5035914.845466099 583.6851196289069 + + + + + + + + +610753.0128684435 5035914.845466099 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 610753.0128684435 5035914.845466099 573.996765136719 610753.0128684435 5035914.845466099 578.840942382813 + + + + + + + + +610734.9514596879 5035901.520172936 588.529296875 610734.9514596879 5035901.520172936 583.6851196289069 610753.0128684435 5035914.845466099 583.6851196289069 610734.9514596879 5035901.520172936 588.529296875 + + + + + + + + +610734.9514596879 5035901.520172936 583.6851196289069 610734.9514596879 5035901.520172936 578.840942382813 610753.0128684435 5035914.845466099 578.840942382813 610734.9514596879 5035901.520172936 583.6851196289069 + + + + + + + + +610734.9514596879 5035901.520172936 578.840942382813 610734.9514596879 5035901.520172936 573.996765136719 610753.0128684435 5035914.845466099 573.996765136719 610734.9514596879 5035901.520172936 578.840942382813 + + + + + + + + +610696.2016912752 5035938.599727995 578.839050292969 610696.1905264247 5035938.610470531 578.835571289063 610696.2016912752 5035938.599727995 573.996765136719 610696.2016912752 5035938.599727995 578.839050292969 + + + + + + + + +610709.3888679559 5035920.847918315 573.996765136719 610696.2016912752 5035938.599727995 578.839050292969 610696.2016912752 5035938.599727995 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 + + + + + + + + +610709.3888679559 5035920.847918315 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610709.3888679559 5035920.847918315 578.840942382813 + + + + + + + + +610709.3888679559 5035920.847918315 573.996765136719 610709.3888679559 5035920.847918315 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610709.3888679559 5035920.847918315 573.996765136719 + + + + + + + + +610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 + + + + + + + + +610734.9514596879 5035901.520172936 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 + + + + + + + + +610713.8311757242 5035924.120491701 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 + + + + + + + + +610713.8311757242 5035924.120491701 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 + + + + + + + + +610703.7644574965 5035944.1698274845 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 + + + + + + + + +610701.6014704753 5035968.504367453 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610701.6014704753 5035968.504367453 578.840942382813 + + + + + + + + +610734.9514596879 5035901.520172936 583.6851196289069 610734.9514596879 5035901.520172936 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610734.9514596879 5035901.520172936 583.6851196289069 + + + + + + + + +610734.9514596879 5035901.520172936 578.840942382813 610734.9514596879 5035901.520172936 583.6851196289069 610713.8311757242 5035924.120491701 583.6851196289069 610734.9514596879 5035901.520172936 578.840942382813 + + + + + + + + +610734.9514596879 5035901.520172936 583.6851196289069 610713.8311757242 5035924.120491701 588.529296875 610713.8311757242 5035924.120491701 583.6851196289069 610734.9514596879 5035901.520172936 583.6851196289069 + + + + + + + + +610734.9514596879 5035901.520172936 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610713.8311757242 5035924.120491701 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 + + + + + + + + +610703.5371131136 5035944.614331181 578.648071289063 610716.5712022368 5035954.229941277 573.996765136719 610695.9420089822 5035939.010844626 573.996765136719 610703.5371131136 5035944.614331181 578.648071289063 + + + + + + + + +610695.9420089822 5035939.010844626 578.648071289063 610703.5371131136 5035944.614331181 578.648071289063 610695.9420089822 5035939.010844626 573.996765136719 610695.9420089822 5035939.010844626 578.648071289063 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.713562011719 610703.5371131136 5035944.614331181 578.648071289063 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.840942382813 610703.5371131136 5035944.614331181 578.713562011719 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610703.5371131136 5035944.614331181 578.648071289063 610695.9420089822 5035939.010844626 578.648071289063 610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.648071289063 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610695.9420089822 5035939.010844626 578.648071289063 610696.1905264247 5035938.610470531 578.835571289063 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610696.1905264247 5035938.610470531 578.835571289063 610696.2016912752 5035938.599727995 578.839050292969 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610733.181859054 5035938.39824457 583.6851196289069 610733.181859054 5035938.39824457 578.840942382813 610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 583.6851196289069 + + + + + + + + +610733.181859054 5035938.39824457 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 578.840942382813 + + + + + + + + +610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 610716.9284778136 5035953.886182148 578.840942382813 + + + + + + + + +610753.0128684435 5035914.845466099 588.529296875 610733.181859054 5035938.39824457 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610753.0128684435 5035914.845466099 588.529296875 + + + + + + + + +610733.181859054 5035938.39824457 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610733.181859054 5035938.39824457 588.529296875 + + + + + + + + +610701.6014704753 5035968.504367453 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610733.181859054 5035938.39824457 588.529296875 610701.6014704753 5035968.504367453 588.529296875 + + + + + + + + +610733.181859054 5035938.39824457 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610733.181859054 5035938.39824457 588.529296875 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610696.2016912752 5035938.599727995 578.839050292969 610703.7644574965 5035944.1698274845 578.840942382813 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610696.2016912752 5035938.599727995 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610696.2016912752 5035938.599727995 578.840942382813 + + + + + + + + +610713.8311757242 5035924.120491701 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610703.7644574965 5035944.1698274845 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 + + + + + + + + +610713.8311757242 5035924.120491701 583.6851196289069 610713.8311757242 5035924.120491701 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610713.8311757242 5035924.120491701 583.6851196289069 + + + + + + + + +610713.8311757242 5035924.120491701 583.6851196289069 610694.2664484897 5035963.091453249 588.529296875 610694.2664484897 5035963.091453249 583.6851196289069 610713.8311757242 5035924.120491701 583.6851196289069 + + + + + + + + +610716.5712022368 5035954.229941277 578.840942382813 610716.9284778136 5035953.886182148 578.840942382813 610716.5712022368 5035954.229941277 573.996765136719 610716.5712022368 5035954.229941277 578.840942382813 + + + + + + + + +610716.5712022368 5035954.229941277 578.840942382813 610716.5712022368 5035954.229941277 573.996765136719 610703.5371131136 5035944.614331181 578.648071289063 610716.5712022368 5035954.229941277 578.840942382813 + + + + + + + + +610703.5371131136 5035944.614331181 578.713562011719 610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.648071289063 610703.5371131136 5035944.614331181 578.713562011719 + + + + + + + + +610703.5371131136 5035944.614331181 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.713562011719 610703.5371131136 5035944.614331181 578.840942382813 + + + + + + + + +610703.7530999134 5035944.1915058745 578.835571289063 610703.7644574965 5035944.1698274845 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 610703.7530999134 5035944.1915058745 578.835571289063 + + + + + + + + +610701.6014704753 5035968.504367453 588.529296875 610733.181859054 5035938.39824457 588.529296875 610701.6014704753 5035968.504367453 583.6851196289069 610701.6014704753 5035968.504367453 588.529296875 + + + + + + + + +610733.181859054 5035938.39824457 588.529296875 610733.181859054 5035938.39824457 583.6851196289069 610701.6014704753 5035968.504367453 583.6851196289069 610733.181859054 5035938.39824457 588.529296875 + + + + + + + + +610733.181859054 5035938.39824457 583.6851196289069 610716.9284778136 5035953.886182148 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 610733.181859054 5035938.39824457 583.6851196289069 + + + + + + + + +610716.9284778136 5035953.886182148 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 610716.9284778136 5035953.886182148 578.840942382813 + + + + + + + + +610701.6014704753 5035968.504367453 583.6851196289069 610716.5712022368 5035954.229941277 578.840942382813 610701.6014704753 5035968.504367453 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 + + + + + + + + +610694.2664484897 5035963.091453249 588.529296875 610701.6014704753 5035968.504367453 588.529296875 610694.2664484897 5035963.091453249 583.6851196289069 610694.2664484897 5035963.091453249 588.529296875 + + + + + + + + +610694.2664484897 5035963.091453249 583.6851196289069 610701.6014704753 5035968.504367453 583.6851196289069 610694.2664484897 5035963.091453249 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 + + + + + + + + +610701.6014704753 5035968.504367453 588.529296875 610701.6014704753 5035968.504367453 583.6851196289069 610694.2664484897 5035963.091453249 583.6851196289069 610701.6014704753 5035968.504367453 588.529296875 + + + + + + + + +610701.6014704753 5035968.504367453 583.6851196289069 610701.6014704753 5035968.504367453 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 + + + + + + + + +610703.5371131136 5035944.614331181 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 610703.5371131136 5035944.614331181 578.840942382813 + + + + + + + + +610703.7644574965 5035944.1698274845 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610694.2664484897 5035963.091453249 583.6851196289069 610703.7644574965 5035944.1698274845 578.840942382813 + + + + + + + + +610703.5371131136 5035944.614331181 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 610694.2664484897 5035963.091453249 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 + + + + + + + + + + + + +residential +1996 +7.002624511718977 +1 +5 + + + + + + + + +610730.4983665772 5035898.236443731 573.996704101563 610730.4983665772 5035898.236443731 566.994079589844 610753.0132540688 5035914.823594236 566.994079589844 610730.4983665772 5035898.236443731 573.996704101563 + + + + + + + + +610753.0132540688 5035914.823594236 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610753.0132540688 5035914.823594236 566.994079589844 610753.0132540688 5035914.823594236 573.996704101563 + + + + + + + + +610753.0132540688 5035914.823594236 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 610753.0132540688 5035914.823594236 573.996704101563 610753.0132540688 5035914.823594236 566.994079589844 + + + + + + + + +610753.0132540688 5035914.823594236 573.996704101563 610733.1708869145 5035938.398051152 566.994079589844 610733.1708869145 5035938.398051152 573.996704101563 610753.0132540688 5035914.823594236 573.996704101563 + + + + + + + + +610733.1708869145 5035938.398051152 566.994079589844 610753.0132540688 5035914.823594236 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 + + + + + + + + +610733.1708869145 5035938.398051152 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 + + + + + + + + +610716.9173129515 5035953.896924622 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610696.1799397165 5035938.5884054005 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 + + + + + + + + +610716.9173129515 5035953.896924622 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 + + + + + + + + +610733.1708869145 5035938.398051152 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610753.0132540688 5035914.823594236 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 + + + + + + + + +610733.1708869145 5035938.398051152 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 + + + + + + + + +610716.9173129515 5035953.896924622 573.996704101563 610696.1799397165 5035938.5884054005 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 + + + + + + + + +610716.9173129515 5035953.896924622 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 + + + + + + + + +610730.4983665772 5035898.236443731 566.994079589844 610709.4004183351 5035920.81530393 573.996704101563 610709.4004183351 5035920.81530393 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 + + + + + + + + +610730.4983665772 5035898.236443731 566.994079589844 610730.4983665772 5035898.236443731 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610730.4983665772 5035898.236443731 566.994079589844 + + + + + + + + +610733.1708869145 5035938.398051152 573.996704101563 610733.1708869145 5035938.398051152 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 610733.1708869145 5035938.398051152 573.996704101563 + + + + + + + + +610716.9173129515 5035953.896924622 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 610716.9173129515 5035953.896924622 566.994079589844 610716.9173129515 5035953.896924622 573.996704101563 + + + + + + + + +610709.4004183351 5035920.81530393 566.994079589844 610696.1799397165 5035938.5884054005 573.996704101563 610696.1799397165 5035938.5884054005 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 + + + + + + + + +610709.4004183351 5035920.81530393 566.994079589844 610709.4004183351 5035920.81530393 573.996704101563 610696.1799397165 5035938.5884054005 573.996704101563 610709.4004183351 5035920.81530393 566.994079589844 + + + + + + + + +610716.9173129515 5035953.896924622 573.996704101563 610716.9173129515 5035953.896924622 566.994079589844 610696.1799397165 5035938.5884054005 566.994079589844 610716.9173129515 5035953.896924622 573.996704101563 + + + + + + + + +610696.1799397165 5035938.5884054005 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 610696.1799397165 5035938.5884054005 566.994079589844 610696.1799397165 5035938.5884054005 573.996704101563 + + + + + + + + + + + + + + + + +residential +1996 +24.220886230468977 +5 +3.4 + + + + + + + + +610778.5757756741 5035838.250034396 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610778.5757756741 5035838.250034396 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 + + + + + + + + +610798.1650870934 5035852.6964745615 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 + + + + + + + + +610812.6156817194 5035835.524813268 593.373474121094 610798.1650870934 5035852.6964745615 593.373474121094 610812.6156817194 5035835.524813268 598.217651367188 610812.6156817194 5035835.524813268 593.373474121094 + + + + + + + + +610812.6156817194 5035835.524813268 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610812.6156817194 5035835.524813268 593.373474121094 610812.6156817194 5035835.524813268 588.529296875 + + + + + + + + +610812.6156817194 5035835.524813268 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610798.1650870934 5035852.6964745615 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 + + + + + + + + +610812.6156817194 5035835.524813268 593.373474121094 610798.1650870934 5035852.6964745615 588.529296875 610798.1650870934 5035852.6964745615 593.373474121094 610812.6156817194 5035835.524813268 593.373474121094 + + + + + + + + +610796.093459915 5035775.995860917 598.217651367188 610796.093459915 5035775.995860917 593.373474121094 610812.6156817194 5035835.524813268 593.373474121094 610796.093459915 5035775.995860917 598.217651367188 + + + + + + + + +610796.093459915 5035775.995860917 593.373474121094 610796.093459915 5035775.995860917 588.529296875 610812.6156817194 5035835.524813268 588.529296875 610796.093459915 5035775.995860917 593.373474121094 + + + + + + + + +610812.6156817194 5035835.524813268 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610812.6156817194 5035835.524813268 593.373474121094 610812.6156817194 5035835.524813268 598.217651367188 + + + + + + + + +610812.6156817194 5035835.524813268 593.373474121094 610796.093459915 5035775.995860917 593.373474121094 610812.6156817194 5035835.524813268 588.529296875 610812.6156817194 5035835.524813268 593.373474121094 + + + + + + + + +610778.6192792265 5035838.272680501 588.529296875 610784.3296125665 5035829.392075743 588.529296875 610778.5757756741 5035838.250034396 588.529296875 610778.6192792265 5035838.272680501 588.529296875 + + + + + + + + +610812.6156817194 5035835.524813268 588.529296875 610796.093459915 5035775.995860917 588.529296875 610818.6731258357 5035836.83501248 588.529296875 610812.6156817194 5035835.524813268 588.529296875 + + + + + + + + +610818.6731258357 5035836.83501248 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610812.6156817194 5035835.524813268 588.529296875 610818.6731258357 5035836.83501248 588.529296875 + + + + + + + + +610796.093459915 5035775.995860917 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610796.093459915 5035775.995860917 588.529296875 + + + + + + + + +610818.6731258357 5035836.83501248 588.529296875 610796.093459915 5035775.995860917 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610818.6731258357 5035836.83501248 588.529296875 + + + + + + + + +610734.538063405 5035778.651829647 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610796.093459915 5035775.995860917 588.529296875 610734.538063405 5035778.651829647 588.529296875 + + + + + + + + +610782.6784284493 5035879.454642432 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610782.6784284493 5035879.454642432 588.529296875 + + + + + + + + +610818.6731258357 5035836.83501248 588.529296875 610782.6784284493 5035879.454642432 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610818.6731258357 5035836.83501248 588.529296875 + + + + + + + + +610798.1650870934 5035852.6964745615 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 + + + + + + + + +610778.5757756741 5035838.250034396 593.373474121094 610778.6192792265 5035838.272680501 588.529296875 610778.5757756741 5035838.250034396 588.529296875 610778.5757756741 5035838.250034396 593.373474121094 + + + + + + + + +610798.1650870934 5035852.6964745615 593.373474121094 610778.6192792265 5035838.272680501 588.529296875 610778.5757756741 5035838.250034396 593.373474121094 610798.1650870934 5035852.6964745615 593.373474121094 + + + + + + + + +610798.1650870934 5035852.6964745615 593.373474121094 610798.1650870934 5035852.6964745615 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610798.1650870934 5035852.6964745615 593.373474121094 + + + + + + + + +610735.6689161435 5035804.160897724 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610735.6689161435 5035804.160897724 598.217651367188 + + + + + + + + +610812.6156817194 5035835.524813268 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 + + + + + + + + +610776.8375347028 5035802.381591275 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 + + + + + + + + +610784.3296125665 5035829.392075743 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 + + + + + + + + +610798.1650870934 5035852.6964745615 598.217651367188 610778.5757756741 5035838.250034396 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 + + + + + + + + +610798.1650870934 5035852.6964745615 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 + + + + + + + + +610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 610778.5757756741 5035838.250034396 593.373474121094 610784.3296125665 5035829.392075743 593.373474121094 + + + + + + + + +610784.3296125665 5035829.392075743 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 588.529296875 610784.3296125665 5035829.392075743 588.529296875 + + + + + + + + +610784.3296125665 5035829.392075743 593.373474121094 610784.3296125665 5035829.392075743 598.217651367188 610778.5757756741 5035838.250034396 598.217651367188 610784.3296125665 5035829.392075743 593.373474121094 + + + + + + + + +610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 593.373474121094 610778.5757756741 5035838.250034396 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 + + + + + + + + +610734.538063405 5035778.651829647 598.217651367188 610734.538063405 5035778.651829647 593.373474121094 610796.093459915 5035775.995860917 593.373474121094 610734.538063405 5035778.651829647 598.217651367188 + + + + + + + + +610734.538063405 5035778.651829647 593.373474121094 610734.538063405 5035778.651829647 588.529296875 610796.093459915 5035775.995860917 588.529296875 610734.538063405 5035778.651829647 593.373474121094 + + + + + + + + +610796.093459915 5035775.995860917 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610796.093459915 5035775.995860917 593.373474121094 610796.093459915 5035775.995860917 598.217651367188 + + + + + + + + +610796.093459915 5035775.995860917 593.373474121094 610734.538063405 5035778.651829647 593.373474121094 610796.093459915 5035775.995860917 588.529296875 610796.093459915 5035775.995860917 593.373474121094 + + + + + + + + +610818.6731258357 5035836.83501248 583.6851196289069 610782.6784284493 5035879.454642432 583.6851196289069 610818.6731258357 5035836.83501248 588.529296875 610818.6731258357 5035836.83501248 583.6851196289069 + + + + + + + + +610818.6731258357 5035836.83501248 578.840942382813 610782.6784284493 5035879.454642432 578.840942382813 610818.6731258357 5035836.83501248 583.6851196289069 610818.6731258357 5035836.83501248 578.840942382813 + + + + + + + + +610818.6731258357 5035836.83501248 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 578.840942382813 610818.6731258357 5035836.83501248 573.996765136719 + + + + + + + + +610818.6731258357 5035836.83501248 588.529296875 610782.6784284493 5035879.454642432 583.6851196289069 610782.6784284493 5035879.454642432 588.529296875 610818.6731258357 5035836.83501248 588.529296875 + + + + + + + + +610818.6731258357 5035836.83501248 583.6851196289069 610782.6784284493 5035879.454642432 578.840942382813 610782.6784284493 5035879.454642432 583.6851196289069 610818.6731258357 5035836.83501248 583.6851196289069 + + + + + + + + +610818.6731258357 5035836.83501248 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610782.6784284493 5035879.454642432 578.840942382813 610818.6731258357 5035836.83501248 578.840942382813 + + + + + + + + +610782.6784284493 5035879.454642432 588.529296875 610782.6784284493 5035879.454642432 583.6851196289069 610761.9515425221 5035864.167794568 583.6851196289069 610782.6784284493 5035879.454642432 588.529296875 + + + + + + + + +610782.6784284493 5035879.454642432 583.6851196289069 610782.6784284493 5035879.454642432 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 583.6851196289069 + + + + + + + + +610782.6784284493 5035879.454642432 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 578.840942382813 + + + + + + + + +610761.9515425221 5035864.167794568 588.529296875 610782.6784284493 5035879.454642432 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610761.9515425221 5035864.167794568 588.529296875 + + + + + + + + +610761.9515425221 5035864.167794568 583.6851196289069 610782.6784284493 5035879.454642432 583.6851196289069 610761.9515425221 5035864.167794568 578.840942382813 610761.9515425221 5035864.167794568 583.6851196289069 + + + + + + + + +610778.6192792265 5035838.272680501 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610778.6192792265 5035838.272680501 588.529296875 + + + + + + + + +610784.3296125665 5035829.392075743 583.6851196289069 610784.3296125665 5035829.392075743 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 + + + + + + + + +610784.3296125665 5035829.392075743 583.6851196289069 610778.6192792265 5035838.272680501 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610784.3296125665 5035829.392075743 583.6851196289069 + + + + + + + + +610784.3296125665 5035829.392075743 598.217651367188 610784.3296125665 5035829.392075743 593.373474121094 610776.8375347028 5035802.381591275 593.373474121094 610784.3296125665 5035829.392075743 598.217651367188 + + + + + + + + +610784.3296125665 5035829.392075743 593.373474121094 610784.3296125665 5035829.392075743 588.529296875 610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 + + + + + + + + +610784.3296125665 5035829.392075743 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 588.529296875 + + + + + + + + +610784.3296125665 5035829.392075743 583.6851196289069 610784.3296125665 5035829.392075743 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610784.3296125665 5035829.392075743 583.6851196289069 + + + + + + + + +610776.8375347028 5035802.381591275 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610776.8375347028 5035802.381591275 593.373474121094 610776.8375347028 5035802.381591275 598.217651367188 + + + + + + + + +610776.8375347028 5035802.381591275 593.373474121094 610784.3296125665 5035829.392075743 593.373474121094 610776.8375347028 5035802.381591275 588.529296875 610776.8375347028 5035802.381591275 593.373474121094 + + + + + + + + +610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 583.6851196289069 610776.8375347028 5035802.381591275 588.529296875 + + + + + + + + +610776.8375347028 5035802.381591275 583.6851196289069 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 578.840942382813 610776.8375347028 5035802.381591275 583.6851196289069 + + + + + + + + +610735.6689161435 5035804.160897724 598.217651367188 610735.6689161435 5035804.160897724 593.373474121094 610734.538063405 5035778.651829647 593.373474121094 610735.6689161435 5035804.160897724 598.217651367188 + + + + + + + + +610735.6689161435 5035804.160897724 593.373474121094 610735.6689161435 5035804.160897724 588.529296875 610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 593.373474121094 + + + + + + + + +610735.6689161435 5035804.160897724 588.529296875 610735.6689161435 5035804.160897724 583.6851196289069 610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 588.529296875 + + + + + + + + +610734.538063405 5035778.651829647 598.217651367188 610735.6689161435 5035804.160897724 598.217651367188 610734.538063405 5035778.651829647 593.373474121094 610734.538063405 5035778.651829647 598.217651367188 + + + + + + + + +610734.538063405 5035778.651829647 593.373474121094 610735.6689161435 5035804.160897724 593.373474121094 610734.538063405 5035778.651829647 588.529296875 610734.538063405 5035778.651829647 593.373474121094 + + + + + + + + +610776.8375347028 5035802.381591275 598.217651367188 610776.8375347028 5035802.381591275 593.373474121094 610735.6689161435 5035804.160897724 593.373474121094 610776.8375347028 5035802.381591275 598.217651367188 + + + + + + + + +610776.8375347028 5035802.381591275 593.373474121094 610776.8375347028 5035802.381591275 588.529296875 610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 593.373474121094 + + + + + + + + +610776.8375347028 5035802.381591275 588.529296875 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 588.529296875 + + + + + + + + +610776.8375347028 5035802.381591275 583.6851196289069 610776.8375347028 5035802.381591275 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610776.8375347028 5035802.381591275 583.6851196289069 + + + + + + + + +610735.6689161435 5035804.160897724 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610735.6689161435 5035804.160897724 593.373474121094 610735.6689161435 5035804.160897724 598.217651367188 + + + + + + + + +610735.6689161435 5035804.160897724 593.373474121094 610776.8375347028 5035802.381591275 593.373474121094 610735.6689161435 5035804.160897724 588.529296875 610735.6689161435 5035804.160897724 593.373474121094 + + + + + + + + +610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 583.6851196289069 610735.6689161435 5035804.160897724 588.529296875 + + + + + + + + +610735.6689161435 5035804.160897724 583.6851196289069 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 578.840942382813 610735.6689161435 5035804.160897724 583.6851196289069 + + + + + + + + +610800.2212214476 5035770.347264212 588.529296875 610800.2212214476 5035770.347264212 583.6851196289069 610818.6731258357 5035836.83501248 583.6851196289069 610800.2212214476 5035770.347264212 588.529296875 + + + + + + + + +610800.2212214476 5035770.347264212 583.6851196289069 610800.2212214476 5035770.347264212 578.840942382813 610818.6731258357 5035836.83501248 578.840942382813 610800.2212214476 5035770.347264212 583.6851196289069 + + + + + + + + +610800.2212214476 5035770.347264212 578.840942382813 610800.2212214476 5035770.347264212 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 578.840942382813 + + + + + + + + +610818.6731258357 5035836.83501248 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610818.6731258357 5035836.83501248 583.6851196289069 610818.6731258357 5035836.83501248 588.529296875 + + + + + + + + +610818.6731258357 5035836.83501248 583.6851196289069 610800.2212214476 5035770.347264212 583.6851196289069 610818.6731258357 5035836.83501248 578.840942382813 610818.6731258357 5035836.83501248 583.6851196289069 + + + + + + + + +610818.6731258357 5035836.83501248 578.840942382813 610800.2212214476 5035770.347264212 578.840942382813 610818.6731258357 5035836.83501248 573.996765136719 610818.6731258357 5035836.83501248 578.840942382813 + + + + + + + + +610757.530966894 5035860.906479697 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610757.530966894 5035860.906479697 573.996765136719 610757.530966894 5035860.906479697 578.840942382813 + + + + + + + + +610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610761.9515425221 5035864.167794568 578.840942382813 + + + + + + + + +610784.3296125665 5035829.392075743 578.840942382813 610761.9515425221 5035864.167794568 583.6851196289069 610761.9515425221 5035864.167794568 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 + + + + + + + + +610784.3296125665 5035829.392075743 578.840942382813 610784.3296125665 5035829.392075743 583.6851196289069 610761.9515425221 5035864.167794568 583.6851196289069 610784.3296125665 5035829.392075743 578.840942382813 + + + + + + + + +610734.2943063623 5035773.177748277 588.529296875 610734.2943063623 5035773.177748277 583.6851196289069 610800.2212214476 5035770.347264212 583.6851196289069 610734.2943063623 5035773.177748277 588.529296875 + + + + + + + + +610734.2943063623 5035773.177748277 583.6851196289069 610734.2943063623 5035773.177748277 578.840942382813 610800.2212214476 5035770.347264212 578.840942382813 610734.2943063623 5035773.177748277 583.6851196289069 + + + + + + + + +610734.2943063623 5035773.177748277 578.840942382813 610734.2943063623 5035773.177748277 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 578.840942382813 + + + + + + + + +610800.2212214476 5035770.347264212 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610800.2212214476 5035770.347264212 583.6851196289069 610800.2212214476 5035770.347264212 588.529296875 + + + + + + + + +610800.2212214476 5035770.347264212 583.6851196289069 610734.2943063623 5035773.177748277 583.6851196289069 610800.2212214476 5035770.347264212 578.840942382813 610800.2212214476 5035770.347264212 583.6851196289069 + + + + + + + + +610800.2212214476 5035770.347264212 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610800.2212214476 5035770.347264212 573.996765136719 610800.2212214476 5035770.347264212 578.840942382813 + + + + + + + + +610784.3296125665 5035829.392075743 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 + + + + + + + + +610772.7202085907 5035808.0631751185 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 + + + + + + + + +610778.2721552142 5035828.081908587 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 + + + + + + + + +610761.9515425221 5035864.167794568 578.840942382813 610757.530966894 5035860.906479697 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 + + + + + + + + +610735.9011191447 5035809.667567344 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 + + + + + + + + +610735.9011191447 5035809.667567344 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 + + + + + + + + +610784.3296125665 5035829.392075743 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 578.840942382813 610757.530966894 5035860.906479697 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610778.2721552142 5035828.081908587 578.840942382813 610757.530966894 5035860.906479697 578.840942382813 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610772.7202085907 5035808.0631751185 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 + + + + + + + + +610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 + + + + + + + + +610782.6784284493 5035879.454642432 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 + + + + + + + + +610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 + + + + + + + + +610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 583.6851196289069 610734.2943063623 5035773.177748277 583.6851196289069 610734.538063405 5035778.651829647 588.529296875 + + + + + + + + +610734.2943063623 5035773.177748277 588.529296875 610734.538063405 5035778.651829647 588.529296875 610734.2943063623 5035773.177748277 583.6851196289069 610734.2943063623 5035773.177748277 588.529296875 + + + + + + + + +610772.7202085907 5035808.0631751185 578.840942382813 610772.7202085907 5035808.0631751185 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 578.840942382813 + + + + + + + + +610735.9011191447 5035809.667567344 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610735.9011191447 5035809.667567344 573.996765136719 610735.9011191447 5035809.667567344 578.840942382813 + + + + + + + + +610778.2721552142 5035828.081908587 578.840942382813 610778.2721552142 5035828.081908587 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 578.840942382813 + + + + + + + + +610772.7202085907 5035808.0631751185 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610772.7202085907 5035808.0631751185 573.996765136719 610772.7202085907 5035808.0631751185 578.840942382813 + + + + + + + + +610735.6689161435 5035804.160897724 583.6851196289069 610735.6689161435 5035804.160897724 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610735.6689161435 5035804.160897724 583.6851196289069 + + + + + + + + +610734.2943063623 5035773.177748277 583.6851196289069 610735.6689161435 5035804.160897724 583.6851196289069 610734.2943063623 5035773.177748277 578.840942382813 610734.2943063623 5035773.177748277 583.6851196289069 + + + + + + + + +610735.9011191447 5035809.667567344 578.840942382813 610735.9011191447 5035809.667567344 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 578.840942382813 + + + + + + + + +610734.2943063623 5035773.177748277 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 610734.2943063623 5035773.177748277 573.996765136719 610734.2943063623 5035773.177748277 578.840942382813 + + + + + + + + + + + + +residential +1996 +7.002685546875 +1 +5 + + + + + + + + +610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 566.994079589844 610757.530966894 5035860.906479697 566.994079589844 610757.530966894 5035860.906479697 573.996765136719 + + + + + + + + +610782.6784284493 5035879.454642432 573.996765136719 610782.6784284493 5035879.454642432 566.994079589844 610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 + + + + + + + + +610818.6731258357 5035836.83501248 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610772.7202085907 5035808.0631751185 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 + + + + + + + + +610735.9011191447 5035809.667567344 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 + + + + + + + + +610782.6784284493 5035879.454642432 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 + + + + + + + + +610782.6784284493 5035879.454642432 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 + + + + + + + + +610778.2721552142 5035828.081908587 566.994079589844 610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610757.530966894 5035860.906479697 566.994079589844 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610818.6731258357 5035836.83501248 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 + + + + + + + + +610778.2721552142 5035828.081908587 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 + + + + + + + + +610772.7202085907 5035808.0631751185 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 + + + + + + + + +610735.9011191447 5035809.667567344 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610735.9011191447 5035809.667567344 566.994079589844 + + + + + + + + +610782.6784284493 5035879.454642432 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 610757.530966894 5035860.906479697 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 + + + + + + + + +610782.6784284493 5035879.454642432 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 + + + + + + + + +610818.6731258357 5035836.83501248 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 566.994079589844 + + + + + + + + +610818.6731258357 5035836.83501248 566.994079589844 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610818.6731258357 5035836.83501248 566.994079589844 + + + + + + + + +610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610772.7202085907 5035808.0631751185 573.996765136719 + + + + + + + + +610778.2721552142 5035828.081908587 573.996765136719 610778.2721552142 5035828.081908587 566.994079589844 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 + + + + + + + + +610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 566.994079589844 610735.9011191447 5035809.667567344 566.994079589844 610735.9011191447 5035809.667567344 573.996765136719 + + + + + + + + +610772.7202085907 5035808.0631751185 573.996765136719 610772.7202085907 5035808.0631751185 566.994079589844 610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 + + + + + + + + +610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610818.6731258357 5035836.83501248 573.996765136719 + + + + + + + + +610800.2212214476 5035770.347264212 573.996765136719 610800.2212214476 5035770.347264212 566.994079589844 610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 + + + + + + + + +610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610734.2943063623 5035773.177748277 573.996765136719 + + + + + + + + +610735.9011191447 5035809.667567344 573.996765136719 610735.9011191447 5035809.667567344 566.994079589844 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 + + + + + + + + +610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610800.2212214476 5035770.347264212 573.996765136719 + + + + + + + + +610734.2943063623 5035773.177748277 573.996765136719 610734.2943063623 5035773.177748277 566.994079589844 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 + + + + + + + + + + + + + diff --git a/tests/tests_data/FZK_Haus_LoD_2.gml b/tests/tests_data/FZK_Haus_LoD_2.gml new file mode 100644 index 0000000..eaea23f --- /dev/null +++ b/tests/tests_data/FZK_Haus_LoD_2.gml @@ -0,0 +1,240 @@ + + + AC14-FZK-Haus + + + 457842 5439083 111.8 + 457854 5439093 118.317669 + + + + + FZK-Haus (Forschungszentrum Karlsruhe, now KIT), created by Karl-Heinz + Haefele + AC14-FZK-Haus + 2017-01-23 + entirelyAboveTerrain + + 120.00 + + + New Building + + + NO + + 1000 + 1000 + 1000 + 2020 + 1030 + 6.52 + 2 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Outer Wall 1 (West) + + + + + + + 457842 5439088 118.317691453624 + 457842 5439093 115.430940107676 + 457842 5439093 111.8 + 457842 5439083 111.8 + 457842 5439083 115.430940107676 + 457842 5439088 118.317691453624 + + + + + + + + + + + Outer Wall 2 (South) + + + + + + + 457854 5439083 115.430940107676 + 457842 5439083 115.430940107676 + 457842 5439083 111.8 + 457854 5439083 111.8 + 457854 5439083 115.430940107676 + + + + + + + + + + + Outer Wall 3 (East) + + + + + + + 457854 5439088 118.317691453624 + 457854 5439083 115.430940107676 + 457854 5439083 111.8 + 457854 5439093 111.8 + 457854 5439093 115.430940107676 + 457854 5439088 118.317691453624 + + + + + + + + + + + Roof 1 (North) + + + + + + + 457842 5439088 118.317691453624 + 457854 5439088 118.317691453624 + 457854 5439093 115.430940107676 + 457842 5439093 115.430940107676 + 457842 5439088 118.317691453624 + + + + + + + + + + + Outer Wall 4 (North) + + + + + + + 457842 5439093 115.430940107676 + 457854 5439093 115.430940107676 + 457854 5439093 111.8 + 457842 5439093 111.8 + 457842 5439093 115.430940107676 + + + + + + + + + + + Roof 2 (South) + + + + + + + 457854 5439083 115.430940107676 + 457854 5439088 118.317691453624 + 457842 5439088 118.317691453624 + 457842 5439083 115.430940107676 + 457854 5439083 115.430940107676 + + + + + + + + + + + Bodenplatte + Base Surface + + + + + + + 457854 5439083 111.8 + 457842 5439083 111.8 + 457842 5439093 111.8 + 457854 5439093 111.8 + 457854 5439083 111.8 + + + + + + + + + + + + + + Eggenstein-Leopoldshafen + + 4711 + Spöcker Straße + + + 76344 + + + + + + + + + \ No newline at end of file diff --git a/tests/tests_data/eilat.geojson b/tests/tests_data/eilat.geojson new file mode 100644 index 0000000..2e4efd3 --- /dev/null +++ b/tests/tests_data/eilat.geojson @@ -0,0 +1,177 @@ +{ + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "id": 1, + "properties": { + "heightmax": 9, + "ANNEE_CONS": 1978, + "CODE_UTILI": "residential" + }, + "geometry": { + "coordinates": [ + [ + [ + 34.95217088371581, + 29.56694805860026 + ], + [ + 34.95262396587913, + 29.566952667742285 + ], + [ + 34.95261999147337, + 29.567024109421467 + ], + [ + 34.952169558914704, + 29.567019500282157 + ], + [ + 34.95217088371581, + 29.56694805860026 + ] + ] + ], + "type": "Polygon" + } + }, + { + "type": "Feature", + "id": 3, + "properties": { + "heightmax": 16, + "ANNEE_CONS": 2012, + "CODE_UTILI": "dormitory" + }, + "geometry": { + "coordinates": [ + [ + [ + 34.95176644317411, + 29.56827388702702 + ], + [ + 34.95176550020565, + 29.568180388329026 + ], + [ + 34.95179850408434, + 29.568180388329026 + ], + [ + 34.95179850408434, + 29.5681303582886 + ], + [ + 34.95176644317411, + 29.5681303582886 + ], + [ + 34.95176644317411, + 29.568038499789708 + ], + [ + 34.951874884488376, + 29.568038499789708 + ], + [ + 34.951874884488376, + 29.568058183760357 + ], + [ + 34.95192391882168, + 29.568058183760357 + ], + [ + 34.951922032885705, + 29.56804178045124 + ], + [ + 34.95205216246262, + 29.568042600617147 + ], + [ + 34.952051219494166, + 29.568129538124154 + ], + [ + 34.95201821561636, + 29.5681303582886 + ], + [ + 34.95201821561636, + 29.568176287507143 + ], + [ + 34.95204839059062, + 29.568176287507143 + ], + [ + 34.95205027652662, + 29.56827552735433 + ], + [ + 34.95195503676348, + 29.568274707190284 + ], + [ + 34.95195597973188, + 29.56825830391628 + ], + [ + 34.951849424353696, + 29.56825830391628 + ], + [ + 34.951849424353696, + 29.568274707190284 + ], + [ + 34.95176644317411, + 29.56827388702702 + ] + ] + ], + "type": "Polygon" + } + }, + { + "type": "Feature", + "id": 2, + "properties": { + "heightmax": 24, + "ANNEE_CONS": 2002, + "CODE_UTILI": "Hotel employ" + }, + "geometry": { + "coordinates": [ + [ + [ + 34.94972280674813, + 29.566224752287738 + ], + [ + 34.94974316291999, + 29.56597561012454 + ], + [ + 34.94989147217407, + 29.565980668855033 + ], + [ + 34.94987402402688, + 29.566233605043536 + ], + [ + 34.94972280674813, + 29.566224752287738 + ] + ] + ], + "type": "Polygon" + } + } + ] +} diff --git a/tests/tests_data/kelowna.obj b/tests/tests_data/kelowna.obj new file mode 100644 index 0000000..ef0ebad --- /dev/null +++ b/tests/tests_data/kelowna.obj @@ -0,0 +1,81 @@ +# https://github.com/mikedh/trimesh +v 329238.00000000 5528272.00000000 0.00000000 +v 329238.00000000 5528272.00000000 3.79999995 +v 329254.12500000 5528263.00000000 0.00000000 +v 329254.12500000 5528263.00000000 3.79999995 +v 329245.12500000 5528267.50000000 4.93084002 +v 329246.15625000 5528272.50000000 0.00000000 +v 329246.15625000 5528272.50000000 3.79999995 +v 329229.15625000 5528271.00000000 0.00000000 +v 329229.15625000 5528271.00000000 3.79999995 +v 329242.18750000 5528267.00000000 5.29822016 +v 329238.31250000 5528266.50000000 4.68875980 +v 329229.31250000 5528269.50000000 0.00000000 +v 329229.31250000 5528269.50000000 3.79999995 +v 329244.34375000 5528267.00000000 4.99910021 +v 329242.34375000 5528267.00000000 5.30000019 +v 329233.34375000 5528276.00000000 0.00000000 +v 329233.34375000 5528276.00000000 3.79999995 +v 329247.34375000 5528262.50000000 0.00000000 +v 329247.34375000 5528262.50000000 3.79999995 +v 329242.40625000 5528257.50000000 0.00000000 +v 329242.40625000 5528257.50000000 3.79999995 +v 329231.50000000 5528270.50000000 4.31147003 +v 329253.53125000 5528273.00000000 0.00000000 +v 329253.53125000 5528273.00000000 3.79999995 +v 329241.71875000 5528276.50000000 0.00000000 +v 329241.71875000 5528276.50000000 3.79999995 +v 329233.81250000 5528270.50000000 4.68364000 +v 329248.81250000 5528267.50000000 4.92572021 +f 22 9 13 +f 28 4 24 +f 23 6 7 +f 7 24 23 +f 6 25 26 +f 26 7 6 +f 25 1 2 +f 2 26 25 +f 1 16 17 +f 17 2 1 +f 16 8 9 +f 9 17 16 +f 8 12 13 +f 13 9 8 +f 12 20 21 +f 21 13 12 +f 20 18 19 +f 19 21 20 +f 18 3 4 +f 4 19 18 +f 3 23 24 +f 24 4 3 +f 6 23 3 +f 6 3 18 +f 6 18 20 +f 6 20 12 +f 6 12 8 +f 8 16 1 +f 6 8 1 +f 1 25 6 +f 24 7 14 +f 24 14 5 +f 5 28 24 +f 7 26 15 +f 15 14 7 +f 26 2 11 +f 26 11 10 +f 10 15 26 +f 2 17 27 +f 27 11 2 +f 17 9 22 +f 22 27 17 +f 21 10 11 +f 13 21 11 +f 13 11 27 +f 27 22 13 +f 21 19 5 +f 21 5 14 +f 21 14 15 +f 15 10 21 +f 19 4 28 +f 28 5 19 \ No newline at end of file diff --git a/tests/tests_data/levis.geojson b/tests/tests_data/levis.geojson new file mode 100644 index 0000000..04ed34e --- /dev/null +++ b/tests/tests_data/levis.geojson @@ -0,0 +1,73 @@ +{ + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "id": 1, + "properties": { + "OBJECTID_12": 1, + "gml_id": 1, + "citygml_me": 20, + "Z_Min": 46.1162, + "Z_Max": 66.1162, + "ANNEE_CONS": 2023, + "CODE_UTILI": 1000 + }, + "geometry": { + "coordinates": [ + [ + [ + -71.16553932594044, + 46.7895775031096 + ], + [ + -71.16535210635354, + 46.78972033813616 + ], + [ + -71.1654671126711, + 46.78979908036044 + ], + [ + -71.16525314742928, + 46.78995473325631 + ], + [ + -71.16480114585448, + 46.7896544143249 + ], + [ + -71.16486533542763, + 46.789394380725696 + ], + [ + -71.16467544127534, + 46.78927901330414 + ], + [ + -71.16454171299826, + 46.78930465053031 + ], + [ + -71.16445612690187, + 46.789766118513455 + ], + [ + -71.16519698155322, + 46.79023673853192 + ], + [ + -71.16583887727946, + 46.78976794972763 + ], + [ + -71.16553932594044, + 46.7895775031096 + ] + ] + ], + "type": "Polygon" + } + } + ] +} \ No newline at end of file diff --git a/tests/tests_data/one_building_in_kelowna_alkis.gml b/tests/tests_data/one_building_in_kelowna_alkis.gml new file mode 100644 index 0000000..05926e5 --- /dev/null +++ b/tests/tests_data/one_building_in_kelowna_alkis.gml @@ -0,0 +1,409 @@ + + + + +326011.03601000085 5526048.416990001 -1.6000000000058208 +329466.6600299999 5529018.72205 9.80000000000291 + + + + + +291 + + +m2 + +1996 +residential +5.3 +1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +329231.5010599997 5528270.404139999 4.311470000000554 329229.15295 5528271.14002 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 + + + + + + + + + + + + + + + + +329248.8121399991 5528267.658840001 4.925719999999274 329254.11205999926 5528262.99903 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 + + + + + + + + + + + + + + + + +329246.16602000035 5528272.533020001 0 329246.16602000035 5528272.533020001 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329253.52796000056 5528272.956 0 329246.16602000035 5528272.533020001 0 + + + + + + + + + + + + + + + + +329241.7199700009 5528276.307010001 0 329241.7199700009 5528276.307010001 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 329246.16602000035 5528272.533020001 0 329241.7199700009 5528276.307010001 0 + + + + + + + + + + + + + + + + +329237.9890100006 5528272.159 0 329237.9890100006 5528272.159 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 329241.7199700009 5528276.307010001 0 329237.9890100006 5528272.159 0 + + + + + + + + + + + + + + + + +329233.3360600006 5528276.213989999 0 329233.3360600006 5528276.213989999 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 329237.9890100006 5528272.159 0 329233.3360600006 5528276.213989999 0 + + + + + + + + + + + + + + + + +329229.15295 5528271.14002 0 329229.15295 5528271.14002 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 329233.3360600006 5528276.213989999 0 329229.15295 5528271.14002 0 + + + + + + + + + + + + + + + + +329229.30395000055 5528269.304020001 0 329229.30395000055 5528269.304020001 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 329229.15295 5528271.14002 0 329229.30395000055 5528269.304020001 0 + + + + + + + + + + + + + + + + +329242.40003000014 5528257.71503 0 329242.40003000014 5528257.71503 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329229.30395000055 5528269.304020001 0 329242.40003000014 5528257.71503 0 + + + + + + + + + + + + + + + + +329247.3289800007 5528262.52503 0 329247.3289800007 5528262.52503 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 329242.40003000014 5528257.71503 0 329247.3289800007 5528262.52503 0 + + + + + + + + + + + + + + + + +329254.11205999926 5528262.99903 0 329254.11205999926 5528262.99903 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 329247.3289800007 5528262.52503 0 329254.11205999926 5528262.99903 0 + + + + + + + + + + + + + + + + +329253.52796000056 5528272.956 0 329253.52796000056 5528272.956 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 329254.11205999926 5528262.99903 0 329253.52796000056 5528272.956 0 + + + + + + + + + + + + + + + + +329253.52796000056 5528272.956 0 329254.11205999926 5528262.99903 0 329247.3289800007 5528262.52503 0 329242.40003000014 5528257.71503 0 329229.30395000055 5528269.304020001 0 329229.15295 5528271.14002 0 329233.3360600006 5528276.213989999 0 329237.9890100006 5528272.159 0 329241.7199700009 5528276.307010001 0 329246.16602000035 5528272.533020001 0 329253.52796000056 5528272.956 0 + + + + + + + + + + + + + + + + +329246.16602000035 5528272.533020001 3.8000000000029104 329244.33748999983 5528267.074109999 4.999100000000908 329245.1323099993 5528267.42457 4.930840000000899 329248.8121399991 5528267.658840001 4.925719999999274 329253.52796000056 5528272.956 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 + + + + + + + + + + + + + + + + +329241.7199700009 5528276.307010001 3.8000000000029104 329242.3462899998 5528267.00502 5.30000000000291 329244.33748999983 5528267.074109999 4.999100000000908 329246.16602000035 5528272.533020001 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 + + + + + + + + + + + + + + + + +329237.9890100006 5528272.159 3.8000000000029104 329238.32637000084 5528266.609999999 4.6887600000045495 329242.1777599994 5528266.829500001 5.298219999996945 329242.3462899998 5528267.00502 5.30000000000291 329241.7199700009 5528276.307010001 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 + + + + + + + + + + + + + + + + +329233.3360600006 5528276.213989999 3.8000000000029104 329233.80010999925 5528270.5848900005 4.683640000002924 329238.32637000084 5528266.609999999 4.6887600000045495 329237.9890100006 5528272.159 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 + + + + + + + + + + + + + + + + +329229.15295 5528271.14002 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 329233.80010999925 5528270.5848900005 4.683640000002924 329233.3360600006 5528276.213989999 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 + + + + + + + + + + + + + + + + +329242.40003000014 5528257.71503 3.8000000000029104 329242.1777599994 5528266.829500001 5.298219999996945 329238.32637000084 5528266.609999999 4.6887600000045495 329233.80010999925 5528270.5848900005 4.683640000002924 329231.5010599997 5528270.404139999 4.311470000000554 329229.30395000055 5528269.304020001 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 + + + + + + + + + + + + + + + + +329247.3289800007 5528262.52503 3.8000000000029104 329245.1323099993 5528267.42457 4.930840000000899 329244.33748999983 5528267.074109999 4.999100000000908 329242.3462899998 5528267.00502 5.30000000000291 329242.1777599994 5528266.829500001 5.298219999996945 329242.40003000014 5528257.71503 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 + + + + + + + + + + + + + + + + +329254.11205999926 5528262.99903 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 329245.1323099993 5528267.42457 4.930840000000899 329247.3289800007 5528262.52503 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 + + + + + + + + + + + diff --git a/tests/tests_data/pluto_building.gml b/tests/tests_data/pluto_building.gml new file mode 100644 index 0000000..400eaec --- /dev/null +++ b/tests/tests_data/pluto_building.gml @@ -0,0 +1,420 @@ + + + Gowanus 2050 Best Practice Scenario + + + 299606.4441129853 55348.37638737355 0 + 301879.9050504853 57594.05119206105 62.04879541695123 + + + + + + + + + + + + + 301010.4314176728 57301.3749225298 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 + + + + + + + + + 301014.183859079 57308.78849674855 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 + + + + + + + + + 301004.1125700165 57288.87345768605 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 + + + + + + + + + 301024.4275114228 57311.0624225298 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 + + + + + + + + + 301000.3254606415 57281.3758990923 10.786276534199727 300997.2820036103 57275.3758990923 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 + + + + + + + + + 301004.1125700165 57288.87345768605 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 + + + + + + + + + 301017.183859079 57314.7147662798 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301017.183859079 57314.7147662798 10.786276534199727 + + + + + + + + + 301005.9055387665 57312.9716022173 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 301005.9055387665 57312.9716022173 10.786276534199727 + + + + + + + + + 300995.8337614228 57293.0555865923 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 300995.8337614228 57293.0555865923 10.786276534199727 + + + + + + + + + 301014.183859079 57308.78849674855 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 + + + + + + + + + 301005.9055387665 57312.9716022173 10.786276534199727 301005.9055387665 57312.9716022173 0.0 301002.1530973603 57305.55900456105 10.786276534199727 301005.9055387665 57312.9716022173 10.786276534199727 + + + + + + + + + 301002.1530973603 57305.55900456105 10.786276534199727 301005.9055387665 57312.9716022173 0.0 301002.1530973603 57305.55900456105 0.0 301002.1530973603 57305.55900456105 10.786276534199727 + + + + + + + + + 301017.183859079 57314.7147662798 0.0 301024.4275114228 57311.0624225298 0.0 301014.183859079 57308.78849674855 0.0 301017.183859079 57314.7147662798 0.0 + + + + + + + + + 301005.9055387665 57312.9716022173 0.0 301014.183859079 57308.78849674855 0.0 301002.1530973603 57305.55900456105 0.0 301005.9055387665 57312.9716022173 0.0 + + + + + + + + + 300995.8337614228 57293.0555865923 0.0 301004.1125700165 57288.87345768605 0.0 300992.0398161103 57285.56779362355 0.0 300995.8337614228 57293.0555865923 0.0 + + + + + + + + + 301014.183859079 57308.78849674855 0.0 301010.4314176728 57301.3749225298 0.0 301002.1530973603 57305.55900456105 0.0 301014.183859079 57308.78849674855 0.0 + + + + + + + + + 301010.4314176728 57301.3749225298 0.0 301024.4275114228 57311.0624225298 0.0 301004.1125700165 57288.87345768605 0.0 301010.4314176728 57301.3749225298 0.0 + + + + + + + + + 301014.183859079 57308.78849674855 0.0 301024.4275114228 57311.0624225298 0.0 301010.4314176728 57301.3749225298 0.0 301014.183859079 57308.78849674855 0.0 + + + + + + + + + 301024.4275114228 57311.0624225298 0.0 301004.5266325165 57271.70548893605 0.0 301004.1125700165 57288.87345768605 0.0 301024.4275114228 57311.0624225298 0.0 + + + + + + + + + 301004.1125700165 57288.87345768605 0.0 301000.3254606415 57281.3758990923 0.0 300992.0398161103 57285.56779362355 0.0 301004.1125700165 57288.87345768605 0.0 + + + + + + + + + 301000.3254606415 57281.3758990923 0.0 301004.5266325165 57271.70548893605 0.0 300997.2820036103 57275.3758990923 0.0 301000.3254606415 57281.3758990923 0.0 + + + + + + + + + 301004.1125700165 57288.87345768605 0.0 301004.5266325165 57271.70548893605 0.0 301000.3254606415 57281.3758990923 0.0 301004.1125700165 57288.87345768605 0.0 + + + + + + + + + 301014.183859079 57308.78849674855 10.786276534199727 301014.183859079 57308.78849674855 0.0 301005.9055387665 57312.9716022173 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 + + + + + + + + + 301005.9055387665 57312.9716022173 10.786276534199727 301014.183859079 57308.78849674855 0.0 301005.9055387665 57312.9716022173 0.0 301005.9055387665 57312.9716022173 10.786276534199727 + + + + + + + + + 301017.183859079 57314.7147662798 10.786276534199727 301017.183859079 57314.7147662798 0.0 301014.183859079 57308.78849674855 10.786276534199727 301017.183859079 57314.7147662798 10.786276534199727 + + + + + + + + + 301014.183859079 57308.78849674855 10.786276534199727 301017.183859079 57314.7147662798 0.0 301014.183859079 57308.78849674855 0.0 301014.183859079 57308.78849674855 10.786276534199727 + + + + + + + + + 301002.1530973603 57305.55900456105 10.786276534199727 301002.1530973603 57305.55900456105 0.0 301010.4314176728 57301.3749225298 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 + + + + + + + + + 301010.4314176728 57301.3749225298 10.786276534199727 301002.1530973603 57305.55900456105 0.0 301010.4314176728 57301.3749225298 0.0 301010.4314176728 57301.3749225298 10.786276534199727 + + + + + + + + + 301024.4275114228 57311.0624225298 10.786276534199727 301024.4275114228 57311.0624225298 0.0 301017.183859079 57314.7147662798 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 + + + + + + + + + 301017.183859079 57314.7147662798 10.786276534199727 301024.4275114228 57311.0624225298 0.0 301017.183859079 57314.7147662798 0.0 301017.183859079 57314.7147662798 10.786276534199727 + + + + + + + + + 301004.5266325165 57271.70548893605 10.786276534199727 301004.5266325165 57271.70548893605 0.0 301024.4275114228 57311.0624225298 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 + + + + + + + + + 301024.4275114228 57311.0624225298 10.786276534199727 301004.5266325165 57271.70548893605 0.0 301024.4275114228 57311.0624225298 0.0 301024.4275114228 57311.0624225298 10.786276534199727 + + + + + + + + + 300997.2820036103 57275.3758990923 10.786276534199727 300997.2820036103 57275.3758990923 0.0 301004.5266325165 57271.70548893605 10.786276534199727 300997.2820036103 57275.3758990923 10.786276534199727 + + + + + + + + + 301004.5266325165 57271.70548893605 10.786276534199727 300997.2820036103 57275.3758990923 0.0 301004.5266325165 57271.70548893605 0.0 301004.5266325165 57271.70548893605 10.786276534199727 + + + + + + + + + 301010.4314176728 57301.3749225298 10.786276534199727 301010.4314176728 57301.3749225298 0.0 301004.1125700165 57288.87345768605 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 + + + + + + + + + 301004.1125700165 57288.87345768605 10.786276534199727 301010.4314176728 57301.3749225298 0.0 301004.1125700165 57288.87345768605 0.0 301004.1125700165 57288.87345768605 10.786276534199727 + + + + + + + + + 301004.1125700165 57288.87345768605 10.786276534199727 301004.1125700165 57288.87345768605 0.0 300995.8337614228 57293.0555865923 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 + + + + + + + + + 300995.8337614228 57293.0555865923 10.786276534199727 301004.1125700165 57288.87345768605 0.0 300995.8337614228 57293.0555865923 0.0 300995.8337614228 57293.0555865923 10.786276534199727 + + + + + + + + + 301000.3254606415 57281.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 0.0 300997.2820036103 57275.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 + + + + + + + + + 300997.2820036103 57275.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 0.0 300997.2820036103 57275.3758990923 0.0 300997.2820036103 57275.3758990923 10.786276534199727 + + + + + + + + + 300995.8337614228 57293.0555865923 10.786276534199727 300995.8337614228 57293.0555865923 0.0 300992.0398161103 57285.56779362355 10.786276534199727 300995.8337614228 57293.0555865923 10.786276534199727 + + + + + + + + + 300992.0398161103 57285.56779362355 10.786276534199727 300995.8337614228 57293.0555865923 0.0 300992.0398161103 57285.56779362355 0.0 300992.0398161103 57285.56779362355 10.786276534199727 + + + + + + + + + 300992.0398161103 57285.56779362355 10.786276534199727 300992.0398161103 57285.56779362355 0.0 301000.3254606415 57281.3758990923 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 + + + + + + + + + 301000.3254606415 57281.3758990923 10.786276534199727 300992.0398161103 57285.56779362355 0.0 301000.3254606415 57281.3758990923 0.0 301000.3254606415 57281.3758990923 10.786276534199727 + + + + + + + + + 1965 + W4 + + + \ No newline at end of file diff --git a/tests/tests_data/w2w_user_output.csv b/tests/tests_data/w2w_user_output.csv new file mode 100644 index 0000000..bb3612f --- /dev/null +++ b/tests/tests_data/w2w_user_output.csv @@ -0,0 +1,14 @@ +,Monthly HP Electricity Demand (kWh),Monthly Fuel Consumption of Auxiliary Heater (m3) +Jan,1031544.62,24276356.0 +Feb,874352.562,19785768.0 +Mar,691775.25,117312.656 +Apr,280416.469,-0.0 +May,0.0,40314676.0 +Jun,0.0,5447721.0 +Jul,0.0,1187115.88 +Aug,0.0,1961530.88 +Sept,0.0,20623850.0 +Oct,191220.531,-0.0 +Nov,423974.062,-0.0 +Dec,848334.875,6793204.5 +Total,4341618.369,120507534.91600001 From ec05c279a510d237ec54e9c42d02e2020c4e9ef7 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:47:36 -0500 Subject: [PATCH 14/25] Temporary remove of gitignore to test --- tests/test_city_merge.py | 108 - tests/test_construction_catalog.py | 73 - tests/test_construction_factory.py | 308 - tests/test_costs_catalog.py | 28 - tests/test_custom_insel_block.py | 138 - tests/test_enrichement.py | 161 - tests/test_exports.py | 150 - tests/test_geometry_factory.py | 186 - tests/test_greenery_catalog.py | 37 - tests/test_greenery_in_idf.py | 79 - tests/test_insel_exports.py | 136 - tests/test_results_import.py | 94 - tests/test_systems_catalog.py | 36 - tests/test_systems_factory.py | 118 - tests/test_usage_catalog.py | 23 - tests/test_usage_factory.py | 184 - tests/tests_data/C40_Final.gml | 3377 ------- tests/tests_data/FZK_Haus_LoD_2.gml | 240 - tests/tests_data/eilat.geojson | 177 - tests/tests_data/kelowna.obj | 81 - tests/tests_data/levis.geojson | 73 - tests/tests_data/one_building_in_kelowna.gml | 409 - .../one_building_in_kelowna_alkis.gml | 409 - .../one_building_in_kelowna_sra_SW.out | 8761 ---------------- tests/tests_data/pluto_building.gml | 420 - tests/tests_data/w2w_user_output.csv | 14 - tests/tests_outputs/.gitignore | 3 - tests/tests_outputs/Montreal.cli | 8764 +++++++++++++++++ 28 files changed, 8764 insertions(+), 15823 deletions(-) delete mode 100644 tests/test_city_merge.py delete mode 100644 tests/test_construction_catalog.py delete mode 100644 tests/test_construction_factory.py delete mode 100644 tests/test_costs_catalog.py delete mode 100644 tests/test_custom_insel_block.py delete mode 100644 tests/test_enrichement.py delete mode 100644 tests/test_exports.py delete mode 100644 tests/test_geometry_factory.py delete mode 100644 tests/test_greenery_catalog.py delete mode 100644 tests/test_greenery_in_idf.py delete mode 100644 tests/test_insel_exports.py delete mode 100644 tests/test_results_import.py delete mode 100644 tests/test_systems_catalog.py delete mode 100644 tests/test_systems_factory.py delete mode 100644 tests/test_usage_catalog.py delete mode 100644 tests/test_usage_factory.py delete mode 100644 tests/tests_data/C40_Final.gml delete mode 100644 tests/tests_data/FZK_Haus_LoD_2.gml delete mode 100644 tests/tests_data/eilat.geojson delete mode 100644 tests/tests_data/kelowna.obj delete mode 100644 tests/tests_data/levis.geojson delete mode 100644 tests/tests_data/one_building_in_kelowna.gml delete mode 100644 tests/tests_data/one_building_in_kelowna_alkis.gml delete mode 100644 tests/tests_data/one_building_in_kelowna_sra_SW.out delete mode 100644 tests/tests_data/pluto_building.gml delete mode 100644 tests/tests_data/w2w_user_output.csv delete mode 100644 tests/tests_outputs/.gitignore create mode 100644 tests/tests_outputs/Montreal.cli diff --git a/tests/test_city_merge.py b/tests/test_city_merge.py deleted file mode 100644 index 24bdc80..0000000 --- a/tests/test_city_merge.py +++ /dev/null @@ -1,108 +0,0 @@ -""" -TestCityMerge test and validate the merge of several cities into one -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca -""" - -import copy -import distutils.spawn -import subprocess -from pathlib import Path -from unittest import TestCase - -from hub.city_model_structure.city import City -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.results_factory import ResultFactory -from hub.exports.exports_factory import ExportsFactory -import hub.helpers.constants as cte - - -class TestCityMerge(TestCase): - """ - Functional TestCityMerge - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - self._executable = 'sra' - - def test_merge(self): - file_path = Path(self._example_path / 'test.geojson').resolve() - full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city - self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') - odd_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - for building in full_city.buildings: - if int(building.name) % 2 == 0: - even_city.add_city_object(copy.deepcopy(building)) - else: - odd_city.add_city_object(copy.deepcopy(building)) - self.assertEqual(8, len(odd_city.buildings), 'Wrong number of odd buildings') - self.assertEqual(9, len(even_city.buildings), 'Wrong number of par buildings') - merged_city = odd_city.merge(even_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - merged_city = even_city.merge(odd_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - merged_city = full_city.merge(odd_city).merge(even_city) - self.assertEqual(17, len(merged_city.buildings), 'Wrong number of buildings in merged city') - - def test_merge_with_radiation(self): - sra = distutils.spawn.find_executable('sra') - file_path = Path(self._example_path / 'test.geojson').resolve() - - full_city = GeometryFactory('geojson', file_path, height_field='citygml_me').city - even_city = City(full_city.lower_corner, full_city.upper_corner, full_city.srs_name) - for building in full_city.buildings: - if int(building.name) % 2 == 0: - even_city.add_city_object(copy.deepcopy(building)) - ExportsFactory('sra', full_city, self._output_path).export() - sra_file = str((self._output_path / f'{full_city.name}_sra.xml').resolve()) - subprocess.run([sra, sra_file], stdout=subprocess.DEVNULL) - ResultFactory('sra', full_city, self._output_path).enrich() - self.assertEqual(17, len(full_city.buildings), 'Wrong number of buildings') - merged_city = full_city.merge(even_city) - - full_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - full_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - - merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) - - merged_city = even_city.merge(full_city) - merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertEqual(full_city_building_total_radiation, merged_city_building_total_radiation) - - for building in even_city.buildings: - for surface in building.surfaces: - surface.global_irradiance[cte.YEAR] = [3] - - merged_city = full_city.merge(even_city) - first_merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - first_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - merged_city = even_city.merge(full_city) - second_merged_city_building_total_radiation = 0 - for building in merged_city.buildings: - for surface in building.surfaces: - if surface.global_irradiance: - second_merged_city_building_total_radiation += surface.global_irradiance[cte.YEAR][0] - self.assertAlmostEqual(first_merged_city_building_total_radiation, second_merged_city_building_total_radiation, 8) - diff --git a/tests/test_construction_catalog.py b/tests/test_construction_catalog.py deleted file mode 100644 index 5c5a0e9..0000000 --- a/tests/test_construction_catalog.py +++ /dev/null @@ -1,73 +0,0 @@ -""" -TestConstructionCatalog -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -Contributors Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" - -from unittest import TestCase -from hub.catalog_factories.construction_catalog_factory import ConstructionCatalogFactory - - -class TestConstructionCatalog(TestCase): - - def test_nrel_catalog(self): - catalog = ConstructionCatalogFactory('nrel').catalog - catalog_categories = catalog.names() - constructions = catalog.names('constructions') - windows = catalog.names('windows') - materials = catalog.names('materials') - self.assertEqual(33, len(constructions['constructions'])) - self.assertEqual(5, len(windows['windows'])) - self.assertEqual(33, len(materials['materials'])) - with self.assertRaises(ValueError): - catalog.names('unknown') - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') - - def test_nrcan_catalog(self): - catalog = ConstructionCatalogFactory('nrcan').catalog - catalog_categories = catalog.names() - constructions = catalog.names('constructions') - windows = catalog.names('windows') - materials = catalog.names('materials') - self.assertEqual(540, len(constructions['constructions'])) - self.assertEqual(96, len(windows['windows'])) - self.assertEqual(552, len(materials['materials'])) - with self.assertRaises(ValueError): - catalog.names('unknown') - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') - - def test_eilat_catalog(self): - catalog = ConstructionCatalogFactory('eilat').catalog - catalog_categories = catalog.names() - constructions = catalog.names('constructions') - windows = catalog.names('windows') - materials = catalog.names('materials') - self.assertEqual(9, len(constructions['constructions'])) - self.assertEqual(3, len(windows['windows'])) - self.assertEqual(553, len(materials['materials'])) - with self.assertRaises(ValueError): - catalog.names('unknown') - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') diff --git a/tests/test_construction_factory.py b/tests/test_construction_factory.py deleted file mode 100644 index 710894b..0000000 --- a/tests/test_construction_factory.py +++ /dev/null @@ -1,308 +0,0 @@ -""" -TestConstructionFactory test and validate the city model structure construction parameters -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -from pathlib import Path -from unittest import TestCase - -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.construction_factory import ConstructionFactory -from hub.helpers.dictionaries import Dictionaries - - -class TestConstructionFactory(TestCase): - """ - TestConstructionFactory TestCase - """ - def setUp(self) -> None: - """ - Configure test environment - :return: - """ - self._city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - self.assertIsNotNone(self._city.level_of_detail.geometry, 'wrong construction level of detail') - return self._city - - @staticmethod - def _internal_function(function_format, original_function): - if function_format == 'hft': - new_function = Dictionaries().hft_function_to_hub_function[original_function] - elif function_format == 'pluto': - new_function = Dictionaries().pluto_function_to_hub_function[original_function] - else: - raise Exception('Function key not recognized. Implemented only "hft" and "pluto"') - return new_function - - def test_citygml_function(self): - """ - Test city objects' functions in the city - """ - # case 1: hft - file = 'one_building_in_kelowna.gml' - function_format = 'hft' - city = self._get_citygml(file) - for building in city.buildings: - building.function = self._internal_function(function_format, building.function) - self.assertEqual('residential', building.function, 'format hft') - - # case 2: Pluto - file = 'pluto_building.gml' - function_format = 'pluto' - city = self._get_citygml(file) - for building in city.buildings: - building.function = self._internal_function(function_format, building.function) - self.assertEqual('education', building.function, 'format pluto') - - # case 3: Alkis - file = 'one_building_in_kelowna_alkis.gml' - function_format = 'alkis' - city = self._get_citygml(file) - for building in city.buildings: - self.assertRaises(Exception, lambda: self._internal_function(function_format, building.function)) - - def _check_buildings(self, city): - for building in city.buildings: - self.assertIsNotNone(building.name, 'building name is none') - self.assertIsNotNone(building.type, 'building type is none') - self.assertIsNotNone(building.volume, 'building volume is none') - self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') - self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') - self.assertIsNotNone(building.surfaces, 'building surfaces is none') - self.assertIsNotNone(building.centroid, 'building centroid is none') - self.assertIsNotNone(building.max_height, 'building max_height is none') - self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') - self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') - self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') - self.assertEqual(len(building.beam), 0, 'building beam is calculated') - self.assertIsNotNone(building.lower_corner, 'building lower corner is none') - self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') - self.assertIsNotNone(building.internal_zones, 'no internal zones created') - self.assertIsNotNone(building.grounds, 'building grounds is none') - self.assertIsNotNone(building.walls, 'building walls is none') - self.assertIsNotNone(building.roofs, 'building roofs is none') - self.assertIsNotNone(building.internal_walls, 'building internal walls is none') - self.assertIsNone(building.basement_heated, 'building basement_heated is not none') - self.assertIsNone(building.attic_heated, 'building attic_heated is not none') - self.assertIsNone(building.terrains, 'building terrains is not none') - self.assertIsNotNone(building.year_of_construction, 'building year_of_construction is none') - self.assertIsNotNone(building.function, 'building function is none') - self.assertIsNotNone(building.average_storey_height, 'building average_storey_height is none') - self.assertIsNotNone(building.storeys_above_ground, 'building storeys_above_ground is none') - self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') - self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') - self.assertIsNotNone(building.eave_height, 'building eave height is none') - self.assertIsNotNone(building.roof_type, 'building roof type is none') - self.assertIsNotNone(building.floor_area, 'building floor_area is none') - self.assertIsNone(building.households, 'building households is not none') - self.assertFalse(building.is_conditioned, 'building is conditioned') - self.assertIsNotNone(building.shell, 'building shell is none') - - def _check_thermal_zones(self, internal_zone): - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self.assertIsNotNone(thermal_zone.id, 'thermal_zone id is none') - self.assertIsNotNone(thermal_zone.footprint_area, 'thermal_zone floor area is none') - self.assertTrue(len(thermal_zone.thermal_boundaries) > 0, 'thermal_zone thermal_boundaries not defined') - self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, 'additional_thermal_bridge_u_value is none') - self.assertIsNotNone(thermal_zone.effective_thermal_capacity, 'thermal_zone effective_thermal_capacity is none') - self.assertIsNotNone(thermal_zone.infiltration_rate_system_off, - 'thermal_zone infiltration_rate_system_off is none') - self.assertIsNotNone(thermal_zone.infiltration_rate_system_on, 'thermal_zone infiltration_rate_system_on is none') - self.assertIsNotNone(thermal_zone.volume, 'thermal_zone volume is none') - self.assertIsNone(thermal_zone.ordinate_number, 'thermal_zone ordinate number is not none') - self.assertIsNotNone(thermal_zone.view_factors_matrix, 'thermal_zone view factors matrix is none') - self.assertIsNotNone(thermal_zone.total_floor_area, 'thermal zone total_floor_area is none') - self.assertIsNone(thermal_zone.usage_name, 'thermal_zone usage is not none') - self.assertIsNone(thermal_zone.hours_day, 'thermal_zone hours a day is not none') - self.assertIsNone(thermal_zone.days_year, 'thermal_zone days a year is not none') - self.assertIsNone(thermal_zone.mechanical_air_change, 'thermal_zone mechanical air change is not none') - self.assertIsNone(thermal_zone.occupancy, 'thermal_zone occupancy is not none') - self.assertIsNone(thermal_zone.lighting, 'thermal_zone lighting is not none') - self.assertIsNone(thermal_zone.appliances, 'thermal_zone appliances is not none') - self.assertIsNone(thermal_zone.thermal_control, 'thermal_zone thermal control is not none') - self.assertIsNone(thermal_zone.internal_gains, 'thermal_zone internal gains not returns none') - - def _check_thermal_boundaries(self, thermal_zone): - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.id, 'thermal_boundary id is none') - self.assertIsNotNone(thermal_boundary.parent_surface, 'thermal_boundary surface is none') - self.assertIsNotNone(thermal_boundary.thermal_zones, 'thermal_boundary delimits no thermal zone') - self.assertIsNotNone(thermal_boundary.opaque_area, 'thermal_boundary area is none') - self.assertIsNotNone(thermal_boundary.thickness, 'thermal_boundary thickness is none') - self.assertIsNotNone(thermal_boundary.type, 'thermal_boundary type is none') - self.assertIsNotNone(thermal_boundary.thermal_openings, 'thermal_openings is none') - self.assertIsNotNone(thermal_boundary.window_ratio, 'window_ratio is none') - self.assertIsNone(thermal_boundary.windows_areas, 'windows_areas is not none') - self.assertIsNotNone(thermal_boundary.u_value, 'u_value is none') - self.assertIsNotNone(thermal_boundary.hi, 'hi is none') - self.assertIsNotNone(thermal_boundary.he, 'he is none') - self.assertIsNotNone(thermal_boundary.internal_surface, 'virtual_internal_surface is none') - self.assertIsNotNone(thermal_boundary.layers, 'layers is not none') - - def _check_thermal_openings(self, thermal_boundary): - for thermal_opening in thermal_boundary.thermal_openings: - self.assertIsNotNone(thermal_opening.id, 'thermal opening id is not none') - self.assertIsNotNone(thermal_opening.area, 'thermal opening area is not none') - self.assertIsNotNone(thermal_opening.frame_ratio, 'thermal opening frame_ratio is none') - self.assertIsNotNone(thermal_opening.g_value, 'thermal opening g_value is none') - self.assertIsNotNone(thermal_opening.overall_u_value, 'thermal opening overall_u_value is none') - self.assertIsNotNone(thermal_opening.hi, 'thermal opening hi is none') - self.assertIsNotNone(thermal_opening.he, 'thermal opening he is none') - - def _check_surfaces(self, thermal_boundary): - external_surface = thermal_boundary.external_surface - internal_surface = thermal_boundary.internal_surface - self.assertIsNotNone(external_surface.short_wave_reflectance, - 'external surface short_wave_reflectance id is not none') - self.assertIsNotNone(external_surface.long_wave_emittance, 'external surface long_wave_emittance id is not none') - self.assertIsNotNone(internal_surface.short_wave_reflectance, - 'external surface short_wave_reflectance id is not none') - self.assertIsNotNone(internal_surface.long_wave_emittance, 'external surface long_wave_emittance id is not none') - - def test_city_with_construction_extended_library(self): - """ - Enrich the city with the construction information and verify it - """ - file = 'one_building_in_kelowna.gml' - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 1980 - building.function = self._internal_function('hft', building.function) - ConstructionFactory('nrcan', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - file = 'pluto_building.gml' - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 1980 - building.function = self._internal_function('pluto', building.function) - ConstructionFactory('nrcan', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - file = 'pluto_building.gml' - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 2006 - building.function = self._internal_function('pluto', building.function) - ConstructionFactory('nrel', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - file = 'one_building_in_kelowna.gml' - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 1980 - building.function = self._internal_function('hft', building.function) - ConstructionFactory('nrcan', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - file_path = (self._example_path / 'test.geojson').resolve() - self._city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - ConstructionFactory('nrcan', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - def test_nrcan_construction_factory(self): - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - ConstructionFactory('nrcan', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) - - def test_eilat_construction_factory(self): - file = 'eilat.geojson' - file_path = (self._example_path / file).resolve() - city = GeometryFactory('geojson', - path=file_path, - height_field='heightmax', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().eilat_function_to_hub_function).city - ConstructionFactory('eilat', city).enrich() - - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self._check_thermal_zones(internal_zone) - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_boundaries(thermal_zone) - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.layers, 'layers is none') - self._check_thermal_openings(thermal_boundary) - self._check_surfaces(thermal_boundary) \ No newline at end of file diff --git a/tests/test_costs_catalog.py b/tests/test_costs_catalog.py deleted file mode 100644 index 8f87385..0000000 --- a/tests/test_costs_catalog.py +++ /dev/null @@ -1,28 +0,0 @@ -""" -TestMontrealCustomCatalog -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Atiya atiya.atiya@mail.concordia.ca -Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" - -from unittest import TestCase -from hub.catalog_factories.costs_catalog_factory import CostsCatalogFactory - - -class TestCostsCatalog(TestCase): - - def test_costs_catalog(self): - catalog = CostsCatalogFactory('montreal_custom').catalog - catalog_categories = catalog.names() - self.assertIsNotNone(catalog, 'catalog is none') - content = catalog.entries() - self.assertTrue(len(content.archetypes) == 2) - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') diff --git a/tests/test_custom_insel_block.py b/tests/test_custom_insel_block.py deleted file mode 100644 index 822b74b..0000000 --- a/tests/test_custom_insel_block.py +++ /dev/null @@ -1,138 +0,0 @@ -""" -TestInselExports test -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -import logging -from pathlib import Path -from unittest import TestCase -import pandas as pd -import hub.helpers.constants as cte -from hub.helpers.monthly_values import MonthlyValues -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.usage_factory import UsageFactory -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.imports.weather_factory import WeatherFactory - - -class TestExports(TestCase): - """ - TestExports class contains the unittest for export functionality - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._complete_city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _set_irradiance_surfaces(self, city): - """ - saves in building surfaces the correspondent irradiance at different time-scales depending on the mode - if building is None, it saves all buildings' surfaces in file, if building is specified, it saves only that - specific building values - :parameter city: city - :return: none - """ - city.level_of_detail.surface_radiation = 2 - path = (self._example_path / "one_building_in_kelowna_sra_SW.out").resolve() - self._results = pd.read_csv(path, sep='\s+', header=0).to_dict(orient='list') - _irradiance = {} - for key in self._results: - header_name = key.split(':') - result = [x / cte.WATTS_HOUR_TO_JULES for x in self._results[key]] - city_object_name = header_name[1] - building = self._city.city_object(city_object_name) - surface_id = header_name[2] - surface = building.surface_by_id(surface_id) - monthly_result = MonthlyValues.get_total_month(result) - yearly_result = [sum(result)] - _irradiance[cte.YEAR] = yearly_result - _irradiance[cte.MONTH] = monthly_result - _irradiance[cte.HOUR] = result - surface.global_irradiance = _irradiance - - def test_insel_monthly_energy_balance_export(self): - """ - export to Insel MonthlyEnergyBalance - """ - city = self._get_citygml('one_building_in_kelowna.gml') - WeatherFactory('epw', city).enrich() - for building in city.buildings: - building.external_temperature[cte.MONTH] = MonthlyValues().\ - get_mean_values(building.external_temperature[cte.HOUR]) - self._set_irradiance_surfaces(city) - - for building in city.buildings: - self.assertIsNotNone(building.external_temperature[cte.MONTH], f'building {building.name} ' - f'external_temperature is none') - for surface in building.surfaces: - if surface.type != 'Ground': - self.assertIsNotNone(surface.global_irradiance[cte.MONTH], f'surface in building {building.name} ' - f'global_irradiance is none') - - for building in city.buildings: - building.year_of_construction = 2006 - if building.function is None: - building.function = 'large office' - building.attic_heated = 0 - building.basement_heated = 0 - ConstructionFactory('nrel', city).enrich() - UsageFactory('comnet', city).enrich() - - # parameters written: - for building in city.buildings: - self.assertIsNotNone(building.volume, f'building {building.name} volume is none') - self.assertIsNotNone(building.average_storey_height, f'building {building.name} average_storey_height is none') - self.assertIsNotNone(building.storeys_above_ground, f'building {building.name} storeys_above_ground is none') - self.assertIsNotNone(building.attic_heated, f'building {building.name} attic_heated is none') - self.assertIsNotNone(building.basement_heated, f'building {building.name} basement_heated is none') - for internal_zone in building.internal_zones: - self.assertIsNotNone(internal_zone.area, f'internal zone {internal_zone.id} area is none') - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self.assertIsNotNone(thermal_zone.indirectly_heated_area_ratio, f'thermal zone {thermal_zone.id} ' - f'indirectly_heated_area_ratio is none') - self.assertIsNotNone(thermal_zone.effective_thermal_capacity, f'thermal zone {thermal_zone.id} ' - f'effective_thermal_capacity is none') - self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, f'thermal zone {thermal_zone.id} ' - f'additional_thermal_bridge_u_value ' - f'is none') - self.assertIsNotNone(thermal_zone.total_floor_area, f'thermal zone {thermal_zone.id} ' - f'total_floor_area is none') - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.type) - self.assertIsNotNone(thermal_boundary.opaque_area) - if thermal_boundary.type in (cte.WALL, cte.ROOF): - self.assertIsNotNone(thermal_boundary.window_ratio) - self.assertIsNotNone(thermal_boundary.u_value) - self.assertIsNotNone(thermal_boundary.thermal_openings) - if thermal_boundary.type is not cte.GROUND: - self.assertIsNotNone(thermal_boundary.external_surface.short_wave_reflectance) - - for usage in internal_zone.usages: - self.assertIsNotNone(usage.percentage, f'usage zone {usage.name} percentage is none') - self.assertIsNotNone(usage.internal_gains, f'usage zone {usage.name} internal_gains is none') - self.assertIsNotNone(usage.thermal_control, f'usage zone {usage.name} thermal_control is none') - self.assertIsNotNone(usage.hours_day, f'usage zone {usage.name} hours_day is none') - self.assertIsNotNone(usage.days_year, f'usage zone {usage.name} days_year is none') - self.assertIsNotNone( - usage.mechanical_air_change, - f'usage zone {usage.name} mechanical_air_change is none' - ) - # export files - try: - EnergyBuildingsExportsFactory('insel_monthly_energy_balance', city, self._output_path, 'MEB_Montreal').export() - except Exception as err: - logging.exception(err) - self.fail("Insel MonthlyEnergyBalance ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/test_enrichement.py b/tests/test_enrichement.py deleted file mode 100644 index 531acd6..0000000 --- a/tests/test_enrichement.py +++ /dev/null @@ -1,161 +0,0 @@ -""" -TestGeometryFactory test and validate the city model structure geometric parameters -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -from pathlib import Path -from unittest import TestCase -from hub.imports.geometry_factory import GeometryFactory -from hub.helpers.dictionaries import Dictionaries -from hub.imports.usage_factory import UsageFactory -from hub.imports.construction_factory import ConstructionFactory - - -class TestGeometryFactory(TestCase): - """ - Non-functional TestGeometryFactory - Load testing - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _check_result(self, city): - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self.assertIsNot(len(internal_zone.usages), 0, 'no building usages defined') - for usage in internal_zone.usages: - self.assertIsNotNone(usage.id, 'usage id is none') - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_thermal_zone(thermal_zone) - - def _check_buildings(self, city): - for building in city.buildings: - self.assertIsNotNone(building.internal_zones, 'no internal zones created') - for internal_zone in building.internal_zones: - self.assertIsNotNone(internal_zone.usages, 'usage zones are not defined') - self.assertIsNotNone(internal_zone.thermal_zones_from_internal_zones, 'thermal zones are not defined') - self.assertIsNone(building.basement_heated, 'building basement_heated is not none') - self.assertIsNone(building.attic_heated, 'building attic_heated is not none') - self.assertIsNotNone(building.average_storey_height, 'building average_storey_height is none') - self.assertIsNotNone(building.storeys_above_ground, 'building storeys_above_ground is none') - self.assertTrue(building.is_conditioned, 'building is_conditioned is not conditioned') - - def _check_thermal_zone(self, thermal_zone): - self.assertIsNotNone(thermal_zone.id, 'thermal_zone id is none') - self.assertIsNotNone(thermal_zone.usage_name, 'thermal_zone usage is not none') - self.assertIsNotNone(thermal_zone.hours_day, 'thermal_zone hours a day is none') - self.assertIsNotNone(thermal_zone.days_year, 'thermal_zone days a year is none') - self.assertIsNotNone(thermal_zone.occupancy, 'thermal_zone occupancy is none') - self.assertIsNotNone(thermal_zone.thermal_control, 'thermal_zone thermal control is none') - self.assertIsNotNone(thermal_zone.internal_gains, 'thermal_zone internal gains returns none') - - def _check_extra_thermal_zone(self, thermal_zone): - self.assertIsNotNone(thermal_zone.lighting, 'thermal_zone lighting is none') - self.assertIsNotNone(thermal_zone.appliances, 'thermal_zone appliances is none') - self.assertIsNotNone(thermal_zone.mechanical_air_change, 'thermal_zone mechanical air change is none') - - @staticmethod - def _prepare_case_usage_first(city, input_key, construction_key, usage_key): - if input_key == 'pluto': - for building in city.buildings: - building.function = Dictionaries().pluto_function_to_hub_function[building.function] - elif input_key == 'hft': - for building in city.buildings: - building.function = Dictionaries().hft_function_to_hub_function[building.function] - UsageFactory(usage_key, city).enrich() - ConstructionFactory(construction_key, city).enrich() - - @staticmethod - def _prepare_case_construction_first(city, input_key, construction_key, usage_key): - if input_key == 'pluto': - for building in city.buildings: - building.function = Dictionaries().pluto_function_to_hub_function[building.function] - elif input_key == 'hft': - for building in city.buildings: - building.function = Dictionaries().hft_function_to_hub_function[building.function] - ConstructionFactory(construction_key, city).enrich() - UsageFactory(usage_key, city).enrich() - - def _test_hft(self, file): - _construction_keys = ['nrel'] - _usage_keys = ['comnet'] - for construction_key in _construction_keys: - for usage_key in _usage_keys: - print(construction_key, usage_key) - # construction factory called first - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 2006 - self.assertTrue(len(city.buildings) > 0) - self._prepare_case_construction_first(city, 'hft', construction_key, usage_key) - self._check_result(city) - if usage_key == 'comnet': - for building in city.buildings: - for internal_zone in building.internal_zones: - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_extra_thermal_zone(thermal_zone) - # usage factory called first - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 2006 - self.assertTrue(len(city.buildings) > 0) - self._prepare_case_usage_first(city, 'hft', construction_key, usage_key) - self._check_result(city) - if usage_key == 'comnet': - for building in city.buildings: - for internal_zone in building.internal_zones: - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_extra_thermal_zone(thermal_zone) - - def _test_pluto(self, file): - _construction_keys = ['nrel'] - _usage_keys = ['comnet', 'nrcan'] - for construction_key in _construction_keys: - for usage_key in _usage_keys: - # construction factory called first - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 2006 - self.assertTrue(len(city.buildings) > 0) - self._prepare_case_construction_first(city, 'pluto', construction_key, usage_key) - self._check_result(city) - if usage_key == 'comnet': - for building in city.buildings: - for internal_zone in building.internal_zones: - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_extra_thermal_zone(thermal_zone) - # usage factory called first - city = self._get_citygml(file) - for building in city.buildings: - building.year_of_construction = 2006 - self.assertTrue(len(city.buildings) > 0) - self._prepare_case_usage_first(city, 'pluto', construction_key, usage_key) - self._check_result(city) - if usage_key == 'comnet': - for building in city.buildings: - for internal_zone in building.internal_zones: - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self._check_extra_thermal_zone(thermal_zone) - - def test_enrichment(self): - """ - Test enrichment of the city with different orders - :return: None - """ - file_1 = 'one_building_in_kelowna.gml' - self._test_hft(file_1) - file_2 = 'C40_Final.gml' - self._test_hft(file_2) diff --git a/tests/test_exports.py b/tests/test_exports.py deleted file mode 100644 index e719790..0000000 --- a/tests/test_exports.py +++ /dev/null @@ -1,150 +0,0 @@ -""" -TestExports test and validate the city export formats -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -Code contributors: Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -import json -import os -from pathlib import Path -from unittest import TestCase - -import hub.helpers.constants as cte -from hub.city_model_structure.city import City -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.exports.exports_factory import ExportsFactory -from hub.helpers.dictionaries import Dictionaries -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.usage_factory import UsageFactory -from hub.imports.weather_factory import WeatherFactory - - -class TestExports(TestCase): - """ - TestExports class contains the unittest for export functionality - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._complete_city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _get_complete_city(self, from_pickle): - if self._complete_city is None: - if from_pickle: - file_path = (self._example_path / 'ConcordiaSWGcampus.pickle').resolve() - self._complete_city = City.load(file_path) - else: - file_path = (self._example_path / 'one_building_in_kelowna.gml').resolve() - self._complete_city = self._get_citygml(file_path) - for building in self._complete_city.buildings: - building.function = Dictionaries().hft_function_to_hub_function[building.function] - building.year_of_construction = 2006 - ConstructionFactory('nrel', self._complete_city).enrich() - UsageFactory('nrcan', self._complete_city).enrich() - cli = (self._example_path / 'weather' / 'inseldb_Summerland.cli').resolve() - self._complete_city.climate_file = Path(cli) - self._complete_city.climate_reference_city = 'Summerland' - dummy_measures = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] - for building in self._complete_city.buildings: - building.heating_demand[cte.MONTH] = dummy_measures - building.cooling_demand[cte.MONTH] = dummy_measures - building.heating_demand[cte.YEAR] = [0.0] - building.cooling_demand[cte.YEAR] = [0.0] - return self._complete_city - - def _export(self, export_type, from_pickle=False): - self._complete_city = self._get_complete_city(from_pickle) - ExportsFactory(export_type, self._complete_city, self._output_path, base_uri='../glb').export() - - def _export_building_energy(self, export_type, from_pickle=False): - self._complete_city = self._get_complete_city(from_pickle) - EnergyBuildingsExportsFactory(export_type, self._complete_city, self._output_path).export() - - def test_obj_export(self): - """ - export to obj - """ - self._export('obj', False) - - def test_cesiumjs_tileset_export(self): - """ - export to cesiumjs tileset - """ - self._export('cesiumjs_tileset', False) - tileset = Path(self._output_path / f'{self._city.name}.json') - self.assertTrue(tileset.exists()) - with open(tileset, 'r') as f: - json_tileset = json.load(f) - self.assertEqual(1, len(json_tileset['root']['children']), "Wrong number of children") - - def test_glb_export(self): - """ - export to glb format - """ - self._export('glb', False) - for building in self._city.buildings: - glb_file = Path(self._output_path / f'{building.name}.glb') - self.assertTrue(glb_file.exists(), f'{building.name} Building glb wasn\'t correctly generated') - - def test_geojson_export(self): - self._export('geojson', False) - geojson_file = Path(self._output_path / f'{self._city.name}.geojson') - self.assertTrue(geojson_file.exists(), f'{geojson_file} doesn\'t exists') - with open(geojson_file, 'r') as f: - geojson = json.load(f) - self.assertEqual(1, len(geojson['features']), 'Wrong number of buildings') - geometry = geojson['features'][0]['geometry'] - self.assertEqual('Polygon', geometry['type'], 'Wrong geometry type') - self.assertEqual(1, len(geometry['coordinates']), 'Wrong polygon structure') - self.assertEqual(11, len(geometry['coordinates'][0]), 'Wrong number of vertices') - os.unlink(geojson_file) # todo: this test need to cover a multipolygon example too - - def test_energy_ade_export(self): - """ - export to energy ADE - """ - self._export_building_energy('energy_ade') - - def test_sra_export(self): - """ - export to SRA - """ - self._export('sra') - - def test_idf_export(self): - """ - export to IDF - """ - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - self.assertIsNotNone(city, 'city is none') - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - ConstructionFactory('nrcan', city).enrich() - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - UsageFactory('nrcan', city).enrich() - WeatherFactory('epw', city).enrich() - print(self._output_path) - try: - EnergyBuildingsExportsFactory('idf', city, self._output_path).export() - except Exception: - self.fail("Idf ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/test_geometry_factory.py b/tests/test_geometry_factory.py deleted file mode 100644 index 3b5bd8f..0000000 --- a/tests/test_geometry_factory.py +++ /dev/null @@ -1,186 +0,0 @@ -""" -TestGeometryFactory test and validate the city model structure geometric parameters -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -from pathlib import Path -from unittest import TestCase - -import hub.exports.exports_factory -from hub.helpers.dictionaries import MontrealFunctionToHubFunction -from hub.helpers.geometry_helper import GeometryHelper -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory - - -class TestGeometryFactory(TestCase): - """ - Non-functional TestGeometryFactory - Load testing - """ - - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - - def _get_city(self, file, file_type, height_field=None, year_of_construction_field=None, function_field=None): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory(file_type, - path=file_path, - height_field=height_field, - year_of_construction_field=year_of_construction_field, - function_field=function_field, - ).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _check_buildings(self, city): - for building in city.buildings: - self.assertIsNotNone(building.name, 'building name is none') - self.assertIsNotNone(building.type, 'building type is none') - self.assertIsNotNone(building.volume, 'building volume is none') - self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') - self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') - self.assertIsNotNone(building.surfaces, 'building surfaces is none') - self.assertIsNotNone(building.max_height, 'building max_height is none') - self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') - self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') - self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') - self.assertEqual(len(building.beam), 0, 'building beam is calculated') - self.assertIsNotNone(building.lower_corner, 'building lower corner is none') - self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') - self.assertIsNotNone(building.internal_zones, 'no internal zones created') - self.assertIsNotNone(building.grounds, 'building grounds is none') - self.assertIsNotNone(building.walls, 'building walls is none') - self.assertIsNotNone(building.roofs, 'building roofs is none') - self.assertIsNotNone(building.internal_zones, 'building internal zones is none') - for internal_zone in building.internal_zones: - self.assertIsNone(internal_zone.usages, 'usage zones are defined') - self.assertIsNone(internal_zone.thermal_archetype, 'thermal archetype is defined') - self.assertIsNone(building.basement_heated, 'building basement_heated is not none') - self.assertIsNone(building.attic_heated, 'building attic_heated is not none') - self.assertIsNone(building.terrains, 'building terrains is not none') - self.assertIsNone(building.average_storey_height, 'building average_storey_height is not none') - self.assertIsNone(building.storeys_above_ground, 'building storeys_above_ground is not none') - self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') - self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') - self.assertIsNotNone(building.eave_height, 'building eave height is none') - self.assertIsNotNone(building.roof_type, 'building roof type is none') - self.assertIsNotNone(building.floor_area, 'building floor_area is none') - self.assertIsNone(building.households, 'building households is not none') - self.assertFalse(building.is_conditioned, 'building is_conditioned is conditioned') - - def _check_surfaces(self, building): - for surface in building.surfaces: - self.assertIsNotNone(surface.name, 'surface name is none') - self.assertIsNotNone(surface.id, 'surface id is none') - self.assertIsNotNone(surface.lower_corner, 'surface envelope_lower_corner is none') - self.assertIsNotNone(surface.upper_corner, 'surface envelope_upper_corner is none') - self.assertIsNotNone(surface.perimeter_area, 'surface area_above_ground is none') - self.assertIsNotNone(surface.azimuth, 'surface azimuth is none') - self.assertIsNotNone(surface.inclination, 'surface inclination is none') - self.assertIsNotNone(surface.type, 'surface type is none') - self.assertEqual(len(surface.global_irradiance), 0, 'global irradiance is calculated') - self.assertIsNotNone(surface.perimeter_polygon, 'surface perimeter_polygon is none') - self.assertIsNone(surface.holes_polygons, 'surface hole_polygons is not none') - self.assertIsNotNone(surface.solid_polygon, 'surface solid_polygon is none') - self.assertIsNone(surface.short_wave_reflectance, 'surface short_wave_reflectance is not none') - self.assertIsNone(surface.long_wave_emittance, 'surface long_wave_emittance is not none') - self.assertIsNotNone(surface.inverse, 'surface inverse is none') - self.assertEqual(len(surface.associated_thermal_boundaries), 0, 'associated_thermal_boundaries are assigned') - self.assertIsNone(surface.vegetation, 'surface vegetation is not none') - - # citygml_classes - def test_import_citygml(self): - """ - Test city objects in the city - :return: None - """ - file = 'FZK_Haus_LoD_2.gml' - city = self._get_city(file, 'citygml') - self.assertTrue(len(city.buildings) == 1) - self._check_buildings(city) - for building in city.buildings: - self._check_surfaces(building) - city = ConstructionFactory('nrel', city).enrich() - - def test_import_obj(self): - """ - Test obj import - """ - file = 'kelowna.obj' - city = self._get_city(file, 'obj') - self.assertTrue(len(city.buildings) == 1) - self._check_buildings(city) - for building in city.buildings: - self._check_surfaces(building) - - def test_import_geojson(self): - """ - Test geojson import - """ - file = Path(self._example_path / 'test.geojson').resolve() - city = GeometryFactory('geojson', - path=file, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - aliases_field=['ID_UEV', 'CIVIQUE_DE', 'NOM_RUE'], - function_field='CODE_UTILI', - function_to_hub=MontrealFunctionToHubFunction().dictionary).city - hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() - for building in city.building_alias('01002777'): - self.assertEqual('1', building.name, 'Wrong building name when looking for alias') - self.assertEqual(8, len(city.building_alias('rue Sherbrooke Ouest (MTL+MTO+WMT)'))) - self.assertEqual(17, len(city.buildings), 'wrong number of buildings') - - self.assertIsNotNone(city.city_object('15'), 'Building name 15 is missing in the city') - city.remove_city_object(city.city_object('15')) - self.assertIsNone(city.city_object('15'), 'Building name 15 wasn\'t removed') - for building in city.buildings: - _building = city.city_object(building.name) - self.assertEqual(_building.name, building.name, 'hash map it\'s unsync') - - def test_map_neighbours(self): - """ - Test neighbours map creation - """ - file = 'test.geojson' - - city = self._get_city(file, 'geojson', - year_of_construction_field='ANNEE_CONS', - function_field='LIBELLE_UT') - info_lod0 = GeometryHelper.city_mapping(city, plot=False) - city = self._get_city(file, 'geojson', - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='LIBELLE_UT') - info_lod1 = GeometryHelper.city_mapping(city, plot=False) - hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() - self.assertEqual(info_lod0, info_lod1) - self.assertEqual(2, len(city.city_object('1').neighbours)) - self.assertEqual(3, len(city.city_object('2').neighbours)) - self.assertEqual(2, len(city.city_object('3').neighbours)) - self.assertEqual(2, len(city.city_object('4').neighbours)) - self.assertEqual(3, len(city.city_object('5').neighbours)) - self.assertEqual(3, len(city.city_object('6').neighbours)) - self.assertEqual(1, len(city.city_object('8').neighbours)) - self.assertEqual(2, len(city.city_object('9').neighbours)) - self.assertEqual(2, len(city.city_object('10').neighbours)) - self.assertEqual(2, len(city.city_object('11').neighbours)) - self.assertEqual(2, len(city.city_object('12').neighbours)) - self.assertEqual(1, len(city.city_object('13').neighbours)) - self.assertEqual(2, len(city.city_object('14').neighbours)) - self.assertEqual(1, len(city.city_object('15').neighbours)) - self.assertEqual(1, len(city.city_object('16').neighbours)) - self.assertEqual(2, len(city.city_object('67').neighbours)) - self.assertEqual(1, len(city.city_object('68').neighbours)) - - self.assertEqual('12', city.city_object('8').neighbours[0].name) - self.assertEqual('14', city.city_object('13').neighbours[0].name) - self.assertEqual('14', city.city_object('15').neighbours[0].name) diff --git a/tests/test_greenery_catalog.py b/tests/test_greenery_catalog.py deleted file mode 100644 index 291aeb1..0000000 --- a/tests/test_greenery_catalog.py +++ /dev/null @@ -1,37 +0,0 @@ -""" -Test greenery factory test and validate the greenery construction -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -""" - -from unittest import TestCase - -from hub.catalog_factories.greenery_catalog_factory import GreeneryCatalogFactory - - -class TestGreeneryCatalog(TestCase): - def test_catalog(self): - catalog = GreeneryCatalogFactory('nrel').catalog - catalog_categories = catalog.names() - vegetations = catalog.names('vegetations') - plants = catalog.names('plants') - soils = catalog.names('soils') - self.assertTrue(len(catalog_categories) == 3) - self.assertTrue(len(vegetations['vegetations']) == 4) - self.assertTrue(len(plants['plants']) == 14) - self.assertTrue(len(soils['soils']) == 6) - with self.assertRaises(ValueError): - catalog.names('unknown') - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') - - self.assertTrue(len(catalog.entries().vegetations) == 4) - self.assertTrue(len(catalog.entries().plants) == 14) - self.assertTrue(len(catalog.entries().soils) == 6) diff --git a/tests/test_greenery_in_idf.py b/tests/test_greenery_in_idf.py deleted file mode 100644 index 857b96c..0000000 --- a/tests/test_greenery_in_idf.py +++ /dev/null @@ -1,79 +0,0 @@ -""" -Greenery in idf test -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -from pathlib import Path -from unittest import TestCase - -import hub.helpers.constants as cte -from hub.city_model_structure.greenery.plant import Plant -from hub.city_model_structure.greenery.soil import Soil -from hub.city_model_structure.greenery.vegetation import Vegetation -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.usage_factory import UsageFactory -from hub.imports.weather_factory import WeatherFactory - - -class GreeneryInIdf(TestCase): - """ - GreeneryInIdf TestCase 1 - """ - def test_greenery_in_idf(self): - - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - output_path = (Path(__file__).parent / 'tests_outputs').resolve() - city_file = (self._example_path / "one_building_in_kelowna.gml").resolve() - city = GeometryFactory('citygml', path=city_file).city - for building in city.buildings: - building.year_of_construction = 2006 - ConstructionFactory('nrel', city).enrich() - UsageFactory('comnet', city).enrich() - WeatherFactory('epw', city).enrich() - vegetation_name = 'BaseEco' - soil_thickness = 0.18 - soil_name = 'EcoRoofSoil' - roughness = 'MediumSmooth' - dry_conductivity = 0.4 - dry_density = 641 - dry_specific_heat = 1100 - thermal_absorptance = 0.95 - solar_absorptance = 0.8 - visible_absorptance = 0.7 - saturation_volumetric_moisture_content = 0.4 - residual_volumetric_moisture_content = 0.01 - soil = Soil(soil_name, roughness, dry_conductivity, dry_density, dry_specific_heat, thermal_absorptance, - solar_absorptance, visible_absorptance, saturation_volumetric_moisture_content, - residual_volumetric_moisture_content) - soil.initial_volumetric_moisture_content = 0.2 - plant_name = 'plant' - height = 0.5 - leaf_area_index = 5 - leaf_reflectivity = 0.2 - leaf_emissivity = 0.95 - minimal_stomatal_resistance = 180 - co2_sequestration = 0 - grows_on_soils = [soil] - plant = Plant(plant_name, height, leaf_area_index, leaf_reflectivity, leaf_emissivity, minimal_stomatal_resistance, - co2_sequestration, grows_on_soils) - plant.percentage = 1 - plants = [plant] - vegetation = Vegetation(vegetation_name, soil, soil_thickness, plants) - for building in city.buildings: - for surface in building.surfaces: - if surface.type == cte.ROOF: - surface.vegetation = vegetation - - _idf = EnergyBuildingsExportsFactory('idf', city, output_path).export() - self.assertIsNotNone(_idf) - city = GeometryFactory('citygml', path=city_file).city - for building in city.buildings: - building.year_of_construction = 2006 - ConstructionFactory('nrel', city).enrich() - UsageFactory('comnet', city).enrich() - WeatherFactory('epw', city).enrich() - _idf = EnergyBuildingsExportsFactory('idf', city, output_path).export() - self.assertIsNotNone(_idf) diff --git a/tests/test_insel_exports.py b/tests/test_insel_exports.py deleted file mode 100644 index 591326b..0000000 --- a/tests/test_insel_exports.py +++ /dev/null @@ -1,136 +0,0 @@ -""" -TestInselExports test -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" - -from pathlib import Path -from unittest import TestCase -import pandas as pd -import hub.helpers.constants as cte -from hub.helpers.monthly_values import MonthlyValues -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.usage_factory import UsageFactory -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.imports.weather_factory import WeatherFactory - - -class TestExports(TestCase): - """ - TestExports class contains the unittest for export functionality - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._city = None - self._complete_city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _set_irradiance_surfaces(self, city): - """ - saves in building surfaces the correspondent irradiance at different time-scales depending on the mode - if building is None, it saves all buildings' surfaces in file, if building is specified, it saves only that - specific building values - :parameter city: city - :return: none - """ - city.level_of_detail.surface_radiation = 2 - path = (self._example_path / "one_building_in_kelowna_sra_SW.out").resolve() - self._results = pd.read_csv(path, sep='\s+', header=0).to_dict(orient='list') - _irradiance = {} - for key in self._results: - header_name = key.split(':') - result = [x / cte.WATTS_HOUR_TO_JULES for x in self._results[key]] - city_object_name = header_name[1] - building = self._city.city_object(city_object_name) - surface_id = header_name[2] - surface = building.surface_by_id(surface_id) - monthly_result = MonthlyValues.get_total_month(result) - yearly_result = [sum(result)] - _irradiance[cte.YEAR] = yearly_result - _irradiance[cte.MONTH] = monthly_result - _irradiance[cte.HOUR] = result - surface.global_irradiance = _irradiance - - def test_insel_monthly_energy_balance_export(self): - """ - export to Insel MonthlyEnergyBalance - """ - city = self._get_citygml('one_building_in_kelowna.gml') - WeatherFactory('epw', city).enrich() - for building in city.buildings: - building.external_temperature[cte.MONTH] = MonthlyValues().\ - get_mean_values(building.external_temperature[cte.HOUR]) - self._set_irradiance_surfaces(city) - - for building in city.buildings: - self.assertIsNotNone(building.external_temperature[cte.MONTH], f'building {building.name} ' - f'external_temperature is none') - for surface in building.surfaces: - if surface.type != 'Ground': - self.assertIsNotNone(surface.global_irradiance[cte.MONTH], f'surface in building {building.name} ' - f'global_irradiance is none') - - for building in city.buildings: - building.year_of_construction = 2006 - if building.function is None: - building.function = 'large office' - building.attic_heated = 0 - building.basement_heated = 0 - ConstructionFactory('nrel', city).enrich() - UsageFactory('comnet', city).enrich() - - # parameters written: - for building in city.buildings: - self.assertIsNotNone(building.volume, f'building {building.name} volume is none') - self.assertIsNotNone(building.average_storey_height, f'building {building.name} average_storey_height is none') - self.assertIsNotNone(building.storeys_above_ground, f'building {building.name} storeys_above_ground is none') - self.assertIsNotNone(building.attic_heated, f'building {building.name} attic_heated is none') - self.assertIsNotNone(building.basement_heated, f'building {building.name} basement_heated is none') - for internal_zone in building.internal_zones: - self.assertIsNotNone(internal_zone.area, f'internal zone {internal_zone.id} area is none') - for thermal_zone in internal_zone.thermal_zones_from_internal_zones: - self.assertIsNotNone(thermal_zone.indirectly_heated_area_ratio, f'thermal zone {thermal_zone.id} ' - f'indirectly_heated_area_ratio is none') - self.assertIsNotNone(thermal_zone.effective_thermal_capacity, f'thermal zone {thermal_zone.id} ' - f'effective_thermal_capacity is none') - self.assertIsNotNone(thermal_zone.additional_thermal_bridge_u_value, f'thermal zone {thermal_zone.id} ' - f'additional_thermal_bridge_u_value ' - f'is none') - self.assertIsNotNone(thermal_zone.total_floor_area, f'thermal zone {thermal_zone.id} ' - f'total_floor_area is none') - for thermal_boundary in thermal_zone.thermal_boundaries: - self.assertIsNotNone(thermal_boundary.type) - self.assertIsNotNone(thermal_boundary.opaque_area) - self.assertIsNotNone(thermal_boundary.window_ratio) - self.assertIsNotNone(thermal_boundary.u_value) - self.assertIsNotNone(thermal_boundary.thermal_openings) - if thermal_boundary.type is not cte.GROUND: - self.assertIsNotNone(thermal_boundary.external_surface.short_wave_reflectance) - - for usage in internal_zone.usages: - self.assertIsNotNone(usage.percentage, f'usage zone {usage.name} percentage is none') - self.assertIsNotNone(usage.internal_gains, f'usage zone {usage.name} internal_gains is none') - self.assertIsNotNone(usage.thermal_control, f'usage zone {usage.name} thermal_control is none') - self.assertIsNotNone(usage.hours_day, f'usage zone {usage.name} hours_day is none') - self.assertIsNotNone(usage.days_year, f'usage zone {usage.name} days_year is none') - self.assertIsNotNone( - usage.mechanical_air_change, - f'usage zone {usage.name} mechanical_air_change is none' - ) - # export files - try: - EnergyBuildingsExportsFactory('insel_monthly_energy_balance', city, self._output_path).export() - except Exception: - self.fail("Insel MonthlyEnergyBalance ExportsFactory raised ExceptionType unexpectedly!") diff --git a/tests/test_results_import.py b/tests/test_results_import.py deleted file mode 100644 index 76be587..0000000 --- a/tests/test_results_import.py +++ /dev/null @@ -1,94 +0,0 @@ -""" -TestExports test and validate the city export formats -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -""" - -import subprocess -from pathlib import Path -from unittest import TestCase - -import hub.helpers.constants as cte -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.exports.exports_factory import ExportsFactory -from hub.helpers.dictionaries import Dictionaries -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.results_factory import ResultFactory -from hub.imports.usage_factory import UsageFactory - - -class TestResultsImport(TestCase): - """ - TestImports class contains the unittest for import functionality - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - ConstructionFactory('nrcan', self._city).enrich() - UsageFactory('comnet', self._city).enrich() - - def test_sra_import(self): - ExportsFactory('sra', self._city, self._output_path).export() - sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() - subprocess.run(['sra', str(sra_path)]) - ResultFactory('sra', self._city, self._output_path).enrich() - # Check that all the buildings have radiance in the surfaces - for building in self._city.buildings: - for surface in building.surfaces: - self.assertIsNotNone(surface.global_irradiance) - - def test_meb_import(self): - ExportsFactory('sra', self._city, self._output_path).export() - sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() - subprocess.run(['sra', str(sra_path)]) - ResultFactory('sra', self._city, self._output_path).enrich() - EnergyBuildingsExportsFactory('insel_monthly_energy_balance', self._city, self._output_path).export() - for building in self._city.buildings: - insel_path = (self._output_path / f'{building.name}.insel') - subprocess.run(['insel', str(insel_path)]) - ResultFactory('insel_monthly_energy_balance', self._city, self._output_path).enrich() - # Check that all the buildings have heating and cooling values - for building in self._city.buildings: - self.assertIsNotNone(building.heating_demand[cte.MONTH]) - self.assertIsNotNone(building.cooling_demand[cte.MONTH]) - self.assertIsNotNone(building.heating_demand[cte.YEAR]) - self.assertIsNotNone(building.cooling_demand[cte.YEAR]) - self.assertIsNotNone(building.lighting_peak_load[cte.MONTH]) - self.assertIsNotNone(building.lighting_peak_load[cte.YEAR]) - self.assertIsNotNone(building.appliances_peak_load[cte.MONTH]) - self.assertIsNotNone(building.appliances_peak_load[cte.YEAR]) - - def test_peak_loads(self): - # todo: this is not technically a import - ExportsFactory('sra', self._city, self._output_path).export() - sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() - subprocess.run(['sra', str(sra_path)]) - ResultFactory('sra', self._city, self._output_path).enrich() - for building in self._city.buildings: - self.assertIsNotNone(building.heating_peak_load) - self.assertIsNotNone(building.cooling_peak_load) - - values = [0 for _ in range(8760)] - values[0] = 1000 - expected_monthly_list = [0 for _ in range(12)] - expected_monthly_list[0] = 1000 - for building in self._city.buildings: - building.heating_demand[cte.HOUR] = values - building.cooling_demand[cte.HOUR] = values - self.assertIsNotNone(building.heating_peak_load) - self.assertIsNotNone(building.cooling_peak_load) diff --git a/tests/test_systems_catalog.py b/tests/test_systems_catalog.py deleted file mode 100644 index 48af728..0000000 --- a/tests/test_systems_catalog.py +++ /dev/null @@ -1,36 +0,0 @@ -""" -TestSystemsCatalog -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" - -from unittest import TestCase -from hub.catalog_factories.energy_systems_catalog_factory import EnergySystemsCatalogFactory - - -class TestSystemsCatalog(TestCase): - - def test_montreal_custom_catalog(self): - catalog = EnergySystemsCatalogFactory('montreal_custom').catalog - catalog_categories = catalog.names() - archetypes = catalog.names('archetypes') - self.assertEqual(23, len(archetypes['archetypes'])) - systems = catalog.names('systems') - self.assertEqual(18, len(systems['systems'])) - generation_equipments = catalog.names('generation_equipments') - self.assertEqual(7, len(generation_equipments['generation_equipments'])) - distribution_equipments = catalog.names('distribution_equipments') - self.assertEqual(8, len(distribution_equipments['distribution_equipments'])) - emission_equipments = catalog.names('emission_equipments') - self.assertEqual(3, len(emission_equipments['emission_equipments'])) - with self.assertRaises(ValueError): - catalog.names('unknown') - - # retrieving all the entries should not raise any exceptions - for category in catalog_categories: - for value in catalog_categories[category]: - catalog.get_entry(value) - - with self.assertRaises(IndexError): - catalog.get_entry('unknown') diff --git a/tests/test_systems_factory.py b/tests/test_systems_factory.py deleted file mode 100644 index 8d19104..0000000 --- a/tests/test_systems_factory.py +++ /dev/null @@ -1,118 +0,0 @@ -""" -TestSystemsFactory -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2023 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" - -import subprocess -from pathlib import Path -from unittest import TestCase -import copy - -import hub.helpers.constants as cte -from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory -from hub.exports.exports_factory import ExportsFactory -from hub.helpers.dictionaries import Dictionaries -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.weather_factory import WeatherFactory -from hub.imports.results_factory import ResultFactory -from hub.imports.usage_factory import UsageFactory -from hub.imports.energy_systems_factory import EnergySystemsFactory -from hub.city_model_structure.energy_systems.energy_system import EnergySystem -from hub.city_model_structure.energy_systems.generation_system import GenerationSystem -from hub.city_model_structure.energy_systems.distribution_system import DistributionSystem -from hub.city_model_structure.energy_systems.emission_system import EmissionSystem - - -class TestSystemsFactory(TestCase): - """ - TestSystemsFactory TestCase - """ - def setUp(self) -> None: - """ - Test setup - :return: None - """ - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - def test_montreal_custom_system_factory(self): - """ - Enrich the city with the construction information and verify it - """ - for building in self._city.buildings: - building.energy_systems_archetype_name = 'system 1 gas' - - EnergySystemsFactory('montreal_custom', self._city).enrich() - self.assertEqual(17, len(self._city.energy_systems_connection_table)) - - def test_montreal_custom_system_results(self): - """ - Enrich the city with the construction information and verify it - """ - ConstructionFactory('nrcan', self._city).enrich() - UsageFactory('nrcan', self._city).enrich() - WeatherFactory('epw', self._city).enrich() - ExportsFactory('sra', self._city, self._output_path).export() - sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() - subprocess.run(['sra', str(sra_path)]) - ResultFactory('sra', self._city, self._output_path).enrich() - EnergyBuildingsExportsFactory('insel_monthly_energy_balance', self._city, self._output_path).export() - for building in self._city.buildings: - insel_path = (self._output_path / f'{building.name}.insel') - subprocess.run(['insel', str(insel_path)]) - ResultFactory('insel_monthly_energy_balance', self._city, self._output_path).enrich() - - for building in self._city.buildings: - building.energy_systems_archetype_name = 'system 1 gas pv' - EnergySystemsFactory('montreal_custom', self._city).enrich() - # Need to assign energy systems to buildings: - energy_systems_connection = self._city.energy_systems_connection_table - for building in self._city.buildings: - _building_energy_systems = [] - energy_systems = energy_systems_connection['Energy System Type'][ - energy_systems_connection['Building'] == building.name] - for energy_system in energy_systems: - _generic_building_energy_systems = self._city.generic_energy_systems[energy_system] - for _generic_building_energy_system in _generic_building_energy_systems: - _building_energy_equipment = EnergySystem() - _building_energy_equipment.demand_types = _generic_building_energy_system.demand_types - - _building_distribution_system = DistributionSystem() - _building_distribution_system.generic_distribution_system = ( - copy.deepcopy(_generic_building_energy_system.distribution_system) - ) - _building_emission_system = EmissionSystem() - _building_emission_system.generic_emission_system = ( - copy.deepcopy(_generic_building_energy_system.emission_system) - ) - _building_generation_system = GenerationSystem() - _building_generation_system.generic_generation_system = ( - copy.deepcopy(_generic_building_energy_system.generation_system) - ) - if cte.HEATING in _building_energy_equipment.demand_types: - _building_generation_system.heat_power = building.heating_peak_load[cte.YEAR][0] - if cte.COOLING in _building_energy_equipment.demand_types: - _building_generation_system.cooling_power = building.cooling_peak_load[cte.YEAR][0] - _building_energy_equipment.generation_system = _building_generation_system - _building_energy_equipment.distribution_system = _building_distribution_system - _building_energy_equipment.emission_system = _building_emission_system - - _building_energy_systems.append(_building_energy_equipment) - building.energy_systems = _building_energy_systems - - for building in self._city.buildings: - self.assertLess(0, building.heating_consumption[cte.YEAR][0]) - self.assertLess(0, building.cooling_consumption[cte.YEAR][0]) - self.assertLess(0, building.domestic_hot_water_consumption[cte.YEAR][0]) - self.assertLess(0, building.onsite_electrical_production[cte.YEAR][0]) diff --git a/tests/test_usage_catalog.py b/tests/test_usage_catalog.py deleted file mode 100644 index 2d92737..0000000 --- a/tests/test_usage_catalog.py +++ /dev/null @@ -1,23 +0,0 @@ -""" -TestUsageCatalog -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Guille Gutierrez guillermo.gutierrezmorote@concordia.ca -""" - -from unittest import TestCase -from hub.catalog_factories.usage_catalog_factory import UsageCatalogFactory - - -class TestConstructionCatalog(TestCase): - def test_comnet_catalog(self): - catalog = UsageCatalogFactory('comnet').catalog - self.assertIsNotNone(catalog, 'catalog is none') - content = catalog.entries() - self.assertEqual(32, len(content.usages), 'Wrong number of usages') - - def test_nrcan_catalog(self): - catalog = UsageCatalogFactory('nrcan').catalog - self.assertIsNotNone(catalog, 'catalog is none') - content = catalog.entries() - self.assertEqual(34, len(content.usages), 'Wrong number of usages') diff --git a/tests/test_usage_factory.py b/tests/test_usage_factory.py deleted file mode 100644 index 6b6d821..0000000 --- a/tests/test_usage_factory.py +++ /dev/null @@ -1,184 +0,0 @@ -""" -TestUsageFactory test and validate the city model structure usage parameters -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca -""" -from pathlib import Path -from unittest import TestCase - -from hub.imports.geometry_factory import GeometryFactory -from hub.imports.construction_factory import ConstructionFactory -from hub.imports.usage_factory import UsageFactory -from hub.helpers.dictionaries import Dictionaries - - -class TestUsageFactory(TestCase): - """ - TestUsageFactory TestCase - """ - def setUp(self) -> None: - """ - Configure test environment - :return: - """ - self._city = None - self._example_path = (Path(__file__).parent / 'tests_data').resolve() - - def _get_citygml(self, file): - file_path = (self._example_path / file).resolve() - self._city = GeometryFactory('citygml', path=file_path).city - self.assertIsNotNone(self._city, 'city is none') - return self._city - - def _check_buildings(self, city): - for building in city.buildings: - self.assertIsNotNone(building.name, 'building name is none') - self.assertIsNotNone(building.type, 'building type is none') - self.assertIsNotNone(building.volume, 'building volume is none') - self.assertIsNotNone(building.detailed_polyhedron, 'building detailed polyhedron is none') - self.assertIsNotNone(building.simplified_polyhedron, 'building simplified polyhedron is none') - self.assertIsNotNone(building.surfaces, 'building surfaces is none') - self.assertIsNotNone(building.centroid, 'building centroid is none') - self.assertIsNotNone(building.max_height, 'building max_height is none') - self.assertEqual(len(building.external_temperature), 0, 'building external temperature is calculated') - self.assertEqual(len(building.global_horizontal), 0, 'building global horizontal is calculated') - self.assertEqual(len(building.diffuse), 0, 'building diffuse is calculated') - self.assertEqual(len(building.beam), 0, 'building beam is calculated') - self.assertIsNotNone(building.lower_corner, 'building lower corner is none') - self.assertEqual(len(building.sensors), 0, 'building sensors are assigned') - self.assertIsNotNone(building.internal_zones, 'no internal zones created') - self.assertIsNotNone(building.grounds, 'building grounds is none') - self.assertIsNotNone(building.walls, 'building walls is none') - self.assertIsNotNone(building.roofs, 'building roofs is none') - for internal_zone in building.internal_zones: - if internal_zone.usages is not None: - self.assertTrue(len(internal_zone.usages) > 0, 'usage zones are not defined') - self.assertIsNone(building.basement_heated, 'building basement_heated is not none') - self.assertIsNone(building.attic_heated, 'building attic_heated is not none') - self.assertIsNone(building.terrains, 'building terrains is not none') - self.assertIsNotNone(building.year_of_construction, 'building year_of_construction is none') - self.assertIsNotNone(building.function, 'building function is none') - self.assertEqual(len(building.heating_demand), 0, 'building heating is not none') - self.assertEqual(len(building.cooling_demand), 0, 'building cooling is not none') - self.assertIsNotNone(building.eave_height, 'building eave height is none') - self.assertIsNotNone(building.roof_type, 'building roof type is none') - self.assertIsNotNone(building.floor_area, 'building floor_area is none') - - def _check_usage(self, usage): - self.assertIsNotNone(usage.name, 'usage is none') - self.assertIsNotNone(usage.percentage, 'usage percentage is none') - self.assertIsNotNone(usage.hours_day, 'hours per day is none') - self.assertIsNotNone(usage.days_year, 'days per year is none') - self.assertIsNotNone(usage.thermal_control, 'thermal control is none') - self.assertIsNotNone(usage.thermal_control.mean_heating_set_point, 'control heating set point is none') - self.assertIsNotNone(usage.thermal_control.heating_set_back, 'control heating set back is none') - self.assertIsNotNone(usage.thermal_control.mean_cooling_set_point, 'control cooling set point is none') - - def test_import_comnet(self): - """ - Enrich the city with the usage information from comnet and verify it - """ - file = 'pluto_building.gml' - city = self._get_citygml(file) - for building in city.buildings: - building.function = Dictionaries().pluto_function_to_hub_function[building.function] - - UsageFactory('comnet', city).enrich() - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - self.assertIsNot(len(internal_zone.usages), 0, 'no building usage defined') - for usage in internal_zone.usages: - self._check_usage(usage) - self.assertIsNotNone(usage.mechanical_air_change, 'mechanical air change is none') - self.assertIsNotNone(usage.thermal_control.heating_set_point_schedules, - 'control heating set point schedule is none') - self.assertIsNotNone(usage.thermal_control.cooling_set_point_schedules, - 'control cooling set point schedule is none') - self.assertIsNotNone(usage.occupancy, 'occupancy is none') - occupancy = usage.occupancy - self.assertIsNotNone(occupancy.occupancy_density, 'occupancy density is none') - self.assertIsNotNone(occupancy.latent_internal_gain, 'occupancy latent internal gain is none') - self.assertIsNotNone(occupancy.sensible_convective_internal_gain, - 'occupancy sensible convective internal gain is none') - self.assertIsNotNone(occupancy.sensible_radiative_internal_gain, - 'occupancy sensible radiant internal gain is none') - self.assertIsNotNone(occupancy.occupancy_schedules, 'occupancy schedule is none') - self.assertIsNotNone(usage.lighting, 'lighting is none') - lighting = usage.lighting - self.assertIsNotNone(lighting.density, 'lighting density is none') - self.assertIsNotNone(lighting.latent_fraction, 'lighting latent fraction is none') - self.assertIsNotNone(lighting.convective_fraction, 'lighting convective fraction is none') - self.assertIsNotNone(lighting.radiative_fraction, 'lighting radiant fraction is none') - self.assertIsNotNone(lighting.schedules, 'lighting schedule is none') - self.assertIsNotNone(usage.appliances, 'appliances is none') - appliances = usage.appliances - self.assertIsNotNone(appliances.density, 'appliances density is none') - self.assertIsNotNone(appliances.latent_fraction, 'appliances latent fraction is none') - self.assertIsNotNone(appliances.convective_fraction, 'appliances convective fraction is none') - self.assertIsNotNone(appliances.radiative_fraction, 'appliances radiant fraction is none') - self.assertIsNotNone(appliances.schedules, 'appliances schedule is none') - self.assertIsNotNone(usage.thermal_control.hvac_availability_schedules, - 'control hvac availability is none') - self.assertIsNotNone(usage.domestic_hot_water.density, 'domestic hot water density is none') - self.assertIsNotNone(usage.domestic_hot_water.service_temperature, - 'domestic hot water service temperature is none') - self.assertIsNotNone(usage.domestic_hot_water.schedules, 'domestic hot water schedules is none') - - def test_import_nrcan(self): - """ - Enrich the city with the usage information from nrcan and verify it - """ - file = 'test.geojson' - file_path = (self._example_path / file).resolve() - city = GeometryFactory('geojson', - path=file_path, - height_field='citygml_me', - year_of_construction_field='ANNEE_CONS', - function_field='CODE_UTILI', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city - - ConstructionFactory('nrcan', city).enrich() - UsageFactory('nrcan', city).enrich() - self._check_buildings(city) - for building in city.buildings: - for internal_zone in building.internal_zones: - if internal_zone.usages is not None: - self.assertIsNot(len(internal_zone.usages), 0, 'no building usage defined') - for usage in internal_zone.usages: - self._check_usage(usage) - self.assertIsNotNone(usage.mechanical_air_change, 'mechanical air change is none') - self.assertIsNotNone(usage.thermal_control.heating_set_point_schedules, - 'control heating set point schedule is none') - self.assertIsNotNone(usage.thermal_control.cooling_set_point_schedules, - 'control cooling set point schedule is none') - self.assertIsNotNone(usage.occupancy, 'occupancy is none') - occupancy = usage.occupancy - self.assertIsNotNone(occupancy.occupancy_density, 'occupancy density is none') - self.assertIsNotNone(occupancy.latent_internal_gain, 'occupancy latent internal gain is none') - self.assertIsNotNone(occupancy.sensible_convective_internal_gain, - 'occupancy sensible convective internal gain is none') - self.assertIsNotNone(occupancy.sensible_radiative_internal_gain, - 'occupancy sensible radiant internal gain is none') - self.assertIsNotNone(occupancy.occupancy_schedules, 'occupancy schedule is none') - self.assertIsNotNone(usage.lighting, 'lighting is none') - lighting = usage.lighting - self.assertIsNotNone(lighting.density, 'lighting density is none') - self.assertIsNotNone(lighting.latent_fraction, 'lighting latent fraction is none') - self.assertIsNotNone(lighting.convective_fraction, 'lighting convective fraction is none') - self.assertIsNotNone(lighting.radiative_fraction, 'lighting radiant fraction is none') - self.assertIsNotNone(lighting.schedules, 'lighting schedule is none') - self.assertIsNotNone(usage.appliances, 'appliances is none') - appliances = usage.appliances - self.assertIsNotNone(appliances.density, 'appliances density is none') - self.assertIsNotNone(appliances.latent_fraction, 'appliances latent fraction is none') - self.assertIsNotNone(appliances.convective_fraction, 'appliances convective fraction is none') - self.assertIsNotNone(appliances.radiative_fraction, 'appliances radiant fraction is none') - self.assertIsNotNone(appliances.schedules, 'appliances schedule is none') - self.assertIsNotNone(usage.thermal_control.hvac_availability_schedules, - 'control hvac availability is none') - self.assertIsNotNone(usage.domestic_hot_water.peak_flow, 'domestic hot water peak flow is none') - self.assertIsNotNone(usage.domestic_hot_water.service_temperature, - 'domestic hot water service temperature is none') - self.assertIsNotNone(usage.domestic_hot_water.schedules, 'domestic hot water schedules is none') diff --git a/tests/tests_data/C40_Final.gml b/tests/tests_data/C40_Final.gml deleted file mode 100644 index 34126bd..0000000 --- a/tests/tests_data/C40_Final.gml +++ /dev/null @@ -1,3377 +0,0 @@ - - - - -610610.7547462888 5035770.347264212 566.5784301757819 -610818.6731258357 5035968.504367453 598.217651367188 - - - - - - -residential -1996 -12.822875976562045 -2 -4.5 - - - - - - - - -610731.736095011 5035823.038792845 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610731.736095011 5035823.038792845 566.5784301757819 610731.736095011 5035823.038792845 579.401306152344 - - - - - - - - -610710.8787736718 5035807.662177984 579.401306152344 610710.8787736718 5035807.662177984 566.5784301757819 610731.736095011 5035823.038792845 566.5784301757819 610710.8787736718 5035807.662177984 579.401306152344 - - - - - - - - -610731.736095011 5035823.038792845 579.401306152344 610685.9119691952 5035884.728175624 566.5784301757819 610685.9119691952 5035884.728175624 579.401306152344 610731.736095011 5035823.038792845 579.401306152344 - - - - - - - - -610731.736095011 5035823.038792845 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 610731.736095011 5035823.038792845 579.401306152344 610731.736095011 5035823.038792845 566.5784301757819 - - - - - - - - -610731.736095011 5035823.038792845 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 610731.736095011 5035823.038792845 566.5784301757819 - - - - - - - - -610685.9119691952 5035884.728175624 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610685.9119691952 5035884.728175624 566.5784301757819 - - - - - - - - -610685.9119691952 5035884.728175624 579.401306152344 610665.0659159254 5035869.341116842 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 - - - - - - - - -610731.736095011 5035823.038792845 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 610710.8787736718 5035807.662177984 579.401306152344 610731.736095011 5035823.038792845 579.401306152344 - - - - - - - - -610710.8787736718 5035807.662177984 566.5784301757819 610710.8787736718 5035807.662177984 579.401306152344 610665.0659159254 5035869.341116842 579.401306152344 610710.8787736718 5035807.662177984 566.5784301757819 - - - - - - - - -610710.8787736718 5035807.662177984 566.5784301757819 610665.0659159254 5035869.341116842 579.401306152344 610665.0659159254 5035869.341116842 566.5784301757819 610710.8787736718 5035807.662177984 566.5784301757819 - - - - - - - - -610665.0659159254 5035869.341116842 579.401306152344 610685.9119691952 5035884.728175624 579.401306152344 610665.0659159254 5035869.341116842 566.5784301757819 610665.0659159254 5035869.341116842 579.401306152344 - - - - - - - - -610685.9119691952 5035884.728175624 579.401306152344 610685.9119691952 5035884.728175624 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610685.9119691952 5035884.728175624 579.401306152344 - - - - - - - - - - - - -residential -1996 -17.09716796875 -2 -6 - - - - - - - - -610703.3889290215 5035897.594541908 583.6755981445319 610684.1980603877 5035923.445129678 566.5784301757819 610684.1980603877 5035923.445129678 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 - - - - - - - - -610703.3889290215 5035897.594541908 566.5784301757819 610684.1980603877 5035923.445129678 566.5784301757819 610703.3889290215 5035897.594541908 583.6755981445319 610703.3889290215 5035897.594541908 566.5784301757819 - - - - - - - - -610703.3889290215 5035897.594541908 583.6755981445319 610665.0659159254 5035869.341116842 583.6755981445319 610703.3889290215 5035897.594541908 566.5784301757819 610703.3889290215 5035897.594541908 583.6755981445319 - - - - - - - - -610665.0659159254 5035869.341116842 583.6755981445319 610665.0659159254 5035869.341116842 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 610665.0659159254 5035869.341116842 583.6755981445319 - - - - - - - - -610684.1980603877 5035923.445129678 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 610684.1980603877 5035923.445129678 583.6755981445319 - - - - - - - - -610703.3889290215 5035897.594541908 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610665.0659159254 5035869.341116842 583.6755981445319 610703.3889290215 5035897.594541908 583.6755981445319 - - - - - - - - -610665.0659159254 5035869.341116842 566.5784301757819 610665.0659159254 5035869.341116842 583.6755981445319 610645.9080433963 5035895.192514391 583.6755981445319 610665.0659159254 5035869.341116842 566.5784301757819 - - - - - - - - -610665.0659159254 5035869.341116842 566.5784301757819 610645.9080433963 5035895.192514391 583.6755981445319 610645.9080433963 5035895.192514391 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 - - - - - - - - -610645.9080433963 5035895.192514391 583.6755981445319 610684.1980603877 5035923.445129678 583.6755981445319 610645.9080433963 5035895.192514391 566.5784301757819 610645.9080433963 5035895.192514391 583.6755981445319 - - - - - - - - -610684.1980603877 5035923.445129678 583.6755981445319 610684.1980603877 5035923.445129678 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610684.1980603877 5035923.445129678 583.6755981445319 - - - - - - - - -610684.1980603877 5035923.445129678 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610684.1980603877 5035923.445129678 566.5784301757819 - - - - - - - - -610703.3889290215 5035897.594541908 566.5784301757819 610665.0659159254 5035869.341116842 566.5784301757819 610645.9080433963 5035895.192514391 566.5784301757819 610703.3889290215 5035897.594541908 566.5784301757819 - - - - - - - - - - - - -residential -1996 -6.411376953125 -1 -4.5 - - - - - - - - -610621.7522854737 5035912.554446138 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 610621.7522854737 5035912.554446138 566.578491210938 610621.7522854737 5035912.554446138 572.989868164063 - - - - - - - - -610646.6181083214 5035930.900036323 572.989868164063 610646.6181083214 5035930.900036323 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610646.6181083214 5035930.900036323 572.989868164063 - - - - - - - - -610663.4816818945 5035908.180781324 572.989868164063 610646.6181083214 5035930.900036323 566.578491210938 610646.6181083214 5035930.900036323 572.989868164063 610663.4816818945 5035908.180781324 572.989868164063 - - - - - - - - -610663.4816818945 5035908.180781324 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 610663.4816818945 5035908.180781324 572.989868164063 610663.4816818945 5035908.180781324 566.578491210938 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610668.1231967269 5035865.259882145 566.578491210938 610668.1231967269 5035865.259882145 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610710.889553302 5035807.673307475 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 610710.889553302 5035807.673307475 572.989868164063 610710.889553302 5035807.673307475 566.578491210938 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610692.6219659926 5035794.191143957 572.989868164063 610710.889553302 5035807.673307475 566.578491210938 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610692.6219659926 5035794.191143957 572.989868164063 610692.6219659926 5035794.191143957 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 610692.6219659926 5035794.191143957 572.989868164063 - - - - - - - - -610621.7522854737 5035912.554446138 572.989868164063 610619.3578221387 5035915.772196898 566.578491210938 610619.3578221387 5035915.772196898 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 - - - - - - - - -610621.7522854737 5035912.554446138 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 610621.7522854737 5035912.554446138 572.989868164063 610621.7522854737 5035912.554446138 566.578491210938 - - - - - - - - -610614.1462577312 5035911.9282374615 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 610614.1462577312 5035911.9282374615 566.578491210938 610614.1462577312 5035911.9282374615 572.989868164063 - - - - - - - - -610619.3578221387 5035915.772196898 572.989868164063 610619.3578221387 5035915.772196898 566.578491210938 610614.1462577312 5035911.9282374615 566.578491210938 610619.3578221387 5035915.772196898 572.989868164063 - - - - - - - - -610649.8555010457 5035851.7888990585 566.578491210938 610649.8555010457 5035851.7888990585 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610649.8555010457 5035851.7888990585 566.578491210938 - - - - - - - - -610692.6219659926 5035794.191143957 566.578491210938 610692.6219659926 5035794.191143957 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610692.6219659926 5035794.191143957 566.578491210938 - - - - - - - - -610649.8555010457 5035851.7888990585 566.578491210938 610610.7547462888 5035904.451651935 572.989868164063 610610.7547462888 5035904.451651935 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 - - - - - - - - -610692.6219659926 5035794.191143957 566.578491210938 610649.8555010457 5035851.7888990585 572.989868164063 610649.8555010457 5035851.7888990585 566.578491210938 610692.6219659926 5035794.191143957 566.578491210938 - - - - - - - - -610619.3578221387 5035915.772196898 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 - - - - - - - - -610621.7522854737 5035912.554446138 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 - - - - - - - - -610616.5297475372 5035908.71028959 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 - - - - - - - - -610668.1231967269 5035865.259882145 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 - - - - - - - - -610645.8968785583 5035895.203257089 572.989868164063 610610.7547462888 5035904.451651935 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 - - - - - - - - -610646.6181083214 5035930.900036323 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610663.4816818945 5035908.180781324 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 - - - - - - - - -610646.6181083214 5035930.900036323 572.989868164063 610621.7522854737 5035912.554446138 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610646.6181083214 5035930.900036323 572.989868164063 - - - - - - - - -610668.1231967269 5035865.259882145 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 - - - - - - - - -610619.3578221387 5035915.772196898 572.989868164063 610614.1462577312 5035911.9282374615 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610619.3578221387 5035915.772196898 572.989868164063 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610649.8555010457 5035851.7888990585 572.989868164063 610692.6219659926 5035794.191143957 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610663.4816818945 5035908.180781324 572.989868164063 610645.8968785583 5035895.203257089 572.989868164063 610663.4816818945 5035908.180781324 566.578491210938 610663.4816818945 5035908.180781324 572.989868164063 - - - - - - - - -610645.8968785583 5035895.203257089 572.989868164063 610645.8968785583 5035895.203257089 566.578491210938 610663.4816818945 5035908.180781324 566.578491210938 610645.8968785583 5035895.203257089 572.989868164063 - - - - - - - - -610616.5297475372 5035908.71028959 566.578491210938 610616.5297475372 5035908.71028959 572.989868164063 610614.1462577312 5035911.9282374615 572.989868164063 610616.5297475372 5035908.71028959 566.578491210938 - - - - - - - - -610616.5297475372 5035908.71028959 566.578491210938 610614.1462577312 5035911.9282374615 572.989868164063 610614.1462577312 5035911.9282374615 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 - - - - - - - - -610619.3578221387 5035915.772196898 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 - - - - - - - - -610621.7522854737 5035912.554446138 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 - - - - - - - - -610616.5297475372 5035908.71028959 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 - - - - - - - - -610668.1231967269 5035865.259882145 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 - - - - - - - - -610645.8968785583 5035895.203257089 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 - - - - - - - - -610646.6181083214 5035930.900036323 566.578491210938 610663.4816818945 5035908.180781324 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 - - - - - - - - -610646.6181083214 5035930.900036323 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610621.7522854737 5035912.554446138 566.578491210938 610646.6181083214 5035930.900036323 566.578491210938 - - - - - - - - -610668.1231967269 5035865.259882145 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610668.1231967269 5035865.259882145 566.578491210938 - - - - - - - - -610619.3578221387 5035915.772196898 566.578491210938 610616.5297475372 5035908.71028959 566.578491210938 610614.1462577312 5035911.9282374615 566.578491210938 610619.3578221387 5035915.772196898 566.578491210938 - - - - - - - - -610710.889553302 5035807.673307475 566.578491210938 610692.6219659926 5035794.191143957 566.578491210938 610649.8555010457 5035851.7888990585 566.578491210938 610710.889553302 5035807.673307475 566.578491210938 - - - - - - - - -610668.1231967269 5035865.259882145 572.989868164063 610645.8968785583 5035895.203257089 566.578491210938 610645.8968785583 5035895.203257089 572.989868164063 610668.1231967269 5035865.259882145 572.989868164063 - - - - - - - - -610668.1231967269 5035865.259882145 566.578491210938 610645.8968785583 5035895.203257089 566.578491210938 610668.1231967269 5035865.259882145 572.989868164063 610668.1231967269 5035865.259882145 566.578491210938 - - - - - - - - -610610.7547462888 5035904.451651935 572.989868164063 610616.5297475372 5035908.71028959 572.989868164063 610610.7547462888 5035904.451651935 566.578491210938 610610.7547462888 5035904.451651935 572.989868164063 - - - - - - - - -610616.5297475372 5035908.71028959 572.989868164063 610616.5297475372 5035908.71028959 566.578491210938 610610.7547462888 5035904.451651935 566.578491210938 610616.5297475372 5035908.71028959 572.989868164063 - - - - - - - - - - - - -residential -1996 -6.411376953125 -1 -4.5 - - - - - - - - -610621.7524780579 5035912.543510207 579.401306152344 610623.0743290926 5035913.518509444 579.401306152344 610621.7524780579 5035912.543510207 572.989929199219 610621.7524780579 5035912.543510207 579.401306152344 - - - - - - - - -610623.0743290926 5035913.518509444 579.401306152344 610623.0743290926 5035913.518509444 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610623.0743290926 5035913.518509444 579.401306152344 - - - - - - - - -610619.3362629502 5035915.74993861 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 - - - - - - - - -610616.5191605 5035908.688224501 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 610610.7547462888 5035904.451651935 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 - - - - - - - - -610621.7524780579 5035912.543510207 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 - - - - - - - - -610704.9412724827 5035803.280188803 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 - - - - - - - - -610623.0743290926 5035913.518509444 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610621.7524780579 5035912.543510207 572.989929199219 610623.0743290926 5035913.518509444 572.989929199219 - - - - - - - - -610619.3362629502 5035915.74993861 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 610614.1350929802 5035911.9389801845 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 - - - - - - - - -610704.9412724827 5035803.280188803 579.401306152344 610623.0743290926 5035913.518509444 572.989929199219 610623.0743290926 5035913.518509444 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 - - - - - - - - -610704.9412724827 5035803.280188803 572.989929199219 610623.0743290926 5035913.518509444 572.989929199219 610704.9412724827 5035803.280188803 579.401306152344 610704.9412724827 5035803.280188803 572.989929199219 - - - - - - - - -610619.3362629502 5035915.74993861 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 - - - - - - - - -610616.5191605 5035908.688224501 579.401306152344 610610.7547462888 5035904.451651935 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 - - - - - - - - -610621.7524780579 5035912.543510207 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 - - - - - - - - -610704.9412724827 5035803.280188803 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 - - - - - - - - -610623.0743290926 5035913.518509444 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610623.0743290926 5035913.518509444 579.401306152344 - - - - - - - - -610619.3362629502 5035915.74993861 579.401306152344 610614.1350929802 5035911.9389801845 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 - - - - - - - - -610621.7524780579 5035912.543510207 579.401306152344 610619.3362629502 5035915.74993861 572.989929199219 610619.3362629502 5035915.74993861 579.401306152344 610621.7524780579 5035912.543510207 579.401306152344 - - - - - - - - -610621.7524780579 5035912.543510207 572.989929199219 610619.3362629502 5035915.74993861 572.989929199219 610621.7524780579 5035912.543510207 579.401306152344 610621.7524780579 5035912.543510207 572.989929199219 - - - - - - - - -610614.1350929802 5035911.9389801845 579.401306152344 610619.3362629502 5035915.74993861 579.401306152344 610614.1350929802 5035911.9389801845 572.989929199219 610614.1350929802 5035911.9389801845 579.401306152344 - - - - - - - - -610619.3362629502 5035915.74993861 579.401306152344 610619.3362629502 5035915.74993861 572.989929199219 610614.1350929802 5035911.9389801845 572.989929199219 610619.3362629502 5035915.74993861 579.401306152344 - - - - - - - - -610704.9412724827 5035803.280188803 579.401306152344 610692.6329383818 5035794.1913372995 579.401306152344 610704.9412724827 5035803.280188803 572.989929199219 610704.9412724827 5035803.280188803 579.401306152344 - - - - - - - - -610692.6329383818 5035794.1913372995 579.401306152344 610692.6329383818 5035794.1913372995 572.989929199219 610704.9412724827 5035803.280188803 572.989929199219 610692.6329383818 5035794.1913372995 579.401306152344 - - - - - - - - -610616.5191605 5035908.688224501 572.989929199219 610616.5191605 5035908.688224501 579.401306152344 610614.1350929802 5035911.9389801845 579.401306152344 610616.5191605 5035908.688224501 572.989929199219 - - - - - - - - -610616.5191605 5035908.688224501 572.989929199219 610614.1350929802 5035911.9389801845 579.401306152344 610614.1350929802 5035911.9389801845 572.989929199219 610616.5191605 5035908.688224501 572.989929199219 - - - - - - - - -610692.6329383818 5035794.1913372995 572.989929199219 610692.6329383818 5035794.1913372995 579.401306152344 610610.7547462888 5035904.451651935 579.401306152344 610692.6329383818 5035794.1913372995 572.989929199219 - - - - - - - - -610692.6329383818 5035794.1913372995 572.989929199219 610610.7547462888 5035904.451651935 579.401306152344 610610.7547462888 5035904.451651935 572.989929199219 610692.6329383818 5035794.1913372995 572.989929199219 - - - - - - - - -610610.7547462888 5035904.451651935 579.401306152344 610616.5191605 5035908.688224501 579.401306152344 610610.7547462888 5035904.451651935 572.989929199219 610610.7547462888 5035904.451651935 579.401306152344 - - - - - - - - -610616.5191605 5035908.688224501 579.401306152344 610616.5191605 5035908.688224501 572.989929199219 610610.7547462888 5035904.451651935 572.989929199219 610616.5191605 5035908.688224501 579.401306152344 - - - - - - - - - - - - -residential -1996 -6.411437988281023 -1 -4.5 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 610629.0223648318 5035917.922411644 579.401306152344 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610629.0223648318 5035917.922411644 579.401306152344 610710.889553302 5035807.673307475 579.401306152344 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610710.889553302 5035807.673307475 579.401306152344 610704.9412724827 5035803.280188803 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 610710.889553302 5035807.673307475 579.401306152344 - - - - - - - - -610704.9412724827 5035803.280188803 579.401306152344 610704.9412724827 5035803.280188803 572.989868164063 610710.889553302 5035807.673307475 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 - - - - - - - - -610629.0223648318 5035917.922411644 579.401306152344 610623.0741365062 5035913.5294453725 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 - - - - - - - - -610710.889553302 5035807.673307475 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 610704.9412724827 5035803.280188803 579.401306152344 610710.889553302 5035807.673307475 579.401306152344 - - - - - - - - -610629.0223648318 5035917.922411644 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 610623.0741365062 5035913.5294453725 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 - - - - - - - - -610710.889553302 5035807.673307475 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 610629.0223648318 5035917.922411644 572.989868164063 610710.889553302 5035807.673307475 572.989868164063 - - - - - - - - -610623.0741365062 5035913.5294453725 579.401306152344 610629.0223648318 5035917.922411644 572.989868164063 610623.0741365062 5035913.5294453725 572.989868164063 610623.0741365062 5035913.5294453725 579.401306152344 - - - - - - - - -610629.0223648318 5035917.922411644 579.401306152344 610629.0223648318 5035917.922411644 572.989868164063 610623.0741365062 5035913.5294453725 579.401306152344 610629.0223648318 5035917.922411644 579.401306152344 - - - - - - - - -610704.9412724827 5035803.280188803 572.989868164063 610704.9412724827 5035803.280188803 579.401306152344 610623.0741365062 5035913.5294453725 572.989868164063 610704.9412724827 5035803.280188803 572.989868164063 - - - - - - - - -610704.9412724827 5035803.280188803 579.401306152344 610623.0741365062 5035913.5294453725 579.401306152344 610623.0741365062 5035913.5294453725 572.989868164063 610704.9412724827 5035803.280188803 579.401306152344 - - - - - - - - - - - - -residential -1996 -6.411376953125 -1 -4.5 - - - - - - - - -610681.0666060724 5035921.147394737 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 610664.20319311 5035943.855621107 579.401306152344 610681.0666060724 5035921.147394737 572.989929199219 - - - - - - - - -610681.0666060724 5035921.147394737 572.989929199219 610664.20319311 5035943.855621107 579.401306152344 610681.0666060724 5035921.147394737 579.401306152344 610681.0666060724 5035921.147394737 572.989929199219 - - - - - - - - -610681.0666060724 5035921.147394737 579.401306152344 610645.9080433963 5035895.192514391 572.989929199219 610681.0666060724 5035921.147394737 572.989929199219 610681.0666060724 5035921.147394737 579.401306152344 - - - - - - - - -610645.9080433963 5035895.192514391 579.401306152344 610645.9080433963 5035895.192514391 572.989929199219 610681.0666060724 5035921.147394737 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 - - - - - - - - -610664.20319311 5035943.855621107 579.401306152344 610629.0113926606 5035917.922218408 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 - - - - - - - - -610664.20319311 5035943.855621107 579.401306152344 610645.9080433963 5035895.192514391 579.401306152344 610681.0666060724 5035921.147394737 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 - - - - - - - - -610664.20319311 5035943.855621107 572.989929199219 610681.0666060724 5035921.147394737 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 - - - - - - - - -610664.20319311 5035943.855621107 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 610629.0113926606 5035917.922218408 572.989929199219 610664.20319311 5035943.855621107 572.989929199219 - - - - - - - - -610629.0113926606 5035917.922218408 579.401306152344 610664.20319311 5035943.855621107 572.989929199219 610629.0113926606 5035917.922218408 572.989929199219 610629.0113926606 5035917.922218408 579.401306152344 - - - - - - - - -610664.20319311 5035943.855621107 579.401306152344 610664.20319311 5035943.855621107 572.989929199219 610629.0113926606 5035917.922218408 579.401306152344 610664.20319311 5035943.855621107 579.401306152344 - - - - - - - - -610645.9080433963 5035895.192514391 572.989929199219 610645.9080433963 5035895.192514391 579.401306152344 610629.0113926606 5035917.922218408 572.989929199219 610645.9080433963 5035895.192514391 572.989929199219 - - - - - - - - -610645.9080433963 5035895.192514391 579.401306152344 610629.0113926606 5035917.922218408 579.401306152344 610629.0113926606 5035917.922218408 572.989929199219 610645.9080433963 5035895.192514391 579.401306152344 - - - - - - - - - - - - - - - - -residential -1996 -14.532531738281023 -3 -3.4 - - - - - - - - -610730.5091460128 5035898.247573101 578.840942382813 610730.5091460128 5035898.247573101 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610730.5091460128 5035898.247573101 578.840942382813 - - - - - - - - -610734.9514596879 5035901.520172936 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610734.9514596879 5035901.520172936 573.996765136719 610734.9514596879 5035901.520172936 578.840942382813 - - - - - - - - -610730.5091460128 5035898.247573101 573.996765136719 610709.3888679559 5035920.847918315 578.840942382813 610709.3888679559 5035920.847918315 573.996765136719 610730.5091460128 5035898.247573101 573.996765136719 - - - - - - - - -610730.5091460128 5035898.247573101 573.996765136719 610730.5091460128 5035898.247573101 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610730.5091460128 5035898.247573101 573.996765136719 - - - - - - - - -610753.0128684435 5035914.845466099 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610753.0128684435 5035914.845466099 573.996765136719 - - - - - - - - -610734.9514596879 5035901.520172936 573.996765136719 610730.5091460128 5035898.247573101 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 - - - - - - - - -610733.181859054 5035938.39824457 573.996765136719 610734.9514596879 5035901.520172936 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 - - - - - - - - -610716.5712022368 5035954.229941277 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 610695.9420089822 5035939.010844626 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 - - - - - - - - -610716.5712022368 5035954.229941277 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 - - - - - - - - -610716.5712022368 5035954.229941277 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 - - - - - - - - -610696.2016912752 5035938.599727995 573.996765136719 610695.9420089822 5035939.010844626 578.648071289063 610695.9420089822 5035939.010844626 573.996765136719 610696.2016912752 5035938.599727995 573.996765136719 - - - - - - - - -610696.2016912752 5035938.599727995 573.996765136719 610696.1905264247 5035938.610470531 578.835571289063 610695.9420089822 5035939.010844626 578.648071289063 610696.2016912752 5035938.599727995 573.996765136719 - - - - - - - - -610753.0128684435 5035914.845466099 588.529296875 610733.181859054 5035938.39824457 583.6851196289069 610733.181859054 5035938.39824457 588.529296875 610753.0128684435 5035914.845466099 588.529296875 - - - - - - - - -610753.0128684435 5035914.845466099 583.6851196289069 610733.181859054 5035938.39824457 578.840942382813 610733.181859054 5035938.39824457 583.6851196289069 610753.0128684435 5035914.845466099 583.6851196289069 - - - - - - - - -610753.0128684435 5035914.845466099 573.996765136719 610733.181859054 5035938.39824457 573.996765136719 610753.0128684435 5035914.845466099 578.840942382813 610753.0128684435 5035914.845466099 573.996765136719 - - - - - - - - -610753.0128684435 5035914.845466099 583.6851196289069 610733.181859054 5035938.39824457 583.6851196289069 610753.0128684435 5035914.845466099 588.529296875 610753.0128684435 5035914.845466099 583.6851196289069 - - - - - - - - -610753.0128684435 5035914.845466099 578.840942382813 610733.181859054 5035938.39824457 578.840942382813 610753.0128684435 5035914.845466099 583.6851196289069 610753.0128684435 5035914.845466099 578.840942382813 - - - - - - - - -610753.0128684435 5035914.845466099 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610733.181859054 5035938.39824457 578.840942382813 610753.0128684435 5035914.845466099 578.840942382813 - - - - - - - - -610753.0128684435 5035914.845466099 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610753.0128684435 5035914.845466099 583.6851196289069 610753.0128684435 5035914.845466099 588.529296875 - - - - - - - - -610753.0128684435 5035914.845466099 583.6851196289069 610734.9514596879 5035901.520172936 583.6851196289069 610753.0128684435 5035914.845466099 578.840942382813 610753.0128684435 5035914.845466099 583.6851196289069 - - - - - - - - -610753.0128684435 5035914.845466099 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 610753.0128684435 5035914.845466099 573.996765136719 610753.0128684435 5035914.845466099 578.840942382813 - - - - - - - - -610734.9514596879 5035901.520172936 588.529296875 610734.9514596879 5035901.520172936 583.6851196289069 610753.0128684435 5035914.845466099 583.6851196289069 610734.9514596879 5035901.520172936 588.529296875 - - - - - - - - -610734.9514596879 5035901.520172936 583.6851196289069 610734.9514596879 5035901.520172936 578.840942382813 610753.0128684435 5035914.845466099 578.840942382813 610734.9514596879 5035901.520172936 583.6851196289069 - - - - - - - - -610734.9514596879 5035901.520172936 578.840942382813 610734.9514596879 5035901.520172936 573.996765136719 610753.0128684435 5035914.845466099 573.996765136719 610734.9514596879 5035901.520172936 578.840942382813 - - - - - - - - -610696.2016912752 5035938.599727995 578.839050292969 610696.1905264247 5035938.610470531 578.835571289063 610696.2016912752 5035938.599727995 573.996765136719 610696.2016912752 5035938.599727995 578.839050292969 - - - - - - - - -610709.3888679559 5035920.847918315 573.996765136719 610696.2016912752 5035938.599727995 578.839050292969 610696.2016912752 5035938.599727995 573.996765136719 610709.3888679559 5035920.847918315 573.996765136719 - - - - - - - - -610709.3888679559 5035920.847918315 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610709.3888679559 5035920.847918315 578.840942382813 - - - - - - - - -610709.3888679559 5035920.847918315 573.996765136719 610709.3888679559 5035920.847918315 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610709.3888679559 5035920.847918315 573.996765136719 - - - - - - - - -610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 - - - - - - - - -610734.9514596879 5035901.520172936 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 - - - - - - - - -610713.8311757242 5035924.120491701 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610730.5091460128 5035898.247573101 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 - - - - - - - - -610713.8311757242 5035924.120491701 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610709.3888679559 5035920.847918315 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 - - - - - - - - -610703.7644574965 5035944.1698274845 578.840942382813 610696.2016912752 5035938.599727995 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 - - - - - - - - -610701.6014704753 5035968.504367453 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610701.6014704753 5035968.504367453 578.840942382813 - - - - - - - - -610734.9514596879 5035901.520172936 583.6851196289069 610734.9514596879 5035901.520172936 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610734.9514596879 5035901.520172936 583.6851196289069 - - - - - - - - -610734.9514596879 5035901.520172936 578.840942382813 610734.9514596879 5035901.520172936 583.6851196289069 610713.8311757242 5035924.120491701 583.6851196289069 610734.9514596879 5035901.520172936 578.840942382813 - - - - - - - - -610734.9514596879 5035901.520172936 583.6851196289069 610713.8311757242 5035924.120491701 588.529296875 610713.8311757242 5035924.120491701 583.6851196289069 610734.9514596879 5035901.520172936 583.6851196289069 - - - - - - - - -610734.9514596879 5035901.520172936 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610713.8311757242 5035924.120491701 578.840942382813 610734.9514596879 5035901.520172936 578.840942382813 - - - - - - - - -610703.5371131136 5035944.614331181 578.648071289063 610716.5712022368 5035954.229941277 573.996765136719 610695.9420089822 5035939.010844626 573.996765136719 610703.5371131136 5035944.614331181 578.648071289063 - - - - - - - - -610695.9420089822 5035939.010844626 578.648071289063 610703.5371131136 5035944.614331181 578.648071289063 610695.9420089822 5035939.010844626 573.996765136719 610695.9420089822 5035939.010844626 578.648071289063 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.713562011719 610703.5371131136 5035944.614331181 578.648071289063 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.840942382813 610703.5371131136 5035944.614331181 578.713562011719 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610703.5371131136 5035944.614331181 578.648071289063 610695.9420089822 5035939.010844626 578.648071289063 610703.7530999134 5035944.1915058745 578.835571289063 610703.5371131136 5035944.614331181 578.648071289063 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610695.9420089822 5035939.010844626 578.648071289063 610696.1905264247 5035938.610470531 578.835571289063 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610696.1905264247 5035938.610470531 578.835571289063 610696.2016912752 5035938.599727995 578.839050292969 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610733.181859054 5035938.39824457 583.6851196289069 610733.181859054 5035938.39824457 578.840942382813 610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 583.6851196289069 - - - - - - - - -610733.181859054 5035938.39824457 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 578.840942382813 - - - - - - - - -610716.9284778136 5035953.886182148 578.840942382813 610733.181859054 5035938.39824457 573.996765136719 610716.5712022368 5035954.229941277 573.996765136719 610716.9284778136 5035953.886182148 578.840942382813 - - - - - - - - -610753.0128684435 5035914.845466099 588.529296875 610733.181859054 5035938.39824457 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610753.0128684435 5035914.845466099 588.529296875 - - - - - - - - -610733.181859054 5035938.39824457 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610734.9514596879 5035901.520172936 588.529296875 610733.181859054 5035938.39824457 588.529296875 - - - - - - - - -610701.6014704753 5035968.504367453 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610733.181859054 5035938.39824457 588.529296875 610701.6014704753 5035968.504367453 588.529296875 - - - - - - - - -610733.181859054 5035938.39824457 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610713.8311757242 5035924.120491701 588.529296875 610733.181859054 5035938.39824457 588.529296875 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610696.2016912752 5035938.599727995 578.839050292969 610703.7644574965 5035944.1698274845 578.840942382813 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610696.2016912752 5035938.599727995 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 610696.2016912752 5035938.599727995 578.839050292969 610696.2016912752 5035938.599727995 578.840942382813 - - - - - - - - -610713.8311757242 5035924.120491701 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610703.7644574965 5035944.1698274845 578.840942382813 610713.8311757242 5035924.120491701 578.840942382813 - - - - - - - - -610713.8311757242 5035924.120491701 583.6851196289069 610713.8311757242 5035924.120491701 588.529296875 610694.2664484897 5035963.091453249 588.529296875 610713.8311757242 5035924.120491701 583.6851196289069 - - - - - - - - -610713.8311757242 5035924.120491701 583.6851196289069 610694.2664484897 5035963.091453249 588.529296875 610694.2664484897 5035963.091453249 583.6851196289069 610713.8311757242 5035924.120491701 583.6851196289069 - - - - - - - - -610716.5712022368 5035954.229941277 578.840942382813 610716.9284778136 5035953.886182148 578.840942382813 610716.5712022368 5035954.229941277 573.996765136719 610716.5712022368 5035954.229941277 578.840942382813 - - - - - - - - -610716.5712022368 5035954.229941277 578.840942382813 610716.5712022368 5035954.229941277 573.996765136719 610703.5371131136 5035944.614331181 578.648071289063 610716.5712022368 5035954.229941277 578.840942382813 - - - - - - - - -610703.5371131136 5035944.614331181 578.713562011719 610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.648071289063 610703.5371131136 5035944.614331181 578.713562011719 - - - - - - - - -610703.5371131136 5035944.614331181 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610703.5371131136 5035944.614331181 578.713562011719 610703.5371131136 5035944.614331181 578.840942382813 - - - - - - - - -610703.7530999134 5035944.1915058745 578.835571289063 610703.7644574965 5035944.1698274845 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 610703.7530999134 5035944.1915058745 578.835571289063 - - - - - - - - -610701.6014704753 5035968.504367453 588.529296875 610733.181859054 5035938.39824457 588.529296875 610701.6014704753 5035968.504367453 583.6851196289069 610701.6014704753 5035968.504367453 588.529296875 - - - - - - - - -610733.181859054 5035938.39824457 588.529296875 610733.181859054 5035938.39824457 583.6851196289069 610701.6014704753 5035968.504367453 583.6851196289069 610733.181859054 5035938.39824457 588.529296875 - - - - - - - - -610733.181859054 5035938.39824457 583.6851196289069 610716.9284778136 5035953.886182148 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 610733.181859054 5035938.39824457 583.6851196289069 - - - - - - - - -610716.9284778136 5035953.886182148 578.840942382813 610716.5712022368 5035954.229941277 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 610716.9284778136 5035953.886182148 578.840942382813 - - - - - - - - -610701.6014704753 5035968.504367453 583.6851196289069 610716.5712022368 5035954.229941277 578.840942382813 610701.6014704753 5035968.504367453 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 - - - - - - - - -610694.2664484897 5035963.091453249 588.529296875 610701.6014704753 5035968.504367453 588.529296875 610694.2664484897 5035963.091453249 583.6851196289069 610694.2664484897 5035963.091453249 588.529296875 - - - - - - - - -610694.2664484897 5035963.091453249 583.6851196289069 610701.6014704753 5035968.504367453 583.6851196289069 610694.2664484897 5035963.091453249 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 - - - - - - - - -610701.6014704753 5035968.504367453 588.529296875 610701.6014704753 5035968.504367453 583.6851196289069 610694.2664484897 5035963.091453249 583.6851196289069 610701.6014704753 5035968.504367453 588.529296875 - - - - - - - - -610701.6014704753 5035968.504367453 583.6851196289069 610701.6014704753 5035968.504367453 578.840942382813 610694.2664484897 5035963.091453249 578.840942382813 610701.6014704753 5035968.504367453 583.6851196289069 - - - - - - - - -610703.5371131136 5035944.614331181 578.840942382813 610703.7644574965 5035944.1698274845 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 610703.5371131136 5035944.614331181 578.840942382813 - - - - - - - - -610703.7644574965 5035944.1698274845 578.840942382813 610713.8311757242 5035924.120491701 583.6851196289069 610694.2664484897 5035963.091453249 583.6851196289069 610703.7644574965 5035944.1698274845 578.840942382813 - - - - - - - - -610703.5371131136 5035944.614331181 578.840942382813 610694.2664484897 5035963.091453249 583.6851196289069 610694.2664484897 5035963.091453249 578.840942382813 610703.5371131136 5035944.614331181 578.840942382813 - - - - - - - - - - - - -residential -1996 -7.002624511718977 -1 -5 - - - - - - - - -610730.4983665772 5035898.236443731 573.996704101563 610730.4983665772 5035898.236443731 566.994079589844 610753.0132540688 5035914.823594236 566.994079589844 610730.4983665772 5035898.236443731 573.996704101563 - - - - - - - - -610753.0132540688 5035914.823594236 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610753.0132540688 5035914.823594236 566.994079589844 610753.0132540688 5035914.823594236 573.996704101563 - - - - - - - - -610753.0132540688 5035914.823594236 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 610753.0132540688 5035914.823594236 573.996704101563 610753.0132540688 5035914.823594236 566.994079589844 - - - - - - - - -610753.0132540688 5035914.823594236 573.996704101563 610733.1708869145 5035938.398051152 566.994079589844 610733.1708869145 5035938.398051152 573.996704101563 610753.0132540688 5035914.823594236 573.996704101563 - - - - - - - - -610733.1708869145 5035938.398051152 566.994079589844 610753.0132540688 5035914.823594236 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 - - - - - - - - -610733.1708869145 5035938.398051152 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 - - - - - - - - -610716.9173129515 5035953.896924622 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610696.1799397165 5035938.5884054005 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 - - - - - - - - -610716.9173129515 5035953.896924622 566.994079589844 610733.1708869145 5035938.398051152 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 - - - - - - - - -610733.1708869145 5035938.398051152 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610753.0132540688 5035914.823594236 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 - - - - - - - - -610733.1708869145 5035938.398051152 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610730.4983665772 5035898.236443731 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 - - - - - - - - -610716.9173129515 5035953.896924622 573.996704101563 610696.1799397165 5035938.5884054005 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 - - - - - - - - -610716.9173129515 5035953.896924622 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 - - - - - - - - -610730.4983665772 5035898.236443731 566.994079589844 610709.4004183351 5035920.81530393 573.996704101563 610709.4004183351 5035920.81530393 566.994079589844 610730.4983665772 5035898.236443731 566.994079589844 - - - - - - - - -610730.4983665772 5035898.236443731 566.994079589844 610730.4983665772 5035898.236443731 573.996704101563 610709.4004183351 5035920.81530393 573.996704101563 610730.4983665772 5035898.236443731 566.994079589844 - - - - - - - - -610733.1708869145 5035938.398051152 573.996704101563 610733.1708869145 5035938.398051152 566.994079589844 610716.9173129515 5035953.896924622 566.994079589844 610733.1708869145 5035938.398051152 573.996704101563 - - - - - - - - -610716.9173129515 5035953.896924622 573.996704101563 610733.1708869145 5035938.398051152 573.996704101563 610716.9173129515 5035953.896924622 566.994079589844 610716.9173129515 5035953.896924622 573.996704101563 - - - - - - - - -610709.4004183351 5035920.81530393 566.994079589844 610696.1799397165 5035938.5884054005 573.996704101563 610696.1799397165 5035938.5884054005 566.994079589844 610709.4004183351 5035920.81530393 566.994079589844 - - - - - - - - -610709.4004183351 5035920.81530393 566.994079589844 610709.4004183351 5035920.81530393 573.996704101563 610696.1799397165 5035938.5884054005 573.996704101563 610709.4004183351 5035920.81530393 566.994079589844 - - - - - - - - -610716.9173129515 5035953.896924622 573.996704101563 610716.9173129515 5035953.896924622 566.994079589844 610696.1799397165 5035938.5884054005 566.994079589844 610716.9173129515 5035953.896924622 573.996704101563 - - - - - - - - -610696.1799397165 5035938.5884054005 573.996704101563 610716.9173129515 5035953.896924622 573.996704101563 610696.1799397165 5035938.5884054005 566.994079589844 610696.1799397165 5035938.5884054005 573.996704101563 - - - - - - - - - - - - - - - - -residential -1996 -24.220886230468977 -5 -3.4 - - - - - - - - -610778.5757756741 5035838.250034396 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610778.5757756741 5035838.250034396 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 - - - - - - - - -610798.1650870934 5035852.6964745615 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 - - - - - - - - -610812.6156817194 5035835.524813268 593.373474121094 610798.1650870934 5035852.6964745615 593.373474121094 610812.6156817194 5035835.524813268 598.217651367188 610812.6156817194 5035835.524813268 593.373474121094 - - - - - - - - -610812.6156817194 5035835.524813268 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610812.6156817194 5035835.524813268 593.373474121094 610812.6156817194 5035835.524813268 588.529296875 - - - - - - - - -610812.6156817194 5035835.524813268 598.217651367188 610798.1650870934 5035852.6964745615 593.373474121094 610798.1650870934 5035852.6964745615 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 - - - - - - - - -610812.6156817194 5035835.524813268 593.373474121094 610798.1650870934 5035852.6964745615 588.529296875 610798.1650870934 5035852.6964745615 593.373474121094 610812.6156817194 5035835.524813268 593.373474121094 - - - - - - - - -610796.093459915 5035775.995860917 598.217651367188 610796.093459915 5035775.995860917 593.373474121094 610812.6156817194 5035835.524813268 593.373474121094 610796.093459915 5035775.995860917 598.217651367188 - - - - - - - - -610796.093459915 5035775.995860917 593.373474121094 610796.093459915 5035775.995860917 588.529296875 610812.6156817194 5035835.524813268 588.529296875 610796.093459915 5035775.995860917 593.373474121094 - - - - - - - - -610812.6156817194 5035835.524813268 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610812.6156817194 5035835.524813268 593.373474121094 610812.6156817194 5035835.524813268 598.217651367188 - - - - - - - - -610812.6156817194 5035835.524813268 593.373474121094 610796.093459915 5035775.995860917 593.373474121094 610812.6156817194 5035835.524813268 588.529296875 610812.6156817194 5035835.524813268 593.373474121094 - - - - - - - - -610778.6192792265 5035838.272680501 588.529296875 610784.3296125665 5035829.392075743 588.529296875 610778.5757756741 5035838.250034396 588.529296875 610778.6192792265 5035838.272680501 588.529296875 - - - - - - - - -610812.6156817194 5035835.524813268 588.529296875 610796.093459915 5035775.995860917 588.529296875 610818.6731258357 5035836.83501248 588.529296875 610812.6156817194 5035835.524813268 588.529296875 - - - - - - - - -610818.6731258357 5035836.83501248 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610812.6156817194 5035835.524813268 588.529296875 610818.6731258357 5035836.83501248 588.529296875 - - - - - - - - -610796.093459915 5035775.995860917 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610796.093459915 5035775.995860917 588.529296875 - - - - - - - - -610818.6731258357 5035836.83501248 588.529296875 610796.093459915 5035775.995860917 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610818.6731258357 5035836.83501248 588.529296875 - - - - - - - - -610734.538063405 5035778.651829647 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610796.093459915 5035775.995860917 588.529296875 610734.538063405 5035778.651829647 588.529296875 - - - - - - - - -610782.6784284493 5035879.454642432 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610782.6784284493 5035879.454642432 588.529296875 - - - - - - - - -610818.6731258357 5035836.83501248 588.529296875 610782.6784284493 5035879.454642432 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 610818.6731258357 5035836.83501248 588.529296875 - - - - - - - - -610798.1650870934 5035852.6964745615 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610798.1650870934 5035852.6964745615 588.529296875 - - - - - - - - -610778.5757756741 5035838.250034396 593.373474121094 610778.6192792265 5035838.272680501 588.529296875 610778.5757756741 5035838.250034396 588.529296875 610778.5757756741 5035838.250034396 593.373474121094 - - - - - - - - -610798.1650870934 5035852.6964745615 593.373474121094 610778.6192792265 5035838.272680501 588.529296875 610778.5757756741 5035838.250034396 593.373474121094 610798.1650870934 5035852.6964745615 593.373474121094 - - - - - - - - -610798.1650870934 5035852.6964745615 593.373474121094 610798.1650870934 5035852.6964745615 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610798.1650870934 5035852.6964745615 593.373474121094 - - - - - - - - -610735.6689161435 5035804.160897724 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610735.6689161435 5035804.160897724 598.217651367188 - - - - - - - - -610812.6156817194 5035835.524813268 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 - - - - - - - - -610776.8375347028 5035802.381591275 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610796.093459915 5035775.995860917 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 - - - - - - - - -610784.3296125665 5035829.392075743 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 - - - - - - - - -610798.1650870934 5035852.6964745615 598.217651367188 610778.5757756741 5035838.250034396 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 - - - - - - - - -610798.1650870934 5035852.6964745615 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610812.6156817194 5035835.524813268 598.217651367188 610798.1650870934 5035852.6964745615 598.217651367188 - - - - - - - - -610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 598.217651367188 610778.5757756741 5035838.250034396 593.373474121094 610784.3296125665 5035829.392075743 593.373474121094 - - - - - - - - -610784.3296125665 5035829.392075743 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 588.529296875 610784.3296125665 5035829.392075743 588.529296875 - - - - - - - - -610784.3296125665 5035829.392075743 593.373474121094 610784.3296125665 5035829.392075743 598.217651367188 610778.5757756741 5035838.250034396 598.217651367188 610784.3296125665 5035829.392075743 593.373474121094 - - - - - - - - -610784.3296125665 5035829.392075743 593.373474121094 610778.5757756741 5035838.250034396 593.373474121094 610778.5757756741 5035838.250034396 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 - - - - - - - - -610734.538063405 5035778.651829647 598.217651367188 610734.538063405 5035778.651829647 593.373474121094 610796.093459915 5035775.995860917 593.373474121094 610734.538063405 5035778.651829647 598.217651367188 - - - - - - - - -610734.538063405 5035778.651829647 593.373474121094 610734.538063405 5035778.651829647 588.529296875 610796.093459915 5035775.995860917 588.529296875 610734.538063405 5035778.651829647 593.373474121094 - - - - - - - - -610796.093459915 5035775.995860917 598.217651367188 610734.538063405 5035778.651829647 598.217651367188 610796.093459915 5035775.995860917 593.373474121094 610796.093459915 5035775.995860917 598.217651367188 - - - - - - - - -610796.093459915 5035775.995860917 593.373474121094 610734.538063405 5035778.651829647 593.373474121094 610796.093459915 5035775.995860917 588.529296875 610796.093459915 5035775.995860917 593.373474121094 - - - - - - - - -610818.6731258357 5035836.83501248 583.6851196289069 610782.6784284493 5035879.454642432 583.6851196289069 610818.6731258357 5035836.83501248 588.529296875 610818.6731258357 5035836.83501248 583.6851196289069 - - - - - - - - -610818.6731258357 5035836.83501248 578.840942382813 610782.6784284493 5035879.454642432 578.840942382813 610818.6731258357 5035836.83501248 583.6851196289069 610818.6731258357 5035836.83501248 578.840942382813 - - - - - - - - -610818.6731258357 5035836.83501248 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 578.840942382813 610818.6731258357 5035836.83501248 573.996765136719 - - - - - - - - -610818.6731258357 5035836.83501248 588.529296875 610782.6784284493 5035879.454642432 583.6851196289069 610782.6784284493 5035879.454642432 588.529296875 610818.6731258357 5035836.83501248 588.529296875 - - - - - - - - -610818.6731258357 5035836.83501248 583.6851196289069 610782.6784284493 5035879.454642432 578.840942382813 610782.6784284493 5035879.454642432 583.6851196289069 610818.6731258357 5035836.83501248 583.6851196289069 - - - - - - - - -610818.6731258357 5035836.83501248 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610782.6784284493 5035879.454642432 578.840942382813 610818.6731258357 5035836.83501248 578.840942382813 - - - - - - - - -610782.6784284493 5035879.454642432 588.529296875 610782.6784284493 5035879.454642432 583.6851196289069 610761.9515425221 5035864.167794568 583.6851196289069 610782.6784284493 5035879.454642432 588.529296875 - - - - - - - - -610782.6784284493 5035879.454642432 583.6851196289069 610782.6784284493 5035879.454642432 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 583.6851196289069 - - - - - - - - -610782.6784284493 5035879.454642432 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 578.840942382813 - - - - - - - - -610761.9515425221 5035864.167794568 588.529296875 610782.6784284493 5035879.454642432 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610761.9515425221 5035864.167794568 588.529296875 - - - - - - - - -610761.9515425221 5035864.167794568 583.6851196289069 610782.6784284493 5035879.454642432 583.6851196289069 610761.9515425221 5035864.167794568 578.840942382813 610761.9515425221 5035864.167794568 583.6851196289069 - - - - - - - - -610778.6192792265 5035838.272680501 588.529296875 610761.9515425221 5035864.167794568 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610778.6192792265 5035838.272680501 588.529296875 - - - - - - - - -610784.3296125665 5035829.392075743 583.6851196289069 610784.3296125665 5035829.392075743 588.529296875 610778.6192792265 5035838.272680501 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 - - - - - - - - -610784.3296125665 5035829.392075743 583.6851196289069 610778.6192792265 5035838.272680501 588.529296875 610761.9515425221 5035864.167794568 583.6851196289069 610784.3296125665 5035829.392075743 583.6851196289069 - - - - - - - - -610784.3296125665 5035829.392075743 598.217651367188 610784.3296125665 5035829.392075743 593.373474121094 610776.8375347028 5035802.381591275 593.373474121094 610784.3296125665 5035829.392075743 598.217651367188 - - - - - - - - -610784.3296125665 5035829.392075743 593.373474121094 610784.3296125665 5035829.392075743 588.529296875 610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 593.373474121094 - - - - - - - - -610784.3296125665 5035829.392075743 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 588.529296875 - - - - - - - - -610784.3296125665 5035829.392075743 583.6851196289069 610784.3296125665 5035829.392075743 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610784.3296125665 5035829.392075743 583.6851196289069 - - - - - - - - -610776.8375347028 5035802.381591275 598.217651367188 610784.3296125665 5035829.392075743 598.217651367188 610776.8375347028 5035802.381591275 593.373474121094 610776.8375347028 5035802.381591275 598.217651367188 - - - - - - - - -610776.8375347028 5035802.381591275 593.373474121094 610784.3296125665 5035829.392075743 593.373474121094 610776.8375347028 5035802.381591275 588.529296875 610776.8375347028 5035802.381591275 593.373474121094 - - - - - - - - -610776.8375347028 5035802.381591275 588.529296875 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 583.6851196289069 610776.8375347028 5035802.381591275 588.529296875 - - - - - - - - -610776.8375347028 5035802.381591275 583.6851196289069 610784.3296125665 5035829.392075743 583.6851196289069 610776.8375347028 5035802.381591275 578.840942382813 610776.8375347028 5035802.381591275 583.6851196289069 - - - - - - - - -610735.6689161435 5035804.160897724 598.217651367188 610735.6689161435 5035804.160897724 593.373474121094 610734.538063405 5035778.651829647 593.373474121094 610735.6689161435 5035804.160897724 598.217651367188 - - - - - - - - -610735.6689161435 5035804.160897724 593.373474121094 610735.6689161435 5035804.160897724 588.529296875 610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 593.373474121094 - - - - - - - - -610735.6689161435 5035804.160897724 588.529296875 610735.6689161435 5035804.160897724 583.6851196289069 610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 588.529296875 - - - - - - - - -610734.538063405 5035778.651829647 598.217651367188 610735.6689161435 5035804.160897724 598.217651367188 610734.538063405 5035778.651829647 593.373474121094 610734.538063405 5035778.651829647 598.217651367188 - - - - - - - - -610734.538063405 5035778.651829647 593.373474121094 610735.6689161435 5035804.160897724 593.373474121094 610734.538063405 5035778.651829647 588.529296875 610734.538063405 5035778.651829647 593.373474121094 - - - - - - - - -610776.8375347028 5035802.381591275 598.217651367188 610776.8375347028 5035802.381591275 593.373474121094 610735.6689161435 5035804.160897724 593.373474121094 610776.8375347028 5035802.381591275 598.217651367188 - - - - - - - - -610776.8375347028 5035802.381591275 593.373474121094 610776.8375347028 5035802.381591275 588.529296875 610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 593.373474121094 - - - - - - - - -610776.8375347028 5035802.381591275 588.529296875 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 588.529296875 - - - - - - - - -610776.8375347028 5035802.381591275 583.6851196289069 610776.8375347028 5035802.381591275 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610776.8375347028 5035802.381591275 583.6851196289069 - - - - - - - - -610735.6689161435 5035804.160897724 598.217651367188 610776.8375347028 5035802.381591275 598.217651367188 610735.6689161435 5035804.160897724 593.373474121094 610735.6689161435 5035804.160897724 598.217651367188 - - - - - - - - -610735.6689161435 5035804.160897724 593.373474121094 610776.8375347028 5035802.381591275 593.373474121094 610735.6689161435 5035804.160897724 588.529296875 610735.6689161435 5035804.160897724 593.373474121094 - - - - - - - - -610735.6689161435 5035804.160897724 588.529296875 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 583.6851196289069 610735.6689161435 5035804.160897724 588.529296875 - - - - - - - - -610735.6689161435 5035804.160897724 583.6851196289069 610776.8375347028 5035802.381591275 583.6851196289069 610735.6689161435 5035804.160897724 578.840942382813 610735.6689161435 5035804.160897724 583.6851196289069 - - - - - - - - -610800.2212214476 5035770.347264212 588.529296875 610800.2212214476 5035770.347264212 583.6851196289069 610818.6731258357 5035836.83501248 583.6851196289069 610800.2212214476 5035770.347264212 588.529296875 - - - - - - - - -610800.2212214476 5035770.347264212 583.6851196289069 610800.2212214476 5035770.347264212 578.840942382813 610818.6731258357 5035836.83501248 578.840942382813 610800.2212214476 5035770.347264212 583.6851196289069 - - - - - - - - -610800.2212214476 5035770.347264212 578.840942382813 610800.2212214476 5035770.347264212 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 578.840942382813 - - - - - - - - -610818.6731258357 5035836.83501248 588.529296875 610800.2212214476 5035770.347264212 588.529296875 610818.6731258357 5035836.83501248 583.6851196289069 610818.6731258357 5035836.83501248 588.529296875 - - - - - - - - -610818.6731258357 5035836.83501248 583.6851196289069 610800.2212214476 5035770.347264212 583.6851196289069 610818.6731258357 5035836.83501248 578.840942382813 610818.6731258357 5035836.83501248 583.6851196289069 - - - - - - - - -610818.6731258357 5035836.83501248 578.840942382813 610800.2212214476 5035770.347264212 578.840942382813 610818.6731258357 5035836.83501248 573.996765136719 610818.6731258357 5035836.83501248 578.840942382813 - - - - - - - - -610757.530966894 5035860.906479697 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610757.530966894 5035860.906479697 573.996765136719 610757.530966894 5035860.906479697 578.840942382813 - - - - - - - - -610761.9515425221 5035864.167794568 578.840942382813 610782.6784284493 5035879.454642432 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610761.9515425221 5035864.167794568 578.840942382813 - - - - - - - - -610784.3296125665 5035829.392075743 578.840942382813 610761.9515425221 5035864.167794568 583.6851196289069 610761.9515425221 5035864.167794568 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 - - - - - - - - -610784.3296125665 5035829.392075743 578.840942382813 610784.3296125665 5035829.392075743 583.6851196289069 610761.9515425221 5035864.167794568 583.6851196289069 610784.3296125665 5035829.392075743 578.840942382813 - - - - - - - - -610734.2943063623 5035773.177748277 588.529296875 610734.2943063623 5035773.177748277 583.6851196289069 610800.2212214476 5035770.347264212 583.6851196289069 610734.2943063623 5035773.177748277 588.529296875 - - - - - - - - -610734.2943063623 5035773.177748277 583.6851196289069 610734.2943063623 5035773.177748277 578.840942382813 610800.2212214476 5035770.347264212 578.840942382813 610734.2943063623 5035773.177748277 583.6851196289069 - - - - - - - - -610734.2943063623 5035773.177748277 578.840942382813 610734.2943063623 5035773.177748277 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 578.840942382813 - - - - - - - - -610800.2212214476 5035770.347264212 588.529296875 610734.2943063623 5035773.177748277 588.529296875 610800.2212214476 5035770.347264212 583.6851196289069 610800.2212214476 5035770.347264212 588.529296875 - - - - - - - - -610800.2212214476 5035770.347264212 583.6851196289069 610734.2943063623 5035773.177748277 583.6851196289069 610800.2212214476 5035770.347264212 578.840942382813 610800.2212214476 5035770.347264212 583.6851196289069 - - - - - - - - -610800.2212214476 5035770.347264212 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610800.2212214476 5035770.347264212 573.996765136719 610800.2212214476 5035770.347264212 578.840942382813 - - - - - - - - -610784.3296125665 5035829.392075743 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 - - - - - - - - -610772.7202085907 5035808.0631751185 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610776.8375347028 5035802.381591275 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 - - - - - - - - -610778.2721552142 5035828.081908587 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 - - - - - - - - -610761.9515425221 5035864.167794568 578.840942382813 610757.530966894 5035860.906479697 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 - - - - - - - - -610735.9011191447 5035809.667567344 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 - - - - - - - - -610735.9011191447 5035809.667567344 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610735.6689161435 5035804.160897724 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 - - - - - - - - -610784.3296125665 5035829.392075743 578.840942382813 610761.9515425221 5035864.167794568 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610784.3296125665 5035829.392075743 578.840942382813 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 578.840942382813 610757.530966894 5035860.906479697 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610778.2721552142 5035828.081908587 578.840942382813 610757.530966894 5035860.906479697 578.840942382813 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610772.7202085907 5035808.0631751185 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 - - - - - - - - -610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 - - - - - - - - -610782.6784284493 5035879.454642432 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 - - - - - - - - -610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 - - - - - - - - -610734.538063405 5035778.651829647 588.529296875 610735.6689161435 5035804.160897724 583.6851196289069 610734.2943063623 5035773.177748277 583.6851196289069 610734.538063405 5035778.651829647 588.529296875 - - - - - - - - -610734.2943063623 5035773.177748277 588.529296875 610734.538063405 5035778.651829647 588.529296875 610734.2943063623 5035773.177748277 583.6851196289069 610734.2943063623 5035773.177748277 588.529296875 - - - - - - - - -610772.7202085907 5035808.0631751185 578.840942382813 610772.7202085907 5035808.0631751185 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 578.840942382813 - - - - - - - - -610735.9011191447 5035809.667567344 578.840942382813 610772.7202085907 5035808.0631751185 578.840942382813 610735.9011191447 5035809.667567344 573.996765136719 610735.9011191447 5035809.667567344 578.840942382813 - - - - - - - - -610778.2721552142 5035828.081908587 578.840942382813 610778.2721552142 5035828.081908587 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 578.840942382813 - - - - - - - - -610772.7202085907 5035808.0631751185 578.840942382813 610778.2721552142 5035828.081908587 578.840942382813 610772.7202085907 5035808.0631751185 573.996765136719 610772.7202085907 5035808.0631751185 578.840942382813 - - - - - - - - -610735.6689161435 5035804.160897724 583.6851196289069 610735.6689161435 5035804.160897724 578.840942382813 610734.2943063623 5035773.177748277 578.840942382813 610735.6689161435 5035804.160897724 583.6851196289069 - - - - - - - - -610734.2943063623 5035773.177748277 583.6851196289069 610735.6689161435 5035804.160897724 583.6851196289069 610734.2943063623 5035773.177748277 578.840942382813 610734.2943063623 5035773.177748277 583.6851196289069 - - - - - - - - -610735.9011191447 5035809.667567344 578.840942382813 610735.9011191447 5035809.667567344 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 578.840942382813 - - - - - - - - -610734.2943063623 5035773.177748277 578.840942382813 610735.9011191447 5035809.667567344 578.840942382813 610734.2943063623 5035773.177748277 573.996765136719 610734.2943063623 5035773.177748277 578.840942382813 - - - - - - - - - - - - -residential -1996 -7.002685546875 -1 -5 - - - - - - - - -610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 566.994079589844 610757.530966894 5035860.906479697 566.994079589844 610757.530966894 5035860.906479697 573.996765136719 - - - - - - - - -610782.6784284493 5035879.454642432 573.996765136719 610782.6784284493 5035879.454642432 566.994079589844 610757.530966894 5035860.906479697 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 - - - - - - - - -610818.6731258357 5035836.83501248 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610772.7202085907 5035808.0631751185 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 - - - - - - - - -610735.9011191447 5035809.667567344 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 - - - - - - - - -610782.6784284493 5035879.454642432 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 - - - - - - - - -610782.6784284493 5035879.454642432 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610782.6784284493 5035879.454642432 573.996765136719 - - - - - - - - -610778.2721552142 5035828.081908587 566.994079589844 610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610757.530966894 5035860.906479697 573.996765136719 610757.530966894 5035860.906479697 566.994079589844 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610818.6731258357 5035836.83501248 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 - - - - - - - - -610778.2721552142 5035828.081908587 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 - - - - - - - - -610772.7202085907 5035808.0631751185 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 - - - - - - - - -610735.9011191447 5035809.667567344 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610735.9011191447 5035809.667567344 566.994079589844 - - - - - - - - -610782.6784284493 5035879.454642432 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 610757.530966894 5035860.906479697 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 - - - - - - - - -610782.6784284493 5035879.454642432 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610778.2721552142 5035828.081908587 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 - - - - - - - - -610818.6731258357 5035836.83501248 566.994079589844 610782.6784284493 5035879.454642432 566.994079589844 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 566.994079589844 - - - - - - - - -610818.6731258357 5035836.83501248 566.994079589844 610782.6784284493 5035879.454642432 573.996765136719 610818.6731258357 5035836.83501248 573.996765136719 610818.6731258357 5035836.83501248 566.994079589844 - - - - - - - - -610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 566.994079589844 610772.7202085907 5035808.0631751185 566.994079589844 610772.7202085907 5035808.0631751185 573.996765136719 - - - - - - - - -610778.2721552142 5035828.081908587 573.996765136719 610778.2721552142 5035828.081908587 566.994079589844 610772.7202085907 5035808.0631751185 573.996765136719 610778.2721552142 5035828.081908587 573.996765136719 - - - - - - - - -610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 566.994079589844 610735.9011191447 5035809.667567344 566.994079589844 610735.9011191447 5035809.667567344 573.996765136719 - - - - - - - - -610772.7202085907 5035808.0631751185 573.996765136719 610772.7202085907 5035808.0631751185 566.994079589844 610735.9011191447 5035809.667567344 573.996765136719 610772.7202085907 5035808.0631751185 573.996765136719 - - - - - - - - -610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 566.994079589844 610818.6731258357 5035836.83501248 566.994079589844 610818.6731258357 5035836.83501248 573.996765136719 - - - - - - - - -610800.2212214476 5035770.347264212 573.996765136719 610800.2212214476 5035770.347264212 566.994079589844 610818.6731258357 5035836.83501248 573.996765136719 610800.2212214476 5035770.347264212 573.996765136719 - - - - - - - - -610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 566.994079589844 610734.2943063623 5035773.177748277 566.994079589844 610734.2943063623 5035773.177748277 573.996765136719 - - - - - - - - -610735.9011191447 5035809.667567344 573.996765136719 610735.9011191447 5035809.667567344 566.994079589844 610734.2943063623 5035773.177748277 573.996765136719 610735.9011191447 5035809.667567344 573.996765136719 - - - - - - - - -610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 566.994079589844 610800.2212214476 5035770.347264212 566.994079589844 610800.2212214476 5035770.347264212 573.996765136719 - - - - - - - - -610734.2943063623 5035773.177748277 573.996765136719 610734.2943063623 5035773.177748277 566.994079589844 610800.2212214476 5035770.347264212 573.996765136719 610734.2943063623 5035773.177748277 573.996765136719 - - - - - - - - - - - - - diff --git a/tests/tests_data/FZK_Haus_LoD_2.gml b/tests/tests_data/FZK_Haus_LoD_2.gml deleted file mode 100644 index eaea23f..0000000 --- a/tests/tests_data/FZK_Haus_LoD_2.gml +++ /dev/null @@ -1,240 +0,0 @@ - - - AC14-FZK-Haus - - - 457842 5439083 111.8 - 457854 5439093 118.317669 - - - - - FZK-Haus (Forschungszentrum Karlsruhe, now KIT), created by Karl-Heinz - Haefele - AC14-FZK-Haus - 2017-01-23 - entirelyAboveTerrain - - 120.00 - - - New Building - - - NO - - 1000 - 1000 - 1000 - 2020 - 1030 - 6.52 - 2 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Outer Wall 1 (West) - - - - - - - 457842 5439088 118.317691453624 - 457842 5439093 115.430940107676 - 457842 5439093 111.8 - 457842 5439083 111.8 - 457842 5439083 115.430940107676 - 457842 5439088 118.317691453624 - - - - - - - - - - - Outer Wall 2 (South) - - - - - - - 457854 5439083 115.430940107676 - 457842 5439083 115.430940107676 - 457842 5439083 111.8 - 457854 5439083 111.8 - 457854 5439083 115.430940107676 - - - - - - - - - - - Outer Wall 3 (East) - - - - - - - 457854 5439088 118.317691453624 - 457854 5439083 115.430940107676 - 457854 5439083 111.8 - 457854 5439093 111.8 - 457854 5439093 115.430940107676 - 457854 5439088 118.317691453624 - - - - - - - - - - - Roof 1 (North) - - - - - - - 457842 5439088 118.317691453624 - 457854 5439088 118.317691453624 - 457854 5439093 115.430940107676 - 457842 5439093 115.430940107676 - 457842 5439088 118.317691453624 - - - - - - - - - - - Outer Wall 4 (North) - - - - - - - 457842 5439093 115.430940107676 - 457854 5439093 115.430940107676 - 457854 5439093 111.8 - 457842 5439093 111.8 - 457842 5439093 115.430940107676 - - - - - - - - - - - Roof 2 (South) - - - - - - - 457854 5439083 115.430940107676 - 457854 5439088 118.317691453624 - 457842 5439088 118.317691453624 - 457842 5439083 115.430940107676 - 457854 5439083 115.430940107676 - - - - - - - - - - - Bodenplatte - Base Surface - - - - - - - 457854 5439083 111.8 - 457842 5439083 111.8 - 457842 5439093 111.8 - 457854 5439093 111.8 - 457854 5439083 111.8 - - - - - - - - - - - - - - Eggenstein-Leopoldshafen - - 4711 - Spöcker Straße - - - 76344 - - - - - - - - - \ No newline at end of file diff --git a/tests/tests_data/eilat.geojson b/tests/tests_data/eilat.geojson deleted file mode 100644 index 2e4efd3..0000000 --- a/tests/tests_data/eilat.geojson +++ /dev/null @@ -1,177 +0,0 @@ -{ - "type": "FeatureCollection", - "features": [ - { - "type": "Feature", - "id": 1, - "properties": { - "heightmax": 9, - "ANNEE_CONS": 1978, - "CODE_UTILI": "residential" - }, - "geometry": { - "coordinates": [ - [ - [ - 34.95217088371581, - 29.56694805860026 - ], - [ - 34.95262396587913, - 29.566952667742285 - ], - [ - 34.95261999147337, - 29.567024109421467 - ], - [ - 34.952169558914704, - 29.567019500282157 - ], - [ - 34.95217088371581, - 29.56694805860026 - ] - ] - ], - "type": "Polygon" - } - }, - { - "type": "Feature", - "id": 3, - "properties": { - "heightmax": 16, - "ANNEE_CONS": 2012, - "CODE_UTILI": "dormitory" - }, - "geometry": { - "coordinates": [ - [ - [ - 34.95176644317411, - 29.56827388702702 - ], - [ - 34.95176550020565, - 29.568180388329026 - ], - [ - 34.95179850408434, - 29.568180388329026 - ], - [ - 34.95179850408434, - 29.5681303582886 - ], - [ - 34.95176644317411, - 29.5681303582886 - ], - [ - 34.95176644317411, - 29.568038499789708 - ], - [ - 34.951874884488376, - 29.568038499789708 - ], - [ - 34.951874884488376, - 29.568058183760357 - ], - [ - 34.95192391882168, - 29.568058183760357 - ], - [ - 34.951922032885705, - 29.56804178045124 - ], - [ - 34.95205216246262, - 29.568042600617147 - ], - [ - 34.952051219494166, - 29.568129538124154 - ], - [ - 34.95201821561636, - 29.5681303582886 - ], - [ - 34.95201821561636, - 29.568176287507143 - ], - [ - 34.95204839059062, - 29.568176287507143 - ], - [ - 34.95205027652662, - 29.56827552735433 - ], - [ - 34.95195503676348, - 29.568274707190284 - ], - [ - 34.95195597973188, - 29.56825830391628 - ], - [ - 34.951849424353696, - 29.56825830391628 - ], - [ - 34.951849424353696, - 29.568274707190284 - ], - [ - 34.95176644317411, - 29.56827388702702 - ] - ] - ], - "type": "Polygon" - } - }, - { - "type": "Feature", - "id": 2, - "properties": { - "heightmax": 24, - "ANNEE_CONS": 2002, - "CODE_UTILI": "Hotel employ" - }, - "geometry": { - "coordinates": [ - [ - [ - 34.94972280674813, - 29.566224752287738 - ], - [ - 34.94974316291999, - 29.56597561012454 - ], - [ - 34.94989147217407, - 29.565980668855033 - ], - [ - 34.94987402402688, - 29.566233605043536 - ], - [ - 34.94972280674813, - 29.566224752287738 - ] - ] - ], - "type": "Polygon" - } - } - ] -} diff --git a/tests/tests_data/kelowna.obj b/tests/tests_data/kelowna.obj deleted file mode 100644 index ef0ebad..0000000 --- a/tests/tests_data/kelowna.obj +++ /dev/null @@ -1,81 +0,0 @@ -# https://github.com/mikedh/trimesh -v 329238.00000000 5528272.00000000 0.00000000 -v 329238.00000000 5528272.00000000 3.79999995 -v 329254.12500000 5528263.00000000 0.00000000 -v 329254.12500000 5528263.00000000 3.79999995 -v 329245.12500000 5528267.50000000 4.93084002 -v 329246.15625000 5528272.50000000 0.00000000 -v 329246.15625000 5528272.50000000 3.79999995 -v 329229.15625000 5528271.00000000 0.00000000 -v 329229.15625000 5528271.00000000 3.79999995 -v 329242.18750000 5528267.00000000 5.29822016 -v 329238.31250000 5528266.50000000 4.68875980 -v 329229.31250000 5528269.50000000 0.00000000 -v 329229.31250000 5528269.50000000 3.79999995 -v 329244.34375000 5528267.00000000 4.99910021 -v 329242.34375000 5528267.00000000 5.30000019 -v 329233.34375000 5528276.00000000 0.00000000 -v 329233.34375000 5528276.00000000 3.79999995 -v 329247.34375000 5528262.50000000 0.00000000 -v 329247.34375000 5528262.50000000 3.79999995 -v 329242.40625000 5528257.50000000 0.00000000 -v 329242.40625000 5528257.50000000 3.79999995 -v 329231.50000000 5528270.50000000 4.31147003 -v 329253.53125000 5528273.00000000 0.00000000 -v 329253.53125000 5528273.00000000 3.79999995 -v 329241.71875000 5528276.50000000 0.00000000 -v 329241.71875000 5528276.50000000 3.79999995 -v 329233.81250000 5528270.50000000 4.68364000 -v 329248.81250000 5528267.50000000 4.92572021 -f 22 9 13 -f 28 4 24 -f 23 6 7 -f 7 24 23 -f 6 25 26 -f 26 7 6 -f 25 1 2 -f 2 26 25 -f 1 16 17 -f 17 2 1 -f 16 8 9 -f 9 17 16 -f 8 12 13 -f 13 9 8 -f 12 20 21 -f 21 13 12 -f 20 18 19 -f 19 21 20 -f 18 3 4 -f 4 19 18 -f 3 23 24 -f 24 4 3 -f 6 23 3 -f 6 3 18 -f 6 18 20 -f 6 20 12 -f 6 12 8 -f 8 16 1 -f 6 8 1 -f 1 25 6 -f 24 7 14 -f 24 14 5 -f 5 28 24 -f 7 26 15 -f 15 14 7 -f 26 2 11 -f 26 11 10 -f 10 15 26 -f 2 17 27 -f 27 11 2 -f 17 9 22 -f 22 27 17 -f 21 10 11 -f 13 21 11 -f 13 11 27 -f 27 22 13 -f 21 19 5 -f 21 5 14 -f 21 14 15 -f 15 10 21 -f 19 4 28 -f 28 5 19 \ No newline at end of file diff --git a/tests/tests_data/levis.geojson b/tests/tests_data/levis.geojson deleted file mode 100644 index 04ed34e..0000000 --- a/tests/tests_data/levis.geojson +++ /dev/null @@ -1,73 +0,0 @@ -{ - "type": "FeatureCollection", - "features": [ - { - "type": "Feature", - "id": 1, - "properties": { - "OBJECTID_12": 1, - "gml_id": 1, - "citygml_me": 20, - "Z_Min": 46.1162, - "Z_Max": 66.1162, - "ANNEE_CONS": 2023, - "CODE_UTILI": 1000 - }, - "geometry": { - "coordinates": [ - [ - [ - -71.16553932594044, - 46.7895775031096 - ], - [ - -71.16535210635354, - 46.78972033813616 - ], - [ - -71.1654671126711, - 46.78979908036044 - ], - [ - -71.16525314742928, - 46.78995473325631 - ], - [ - -71.16480114585448, - 46.7896544143249 - ], - [ - -71.16486533542763, - 46.789394380725696 - ], - [ - -71.16467544127534, - 46.78927901330414 - ], - [ - -71.16454171299826, - 46.78930465053031 - ], - [ - -71.16445612690187, - 46.789766118513455 - ], - [ - -71.16519698155322, - 46.79023673853192 - ], - [ - -71.16583887727946, - 46.78976794972763 - ], - [ - -71.16553932594044, - 46.7895775031096 - ] - ] - ], - "type": "Polygon" - } - } - ] -} \ No newline at end of file diff --git a/tests/tests_data/one_building_in_kelowna.gml b/tests/tests_data/one_building_in_kelowna.gml deleted file mode 100644 index 6036f4e..0000000 --- a/tests/tests_data/one_building_in_kelowna.gml +++ /dev/null @@ -1,409 +0,0 @@ - - - - - 326011.03601000085 5526048.416990001 -1.6000000000058208 - 329466.6600299999 5529018.72205 9.80000000000291 - - - - - - 291 - - - m2 - - residential - 1996 - 5.3 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 329231.5010599997 5528270.404139999 4.311470000000554 329229.15295 5528271.14002 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 - - - - - - - - - - - - - - - - - 329248.8121399991 5528267.658840001 4.925719999999274 329254.11205999926 5528262.99903 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 - - - - - - - - - - - - - - - - - 329246.16602000035 5528272.533020001 0 329246.16602000035 5528272.533020001 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329253.52796000056 5528272.956 0 329246.16602000035 5528272.533020001 0 - - - - - - - - - - - - - - - - - 329241.7199700009 5528276.307010001 0 329241.7199700009 5528276.307010001 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 329246.16602000035 5528272.533020001 0 329241.7199700009 5528276.307010001 0 - - - - - - - - - - - - - - - - - 329237.9890100006 5528272.159 0 329237.9890100006 5528272.159 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 329241.7199700009 5528276.307010001 0 329237.9890100006 5528272.159 0 - - - - - - - - - - - - - - - - - 329233.3360600006 5528276.213989999 0 329233.3360600006 5528276.213989999 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 329237.9890100006 5528272.159 0 329233.3360600006 5528276.213989999 0 - - - - - - - - - - - - - - - - - 329229.15295 5528271.14002 0 329229.15295 5528271.14002 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 329233.3360600006 5528276.213989999 0 329229.15295 5528271.14002 0 - - - - - - - - - - - - - - - - - 329229.30395000055 5528269.304020001 0 329229.30395000055 5528269.304020001 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 329229.15295 5528271.14002 0 329229.30395000055 5528269.304020001 0 - - - - - - - - - - - - - - - - - 329242.40003000014 5528257.71503 0 329242.40003000014 5528257.71503 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329229.30395000055 5528269.304020001 0 329242.40003000014 5528257.71503 0 - - - - - - - - - - - - - - - - - 329247.3289800007 5528262.52503 0 329247.3289800007 5528262.52503 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 329242.40003000014 5528257.71503 0 329247.3289800007 5528262.52503 0 - - - - - - - - - - - - - - - - - 329254.11205999926 5528262.99903 0 329254.11205999926 5528262.99903 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 329247.3289800007 5528262.52503 0 329254.11205999926 5528262.99903 0 - - - - - - - - - - - - - - - - - 329253.52796000056 5528272.956 0 329253.52796000056 5528272.956 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 329254.11205999926 5528262.99903 0 329253.52796000056 5528272.956 0 - - - - - - - - - - - - - - - - - 329253.52796000056 5528272.956 0 329254.11205999926 5528262.99903 0 329247.3289800007 5528262.52503 0 329242.40003000014 5528257.71503 0 329229.30395000055 5528269.304020001 0 329229.15295 5528271.14002 0 329233.3360600006 5528276.213989999 0 329237.9890100006 5528272.159 0 329241.7199700009 5528276.307010001 0 329246.16602000035 5528272.533020001 0 329253.52796000056 5528272.956 0 - - - - - - - - - - - - - - - - - 329246.16602000035 5528272.533020001 3.8000000000029104 329244.33748999983 5528267.074109999 4.999100000000908 329245.1323099993 5528267.42457 4.930840000000899 329248.8121399991 5528267.658840001 4.925719999999274 329253.52796000056 5528272.956 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 - - - - - - - - - - - - - - - - - 329241.7199700009 5528276.307010001 3.8000000000029104 329242.3462899998 5528267.00502 5.30000000000291 329244.33748999983 5528267.074109999 4.999100000000908 329246.16602000035 5528272.533020001 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 - - - - - - - - - - - - - - - - - 329237.9890100006 5528272.159 3.8000000000029104 329238.32637000084 5528266.609999999 4.6887600000045495 329242.1777599994 5528266.829500001 5.298219999996945 329242.3462899998 5528267.00502 5.30000000000291 329241.7199700009 5528276.307010001 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 - - - - - - - - - - - - - - - - - 329233.3360600006 5528276.213989999 3.8000000000029104 329233.80010999925 5528270.5848900005 4.683640000002924 329238.32637000084 5528266.609999999 4.6887600000045495 329237.9890100006 5528272.159 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 - - - - - - - - - - - - - - - - - 329229.15295 5528271.14002 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 329233.80010999925 5528270.5848900005 4.683640000002924 329233.3360600006 5528276.213989999 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 - - - - - - - - - - - - - - - - - 329242.40003000014 5528257.71503 3.8000000000029104 329242.1777599994 5528266.829500001 5.298219999996945 329238.32637000084 5528266.609999999 4.6887600000045495 329233.80010999925 5528270.5848900005 4.683640000002924 329231.5010599997 5528270.404139999 4.311470000000554 329229.30395000055 5528269.304020001 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 - - - - - - - - - - - - - - - - - 329247.3289800007 5528262.52503 3.8000000000029104 329245.1323099993 5528267.42457 4.930840000000899 329244.33748999983 5528267.074109999 4.999100000000908 329242.3462899998 5528267.00502 5.30000000000291 329242.1777599994 5528266.829500001 5.298219999996945 329242.40003000014 5528257.71503 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 - - - - - - - - - - - - - - - - - 329254.11205999926 5528262.99903 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 329245.1323099993 5528267.42457 4.930840000000899 329247.3289800007 5528262.52503 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 - - - - - - - - - - - diff --git a/tests/tests_data/one_building_in_kelowna_alkis.gml b/tests/tests_data/one_building_in_kelowna_alkis.gml deleted file mode 100644 index 05926e5..0000000 --- a/tests/tests_data/one_building_in_kelowna_alkis.gml +++ /dev/null @@ -1,409 +0,0 @@ - - - - -326011.03601000085 5526048.416990001 -1.6000000000058208 -329466.6600299999 5529018.72205 9.80000000000291 - - - - - -291 - - -m2 - -1996 -residential -5.3 -1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -329231.5010599997 5528270.404139999 4.311470000000554 329229.15295 5528271.14002 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 - - - - - - - - - - - - - - - - -329248.8121399991 5528267.658840001 4.925719999999274 329254.11205999926 5528262.99903 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 - - - - - - - - - - - - - - - - -329246.16602000035 5528272.533020001 0 329246.16602000035 5528272.533020001 3.8000000000029104 329253.52796000056 5528272.956 3.8000000000029104 329253.52796000056 5528272.956 0 329246.16602000035 5528272.533020001 0 - - - - - - - - - - - - - - - - -329241.7199700009 5528276.307010001 0 329241.7199700009 5528276.307010001 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 329246.16602000035 5528272.533020001 0 329241.7199700009 5528276.307010001 0 - - - - - - - - - - - - - - - - -329237.9890100006 5528272.159 0 329237.9890100006 5528272.159 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 329241.7199700009 5528276.307010001 0 329237.9890100006 5528272.159 0 - - - - - - - - - - - - - - - - -329233.3360600006 5528276.213989999 0 329233.3360600006 5528276.213989999 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 329237.9890100006 5528272.159 0 329233.3360600006 5528276.213989999 0 - - - - - - - - - - - - - - - - -329229.15295 5528271.14002 0 329229.15295 5528271.14002 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 329233.3360600006 5528276.213989999 0 329229.15295 5528271.14002 0 - - - - - - - - - - - - - - - - -329229.30395000055 5528269.304020001 0 329229.30395000055 5528269.304020001 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 329229.15295 5528271.14002 0 329229.30395000055 5528269.304020001 0 - - - - - - - - - - - - - - - - -329242.40003000014 5528257.71503 0 329242.40003000014 5528257.71503 3.8000000000029104 329229.30395000055 5528269.304020001 3.8000000000029104 329229.30395000055 5528269.304020001 0 329242.40003000014 5528257.71503 0 - - - - - - - - - - - - - - - - -329247.3289800007 5528262.52503 0 329247.3289800007 5528262.52503 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 329242.40003000014 5528257.71503 0 329247.3289800007 5528262.52503 0 - - - - - - - - - - - - - - - - -329254.11205999926 5528262.99903 0 329254.11205999926 5528262.99903 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 329247.3289800007 5528262.52503 0 329254.11205999926 5528262.99903 0 - - - - - - - - - - - - - - - - -329253.52796000056 5528272.956 0 329253.52796000056 5528272.956 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 329254.11205999926 5528262.99903 0 329253.52796000056 5528272.956 0 - - - - - - - - - - - - - - - - -329253.52796000056 5528272.956 0 329254.11205999926 5528262.99903 0 329247.3289800007 5528262.52503 0 329242.40003000014 5528257.71503 0 329229.30395000055 5528269.304020001 0 329229.15295 5528271.14002 0 329233.3360600006 5528276.213989999 0 329237.9890100006 5528272.159 0 329241.7199700009 5528276.307010001 0 329246.16602000035 5528272.533020001 0 329253.52796000056 5528272.956 0 - - - - - - - - - - - - - - - - -329246.16602000035 5528272.533020001 3.8000000000029104 329244.33748999983 5528267.074109999 4.999100000000908 329245.1323099993 5528267.42457 4.930840000000899 329248.8121399991 5528267.658840001 4.925719999999274 329253.52796000056 5528272.956 3.8000000000029104 329246.16602000035 5528272.533020001 3.8000000000029104 - - - - - - - - - - - - - - - - -329241.7199700009 5528276.307010001 3.8000000000029104 329242.3462899998 5528267.00502 5.30000000000291 329244.33748999983 5528267.074109999 4.999100000000908 329246.16602000035 5528272.533020001 3.8000000000029104 329241.7199700009 5528276.307010001 3.8000000000029104 - - - - - - - - - - - - - - - - -329237.9890100006 5528272.159 3.8000000000029104 329238.32637000084 5528266.609999999 4.6887600000045495 329242.1777599994 5528266.829500001 5.298219999996945 329242.3462899998 5528267.00502 5.30000000000291 329241.7199700009 5528276.307010001 3.8000000000029104 329237.9890100006 5528272.159 3.8000000000029104 - - - - - - - - - - - - - - - - -329233.3360600006 5528276.213989999 3.8000000000029104 329233.80010999925 5528270.5848900005 4.683640000002924 329238.32637000084 5528266.609999999 4.6887600000045495 329237.9890100006 5528272.159 3.8000000000029104 329233.3360600006 5528276.213989999 3.8000000000029104 - - - - - - - - - - - - - - - - -329229.15295 5528271.14002 3.8000000000029104 329231.5010599997 5528270.404139999 4.311470000000554 329233.80010999925 5528270.5848900005 4.683640000002924 329233.3360600006 5528276.213989999 3.8000000000029104 329229.15295 5528271.14002 3.8000000000029104 - - - - - - - - - - - - - - - - -329242.40003000014 5528257.71503 3.8000000000029104 329242.1777599994 5528266.829500001 5.298219999996945 329238.32637000084 5528266.609999999 4.6887600000045495 329233.80010999925 5528270.5848900005 4.683640000002924 329231.5010599997 5528270.404139999 4.311470000000554 329229.30395000055 5528269.304020001 3.8000000000029104 329242.40003000014 5528257.71503 3.8000000000029104 - - - - - - - - - - - - - - - - -329247.3289800007 5528262.52503 3.8000000000029104 329245.1323099993 5528267.42457 4.930840000000899 329244.33748999983 5528267.074109999 4.999100000000908 329242.3462899998 5528267.00502 5.30000000000291 329242.1777599994 5528266.829500001 5.298219999996945 329242.40003000014 5528257.71503 3.8000000000029104 329247.3289800007 5528262.52503 3.8000000000029104 - - - - - - - - - - - - - - - - -329254.11205999926 5528262.99903 3.8000000000029104 329248.8121399991 5528267.658840001 4.925719999999274 329245.1323099993 5528267.42457 4.930840000000899 329247.3289800007 5528262.52503 3.8000000000029104 329254.11205999926 5528262.99903 3.8000000000029104 - - - - - - - - - - - diff --git a/tests/tests_data/one_building_in_kelowna_sra_SW.out b/tests/tests_data/one_building_in_kelowna_sra_SW.out deleted file mode 100644 index bc60e9c..0000000 --- a/tests/tests_data/one_building_in_kelowna_sra_SW.out +++ /dev/null @@ -1,8761 +0,0 @@ -#0:BLD109438:2 0:BLD109438:3 0:BLD109438:4 0:BLD109438:5 0:BLD109438:6 0:BLD109438:7 0:BLD109438:8 0:BLD109438:9 0:BLD109438:10 0:BLD109438:11 0:BLD109438:0 0:BLD109438:1 0:BLD109438:13 0:BLD109438:14 0:BLD109438:15 0:BLD109438:16 0:BLD109438:17 0:BLD109438:18 0:BLD109438:19 0:BLD109438:20 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -45 49 39 42 45 47 108 463 380 302 86 196 68 127 65 121 65 152 231 213 -105 113 93 101 107 117 376 820 783 428 311 443 231 316 226 318 228 431 530 522 -134 140 120 127 140 170 641 897 1000 331 488 555 336 411 364 412 369 627 685 708 -151 154 139 140 164 286 858 818 1075 204 606 576 393 437 458 439 464 741 732 790 -95 95 88 86 108 252 471 315 488 112 331 272 218 222 261 222 264 382 346 386 -82 80 79 73 101 304 467 209 410 89 296 204 179 168 230 168 233 332 273 320 -55 53 55 48 88 298 391 95 288 57 207 104 104 95 151 95 157 227 159 205 -18 17 19 15 58 145 164 23 84 18 70 33 34 32 43 32 50 74 38 60 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 39 30 34 35 37 59 155 131 110 63 93 58 74 56 73 56 81 103 98 -89 96 78 85 90 101 293 620 592 332 251 348 193 255 189 256 191 339 413 407 -110 115 98 103 114 139 462 641 711 252 364 411 260 311 279 312 282 461 501 517 -103 104 94 95 111 174 435 417 536 137 339 325 240 260 270 261 273 402 398 425 -112 111 105 102 128 314 599 398 623 132 415 339 268 273 323 273 328 481 435 487 -76 75 72 69 89 123 150 107 138 81 175 158 154 152 163 152 164 182 171 180 -45 43 43 40 54 71 80 54 69 46 98 88 88 86 92 86 93 100 93 98 -14 13 13 12 17 22 23 15 19 14 29 26 26 26 28 26 28 29 27 28 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 15 13 14 15 15 16 16 16 16 28 28 28 28 28 28 28 28 28 28 -23 23 20 21 23 23 24 24 24 24 43 43 43 43 43 43 43 43 43 43 -55 56 49 52 56 61 68 71 73 64 111 113 108 110 109 110 109 114 115 116 -72 73 67 67 77 89 106 104 112 85 157 156 148 150 151 150 151 163 163 165 -75 75 69 68 85 158 265 189 273 88 211 182 155 157 176 157 178 237 219 239 -61 60 58 55 75 167 241 124 214 66 173 131 119 115 142 115 144 190 162 184 -54 52 54 47 81 235 305 87 228 55 182 106 105 98 140 98 145 197 146 181 -8 8 7 7 9 10 10 8 9 8 16 15 15 15 15 15 15 16 15 16 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -59 65 51 56 59 61 141 633 516 415 119 272 94 176 91 169 91 210 320 294 -114 125 100 111 116 131 443 990 941 516 364 527 268 372 261 374 264 510 633 623 -154 163 138 147 161 198 741 1046 1161 394 576 657 400 488 432 489 437 738 807 832 -178 183 165 166 195 335 1000 961 1256 246 726 692 478 531 553 533 560 883 874 941 -174 174 167 159 206 580 1162 759 1213 214 767 614 467 477 581 479 590 902 810 914 -142 137 145 126 190 696 1102 464 967 161 658 429 364 337 493 338 502 750 602 720 -63 60 64 55 97 267 344 103 258 65 216 130 129 121 169 120 174 233 176 214 -25 23 27 21 71 172 194 32 103 24 94 49 51 48 63 48 71 99 57 83 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 34 26 29 31 32 51 139 117 99 51 79 47 61 45 60 45 67 88 83 -60 65 53 57 61 68 129 230 221 143 133 164 115 134 114 135 114 160 184 182 -65 68 58 61 68 82 177 233 253 118 160 175 129 144 134 144 135 190 203 207 -83 84 75 76 89 127 252 244 303 110 223 216 174 184 188 184 190 255 253 267 -94 94 87 85 106 190 312 226 322 110 266 233 202 204 225 204 227 295 275 298 -84 82 81 75 105 267 399 193 353 92 278 204 183 175 224 175 227 308 260 299 -52 51 50 47 64 88 100 64 85 53 115 101 101 98 107 98 108 118 108 115 -20 20 19 18 26 35 37 22 29 20 41 36 36 35 39 35 39 42 38 40 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -56 62 48 54 56 58 127 563 459 373 112 248 91 163 87 157 87 192 290 267 -100 110 88 98 101 115 312 660 627 363 284 389 225 291 220 292 222 377 456 449 -136 144 122 130 142 175 520 720 792 306 450 504 338 394 358 395 361 556 601 618 -115 116 105 106 123 172 329 320 393 151 314 306 253 266 271 266 273 354 352 370 -77 77 73 71 85 105 128 111 129 87 174 167 160 160 165 160 166 181 176 181 -54 52 51 48 60 71 79 66 75 57 114 108 107 106 110 106 110 116 113 116 -30 29 29 27 34 39 41 34 38 31 61 58 58 58 60 58 60 62 60 61 -12 11 11 10 14 16 17 13 15 12 24 22 23 22 23 22 23 24 23 24 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -55 60 47 53 55 57 118 510 416 340 109 231 90 155 86 150 86 181 268 248 -86 94 76 84 88 98 232 465 443 267 228 299 188 233 185 233 186 290 344 339 -84 87 75 78 87 104 265 359 393 166 235 260 183 209 192 210 193 284 306 314 -98 100 89 91 105 149 291 283 349 130 269 262 214 226 230 226 232 306 304 319 -105 105 98 96 119 210 344 251 356 123 299 264 230 232 255 232 258 332 310 335 -94 92 90 85 114 234 331 179 297 102 269 214 199 193 229 193 231 292 256 285 -96 89 106 82 173 670 891 198 653 100 468 223 220 194 336 193 349 516 355 464 -56 52 55 48 191 521 593 62 290 55 229 97 98 96 125 96 157 246 113 194 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -29 31 24 27 29 30 62 270 220 180 49 114 40 73 37 71 37 87 133 122 -66 70 57 62 67 73 192 407 386 226 166 230 130 171 127 171 128 222 271 266 -107 112 96 101 112 135 409 572 628 241 340 384 252 297 267 297 270 424 461 474 -149 153 138 139 163 259 687 668 857 207 544 524 384 419 432 420 437 647 643 686 -139 139 133 127 163 347 624 435 650 171 489 416 345 350 399 351 403 555 511 562 -113 110 112 101 145 390 588 279 522 125 410 298 266 254 328 254 333 455 383 441 -93 87 98 80 153 534 704 172 520 95 395 207 205 183 294 183 303 432 308 392 -45 36 56 34 198 537 612 65 303 40 247 96 102 93 141 93 170 266 124 210 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 69 54 61 63 65 147 733 593 484 129 310 101 197 95 190 95 235 365 334 -129 139 114 124 131 143 437 982 927 527 383 546 291 396 282 398 285 525 648 636 -159 169 143 152 166 203 750 1077 1186 415 596 684 420 510 450 512 455 762 836 860 -181 185 167 169 197 327 1010 984 1279 249 742 712 491 546 566 548 574 902 896 963 -185 185 178 169 217 625 1274 837 1338 227 841 675 509 522 635 524 645 991 892 1006 -157 152 159 139 207 822 1317 545 1158 177 772 496 415 383 571 384 582 883 706 849 -108 98 119 91 197 822 1099 230 803 111 562 255 252 215 397 215 413 622 421 557 -47 38 59 35 218 601 686 69 337 42 272 101 107 98 152 97 185 292 133 229 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 26 22 24 25 25 27 30 29 29 47 49 47 48 47 48 47 48 49 49 -55 58 49 53 55 59 69 80 79 71 112 117 109 112 109 112 109 116 120 119 -77 81 70 73 80 90 112 125 129 101 168 173 160 164 161 164 162 176 180 181 -88 90 81 82 94 113 146 143 159 109 201 199 186 189 190 189 191 211 211 215 -89 88 83 81 99 127 161 137 163 101 206 196 186 187 193 187 194 216 210 217 -78 77 75 71 91 124 151 109 140 84 181 164 160 158 169 158 170 188 177 186 -56 55 54 51 69 96 110 70 93 58 126 110 110 107 117 107 118 129 118 125 -28 28 26 25 37 52 56 30 42 28 57 48 49 47 53 47 53 58 51 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -38 43 33 37 38 40 60 164 137 119 69 102 65 81 62 80 62 88 112 106 -60 64 52 56 61 67 127 234 222 146 131 164 114 134 112 134 112 159 184 182 -65 68 59 62 67 74 86 92 95 80 137 139 132 134 133 134 133 141 143 144 -83 85 77 78 89 105 131 129 142 101 187 185 174 177 178 177 178 195 195 199 -105 105 98 96 120 244 434 306 452 126 341 292 243 247 280 247 283 386 357 391 -55 54 53 50 62 73 81 68 77 59 118 112 111 110 114 110 114 120 117 120 -102 94 112 87 180 693 920 208 676 106 494 241 238 204 359 204 371 543 377 490 -64 60 63 55 206 551 626 72 310 63 256 111 113 110 147 110 180 274 134 219 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -64 70 55 61 63 66 142 744 598 495 131 318 104 202 96 195 96 239 372 340 -130 139 114 125 131 143 434 992 933 537 388 555 295 403 286 405 288 531 656 643 -160 170 144 153 167 203 747 1085 1189 423 601 693 426 519 456 521 461 769 845 869 -181 186 167 169 197 319 1003 984 1274 248 744 717 495 551 569 553 577 904 900 966 -179 179 171 163 208 579 1174 779 1236 218 792 641 489 501 603 503 613 930 840 944 -153 148 154 136 199 763 1217 512 1073 171 730 477 403 374 546 374 556 832 670 801 -108 99 117 92 193 825 1103 228 806 111 564 256 253 209 400 209 415 625 423 560 -68 63 67 58 228 619 704 75 345 66 282 116 118 115 158 115 196 302 143 239 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 68 51 59 59 63 122 555 449 377 122 258 104 174 96 169 96 200 298 274 -100 110 88 98 101 113 279 588 554 337 278 372 228 287 223 288 224 359 430 422 -142 152 128 137 148 185 447 613 664 296 436 482 350 395 364 396 366 520 559 570 -167 173 155 157 184 282 678 668 841 240 584 568 434 468 478 469 483 682 680 720 -164 164 158 150 195 400 705 501 736 206 579 498 418 425 478 425 483 653 605 661 -133 133 119 123 143 251 343 201 311 135 328 279 266 262 292 262 294 348 316 341 -81 82 75 75 101 162 193 102 155 83 181 150 150 145 164 145 165 188 166 180 -44 46 38 41 58 92 100 46 69 46 89 72 74 71 81 71 82 91 77 85 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -26 27 23 25 26 27 29 32 31 31 50 52 50 51 50 51 50 51 52 52 -110 121 96 107 111 124 369 843 790 462 334 476 258 348 249 350 251 455 562 551 -169 179 152 161 176 213 796 1167 1274 455 645 745 458 558 488 560 494 825 908 933 -185 190 171 173 201 320 999 985 1270 254 755 729 508 564 581 566 589 914 910 975 -185 184 176 169 215 582 1171 783 1234 226 807 658 506 519 619 520 628 943 855 958 -159 154 162 142 211 732 1152 501 1018 180 726 491 422 395 555 396 564 822 671 793 -112 102 122 95 197 772 1026 229 753 115 553 271 268 223 404 223 416 609 423 549 -72 67 71 62 232 619 703 80 347 71 292 123 125 123 169 122 207 312 155 250 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -65 73 57 63 65 68 138 744 595 501 135 325 112 209 99 202 99 244 378 345 -133 143 117 128 134 146 430 994 931 545 397 566 307 415 296 417 298 539 666 652 -164 174 147 157 171 207 745 1092 1190 433 614 708 441 534 469 536 475 781 859 882 -186 191 171 174 202 319 1002 991 1276 255 760 735 513 569 586 571 593 920 917 982 -188 188 179 172 218 616 1264 840 1333 229 854 692 526 540 650 541 660 1003 907 1020 -165 160 167 147 216 835 1333 560 1176 186 806 529 447 415 604 416 615 919 741 885 -118 109 129 100 212 919 1227 251 896 122 634 291 287 230 453 230 467 701 476 629 -79 74 77 68 261 701 796 87 390 77 327 133 135 132 187 132 230 349 170 278 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -28 29 24 26 27 28 31 34 33 33 53 55 53 54 52 54 52 54 55 55 -59 63 52 57 60 64 75 88 87 78 121 127 118 122 118 122 118 126 130 130 -87 91 78 82 91 108 219 293 314 157 223 244 187 206 193 207 194 260 277 282 -103 105 94 95 111 159 369 366 457 140 317 310 239 257 262 257 264 369 368 389 -129 128 121 117 147 339 645 444 678 154 479 402 323 330 382 331 387 551 505 559 -100 98 97 89 124 350 533 249 473 109 364 262 233 221 290 221 294 406 340 393 -110 102 119 94 191 769 1021 223 748 113 547 266 263 213 399 213 410 603 417 543 -75 70 75 65 243 642 728 84 359 74 308 129 131 128 181 127 220 328 165 264 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -33 37 28 31 33 35 51 151 125 111 55 87 51 67 48 66 48 73 96 90 -94 103 83 92 95 106 237 490 460 291 250 327 211 259 206 259 207 314 373 366 -81 85 72 76 84 100 206 276 296 148 206 225 171 190 177 190 178 240 257 261 -102 104 93 95 110 151 296 294 358 137 282 277 227 239 243 240 244 320 319 335 -104 103 96 94 117 204 336 248 350 122 297 263 229 232 254 232 256 329 309 333 -94 92 90 84 114 233 330 180 297 101 271 216 201 195 230 195 233 293 258 287 -75 72 77 66 113 299 383 122 289 77 256 162 162 145 206 145 210 274 212 254 -42 38 46 35 120 288 325 53 171 40 164 80 84 79 112 78 126 173 102 145 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -44 50 38 43 44 46 76 312 252 219 81 156 73 111 66 108 66 123 176 163 -75 82 66 72 76 84 176 356 334 215 185 241 159 192 155 193 156 231 273 268 -90 95 81 85 94 111 224 299 319 163 231 253 195 215 201 215 202 268 286 291 -91 92 82 83 97 134 269 267 326 122 249 244 198 209 212 210 214 283 283 297 -108 107 101 98 123 244 434 309 454 129 350 301 253 257 288 257 291 394 366 400 -86 85 82 77 105 218 310 168 279 93 250 198 183 178 212 178 214 271 238 265 -63 61 61 56 87 194 243 91 188 64 179 124 124 114 150 114 152 190 153 178 -35 33 37 30 90 207 232 43 125 34 124 65 68 64 88 63 97 130 81 110 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 22 19 20 22 22 23 24 24 24 41 41 41 41 40 41 40 41 42 41 -42 43 37 40 42 44 48 51 50 48 82 83 81 82 81 82 81 83 84 84 -59 61 53 56 61 65 73 76 78 69 120 122 117 119 118 119 118 123 124 125 -69 70 64 65 73 81 93 92 97 80 146 145 140 141 142 141 142 150 150 151 -87 87 82 80 97 121 149 129 151 100 201 193 184 185 190 185 191 210 204 210 -53 52 50 48 58 66 71 62 68 56 109 105 104 103 106 103 106 111 108 110 -59 57 57 52 72 96 108 72 92 60 131 116 116 114 123 113 123 134 124 130 -30 29 29 27 39 52 55 33 43 30 64 55 56 54 60 54 60 64 58 62 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 17 15 16 17 17 18 18 18 18 32 32 32 32 32 32 32 32 32 32 -41 42 37 39 41 43 46 49 49 47 80 81 79 80 79 80 79 81 82 82 -53 55 48 50 55 58 63 66 66 61 107 108 104 106 105 106 105 109 110 110 -60 61 55 56 63 68 75 74 77 67 122 122 119 119 120 119 120 124 124 125 -43 43 39 39 45 47 49 47 49 45 84 83 82 82 83 82 83 85 84 85 -54 53 51 49 60 68 74 64 71 57 113 109 108 107 110 107 110 115 112 115 -36 35 34 32 41 46 48 40 44 37 73 70 70 69 72 69 72 74 72 73 -26 25 26 22 56 118 131 31 74 26 76 44 46 43 58 43 62 79 53 69 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 67 52 58 59 62 105 530 421 368 121 256 111 177 93 172 93 197 291 267 -127 140 111 124 128 142 425 1023 948 569 405 586 320 430 306 432 309 553 688 671 -170 180 152 162 177 212 724 1079 1164 445 628 726 464 556 489 558 494 791 871 891 -193 198 177 180 209 315 981 982 1253 264 777 756 538 595 608 597 615 933 933 995 -186 186 177 170 215 540 1070 730 1130 226 780 649 511 523 612 524 620 903 825 917 -144 140 143 128 184 542 829 383 735 160 577 416 369 350 459 351 466 643 540 623 -97 92 101 85 153 474 615 167 457 100 383 224 225 192 301 193 306 415 309 381 -49 43 57 40 157 382 431 65 223 46 214 96 102 94 145 93 162 225 129 187 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 -36 37 33 34 37 38 40 42 42 41 70 71 70 70 69 70 69 71 72 72 -27 27 24 25 27 27 28 28 28 28 50 50 50 50 50 50 50 50 50 50 -63 64 58 59 66 72 80 79 82 71 130 130 126 127 127 127 127 133 133 134 -51 50 47 47 54 57 61 58 60 54 101 100 98 98 99 98 99 102 101 102 -36 35 33 33 38 40 41 38 40 37 69 68 68 68 68 68 68 70 69 69 -66 65 65 59 83 114 130 83 110 68 151 132 132 129 141 129 141 155 142 150 -36 35 35 32 47 65 69 39 52 36 76 65 66 64 71 64 72 77 69 74 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -40 44 35 39 40 42 47 58 55 54 79 84 79 81 78 81 78 82 85 85 -68 73 61 66 69 74 89 110 107 94 143 151 139 144 138 144 138 149 156 155 -68 70 61 64 70 76 87 93 94 82 140 143 136 139 137 139 137 145 147 147 -58 59 53 54 61 65 71 70 72 64 117 117 114 115 115 115 115 119 119 120 -59 59 55 54 63 69 74 70 74 64 120 118 116 116 117 116 118 122 121 122 -53 52 50 48 58 65 70 62 67 56 109 105 104 104 106 104 106 111 108 110 -41 39 39 36 46 53 56 46 51 42 84 79 79 78 81 78 82 85 82 84 -24 23 23 21 29 34 35 26 30 24 49 45 46 45 47 45 48 50 47 48 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 21 18 19 21 21 22 23 22 23 39 39 39 39 39 39 39 39 39 39 -44 46 39 42 45 47 50 54 53 51 86 88 86 87 85 87 85 88 90 89 -52 53 47 49 53 56 60 62 63 59 103 104 101 102 101 102 101 104 105 105 -57 58 52 53 60 64 69 68 70 63 115 115 112 113 113 113 113 117 117 118 -47 47 43 43 50 52 55 53 54 50 93 92 91 91 92 91 92 94 93 94 -40 40 37 37 43 46 47 44 46 42 79 78 77 77 78 77 78 80 79 80 -18 17 16 16 18 19 19 18 18 18 33 33 33 33 33 33 33 33 33 33 -13 13 12 12 14 15 15 14 14 13 26 25 25 25 25 25 25 26 25 25 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 25 16 21 1 8 1 3 1 2 1 2 8 7 -83 94 72 82 82 86 142 818 643 572 180 395 167 272 132 263 132 299 450 410 -142 159 124 141 143 160 455 1106 1019 627 460 658 371 490 354 493 357 618 766 746 -190 202 170 183 197 237 772 1158 1241 493 701 808 529 628 554 630 560 874 961 981 -210 215 193 196 227 333 1027 1036 1314 286 842 823 595 654 666 656 674 1004 1006 1070 -209 209 199 191 241 609 1211 827 1281 254 898 750 592 607 707 608 716 1038 950 1054 -183 178 184 163 236 820 1284 558 1134 205 847 586 510 479 657 480 668 954 786 921 -138 128 150 118 242 972 1280 268 931 142 716 361 363 285 535 287 546 785 551 709 -102 95 105 88 312 786 882 113 433 100 414 171 174 170 265 170 308 435 238 357 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 2 2 2 2 2 30 20 25 2 10 2 5 2 3 2 4 11 8 -81 92 70 80 81 84 138 826 647 579 177 397 165 272 129 263 129 299 451 411 -152 165 134 147 153 166 462 1135 1044 645 473 677 383 506 365 508 368 635 787 766 -192 205 172 185 200 240 775 1164 1247 499 709 818 538 637 563 640 568 884 972 991 -208 213 191 194 225 328 1023 1034 1311 283 840 822 593 653 664 655 672 1002 1005 1068 -217 217 206 198 249 646 1302 885 1378 262 957 796 625 641 750 642 760 1109 1014 1126 -190 184 190 169 244 879 1383 593 1220 212 904 620 537 504 698 505 709 1019 837 984 -142 131 154 121 248 989 1300 271 944 146 734 373 375 295 550 298 561 803 566 726 -75 63 94 59 312 812 914 101 443 68 417 146 156 142 263 142 303 440 228 355 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 11 7 9 9 9 10 67 45 57 12 28 12 18 11 15 11 16 30 25 -76 89 65 76 74 78 127 636 501 453 165 329 157 236 129 230 129 255 370 340 -143 160 125 142 144 160 432 1039 955 599 454 639 373 484 357 486 359 600 739 720 -194 206 174 186 201 239 814 1237 1325 520 737 855 553 660 579 663 585 924 1019 1040 -221 227 203 207 239 348 1110 1124 1427 300 911 892 641 707 719 709 727 1089 1092 1161 -213 213 203 195 245 614 1221 835 1291 258 916 767 608 623 724 624 733 1057 969 1073 -173 168 176 154 228 585 869 425 773 195 667 503 456 437 548 438 554 734 628 713 -131 125 130 115 181 412 512 185 393 134 398 282 282 259 338 259 342 421 343 395 -60 61 54 55 83 129 139 64 96 62 125 100 103 98 114 98 115 128 108 120 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 11 7 8 9 9 10 80 53 68 12 31 12 19 11 16 11 16 34 28 -91 104 79 91 90 94 144 778 610 554 199 403 190 289 155 280 156 311 453 416 -147 168 129 148 147 167 377 832 767 504 435 577 375 459 363 460 365 546 653 638 -193 210 174 189 202 252 591 841 893 425 625 698 514 579 530 580 533 740 799 812 -219 228 204 207 242 353 795 804 987 324 764 752 596 637 644 638 649 877 879 923 -206 206 200 189 245 496 879 633 922 260 760 661 558 568 633 568 639 853 794 864 -187 180 191 166 247 665 997 477 884 210 750 559 504 482 611 482 619 828 705 804 -158 149 157 138 217 476 587 221 453 161 471 339 340 314 402 314 407 496 408 467 -73 67 75 62 128 229 250 84 155 71 198 137 143 135 168 135 174 202 158 184 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8 9 6 7 7 7 9 54 36 46 10 23 10 15 10 13 10 13 25 21 -56 64 47 54 55 57 85 367 291 267 109 200 105 149 89 145 90 158 223 206 -87 96 77 85 88 97 192 400 370 251 222 287 195 233 190 234 190 272 321 314 -114 120 102 108 118 140 316 448 475 230 329 367 272 305 280 306 282 388 419 425 -141 145 129 132 152 214 516 522 646 195 474 466 363 390 395 391 398 548 550 578 -167 167 158 153 192 431 816 570 860 202 652 556 455 465 529 465 535 743 686 753 -181 176 181 162 231 766 1187 522 1048 201 811 572 503 475 638 475 648 908 755 878 -139 129 150 119 238 861 1121 248 815 142 669 362 365 296 513 299 522 727 524 660 -86 72 111 68 360 922 1034 114 495 77 484 167 181 163 311 163 355 509 268 412 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -24 25 21 23 24 25 26 27 27 27 45 46 45 46 45 46 45 46 47 46 -26 27 24 25 27 27 28 28 28 28 50 50 50 50 50 50 50 50 50 50 -34 34 31 32 35 36 36 36 36 36 65 65 64 64 64 64 64 65 65 65 -63 64 58 59 66 71 77 76 79 70 128 128 125 125 126 125 126 130 130 131 -62 62 57 57 66 72 77 73 77 67 126 124 122 122 123 122 123 128 127 128 -51 50 48 46 55 60 63 57 61 53 103 100 99 99 101 99 101 104 102 103 -57 55 56 51 68 84 91 67 81 58 124 114 114 112 119 112 119 126 119 124 -28 27 28 25 34 40 41 31 36 28 58 54 54 53 56 53 57 59 55 57 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -25 25 22 23 25 25 26 28 27 27 46 47 46 47 46 47 46 47 48 47 -72 77 63 70 72 77 92 112 109 98 149 158 146 151 145 151 145 156 162 161 -128 136 114 122 132 158 344 485 513 256 371 412 311 346 319 347 321 434 467 474 -97 99 88 89 104 141 280 283 341 132 273 269 220 233 235 233 236 309 310 323 -101 101 94 92 115 200 329 245 343 120 298 265 231 234 256 234 258 330 310 333 -94 92 90 84 115 235 332 180 297 102 279 223 208 201 238 201 240 301 265 294 -74 71 73 65 104 226 279 104 213 76 215 153 153 141 183 141 185 227 185 213 -36 35 36 32 46 58 61 40 49 36 77 68 70 68 74 68 74 78 72 76 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 12 8 9 9 9 11 82 53 70 12 34 13 21 12 18 12 17 36 30 -51 59 43 50 51 52 73 269 215 201 98 163 96 127 85 125 85 132 178 166 -79 87 69 76 80 87 150 284 264 190 183 225 166 190 162 191 163 215 248 243 -104 110 94 100 108 123 163 191 197 146 239 248 225 233 226 233 227 254 262 263 -180 186 166 169 195 277 714 726 902 252 656 646 497 536 542 537 547 762 765 806 -222 223 215 204 261 587 1103 773 1162 277 907 777 640 653 740 653 748 1029 953 1044 -183 178 182 164 231 792 1231 531 1083 202 841 591 520 490 661 490 671 942 781 910 -143 133 154 123 237 733 939 237 686 146 614 365 369 314 488 316 496 661 496 606 -87 77 105 71 257 580 642 111 330 81 367 174 189 170 271 169 292 381 239 324 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8 10 6 8 8 8 9 41 28 36 11 21 11 15 11 14 11 13 22 19 -51 58 43 49 51 53 75 344 270 253 98 186 96 138 80 134 80 145 206 189 -101 111 88 98 101 111 229 503 462 313 271 357 238 288 230 288 231 337 401 391 -78 81 70 74 80 88 102 110 112 96 165 168 159 163 160 162 160 170 173 174 -74 75 65 67 78 109 290 295 368 99 235 231 171 187 189 187 191 279 280 297 -81 81 76 74 88 101 116 105 116 90 176 171 166 166 170 166 170 180 177 181 -65 63 61 58 71 81 89 76 85 68 136 130 129 128 132 128 132 138 134 137 -50 48 48 45 57 66 70 57 64 51 104 98 98 97 101 97 101 106 101 104 -24 23 23 21 28 31 31 26 28 24 48 46 46 45 47 45 47 49 47 48 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 5 4 5 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 -38 41 34 37 38 39 43 49 47 47 74 77 74 75 73 75 73 76 78 77 -73 78 64 71 73 78 92 112 109 98 151 160 148 153 147 153 148 158 164 163 -55 56 50 52 56 59 63 65 65 62 109 110 107 108 107 108 107 110 111 111 -81 82 74 75 85 94 108 107 113 93 171 171 165 166 167 166 167 176 176 178 -80 80 75 74 87 100 113 104 114 89 174 169 164 165 168 165 168 178 175 178 -60 59 57 55 66 74 79 70 76 63 124 120 119 118 121 118 121 126 123 125 -49 47 47 43 55 63 66 54 61 49 100 95 95 94 97 94 97 101 97 100 -31 30 31 28 38 44 45 34 39 31 65 59 60 59 62 59 63 65 61 63 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 9 8 8 9 9 9 9 9 9 16 16 16 16 16 16 16 16 16 16 -63 74 54 63 62 65 89 319 254 242 130 207 129 165 115 162 115 170 224 209 -116 130 102 115 117 128 260 568 520 358 320 416 283 339 273 340 274 392 465 454 -191 203 171 183 197 233 666 1009 1068 465 672 770 533 618 551 620 556 818 896 910 -235 241 215 219 252 350 1055 1079 1354 314 935 921 686 748 757 750 765 1100 1106 1168 -235 235 223 215 268 641 1252 862 1320 281 997 846 686 701 803 702 813 1139 1050 1155 -208 202 208 186 264 869 1336 581 1174 230 947 676 601 568 753 568 764 1054 880 1019 -160 149 175 137 280 992 1278 268 918 164 789 435 443 362 613 365 624 854 620 776 -102 86 138 81 412 1009 1120 133 526 92 562 196 226 192 383 192 424 586 324 480 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 7 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 -45 48 39 44 44 46 50 61 57 58 87 92 87 89 86 89 86 89 93 92 -77 85 67 75 77 84 146 282 260 189 178 222 162 187 158 187 158 211 244 239 -151 161 135 145 156 187 428 619 652 319 468 524 390 438 400 439 402 551 595 603 -206 214 191 195 225 316 673 685 832 297 687 679 551 585 589 586 593 779 782 817 -173 172 157 158 184 281 431 331 447 190 449 412 374 377 401 377 403 485 462 489 -135 135 137 132 142 192 232 168 218 137 486 462 456 453 469 453 470 495 480 492 -126 126 116 115 160 274 326 155 256 128 302 243 244 234 271 233 273 314 272 300 -106 92 134 86 328 735 810 135 406 97 468 212 238 208 349 207 373 485 303 411 -35 26 43 25 128 221 213 36 63 26 115 64 69 64 84 64 93 113 69 84 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 7 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 -41 44 36 40 41 42 46 53 51 51 80 83 80 81 79 81 79 82 84 84 -75 84 66 73 76 83 143 277 255 186 175 218 159 183 155 184 155 207 239 234 -98 104 89 95 101 114 143 163 167 132 220 227 210 216 211 216 211 231 237 238 -110 113 102 104 118 141 182 183 201 139 260 259 241 245 246 245 246 273 273 278 -159 159 151 146 183 358 630 454 660 192 560 491 419 425 471 426 476 625 584 633 -86 84 82 76 106 218 306 164 273 93 255 203 189 183 217 183 220 276 242 269 -112 106 117 98 176 459 574 167 422 114 413 268 271 239 341 241 345 440 343 407 -65 59 74 55 151 303 330 78 179 62 219 122 134 120 176 120 184 226 157 197 -27 18 37 18 104 180 173 28 54 18 97 51 58 51 73 51 79 96 58 72 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 7 4 5 5 5 6 60 38 52 6 24 7 14 6 12 6 11 25 20 -54 62 46 52 53 55 75 360 279 268 106 199 106 150 88 147 88 155 220 202 -79 87 69 77 80 87 168 367 335 234 201 263 178 214 172 214 173 247 294 286 -99 105 90 95 102 115 144 164 168 133 222 229 212 218 213 218 213 233 239 240 -111 114 102 104 118 142 182 183 201 139 261 260 242 246 247 246 248 274 274 279 -112 112 106 103 125 161 203 174 206 130 271 258 245 246 254 246 255 283 275 284 -166 162 166 149 212 583 869 402 765 183 670 500 455 434 549 435 556 736 627 713 -173 160 192 148 303 995 1269 279 910 176 822 473 483 403 650 407 661 885 654 807 -106 90 143 84 371 851 936 137 451 95 519 210 245 205 378 205 407 538 322 450 -36 26 47 25 159 282 270 37 71 25 136 67 74 67 95 67 107 133 74 94 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -20 27 16 21 19 19 22 231 145 202 24 92 26 56 23 45 23 41 98 79 -103 118 88 103 101 105 140 818 627 605 241 462 241 346 195 338 195 356 510 467 -169 190 147 168 169 186 455 1153 1041 695 553 769 474 600 451 602 454 713 874 848 -221 234 197 212 228 266 807 1251 1320 566 828 954 654 763 676 765 681 1011 1112 1128 -247 253 226 231 265 361 1092 1121 1403 327 994 981 737 802 810 804 818 1165 1171 1236 -249 248 235 227 282 669 1301 894 1371 294 1061 904 739 754 861 755 870 1208 1115 1224 -221 215 220 197 278 914 1396 601 1221 242 1013 727 651 616 811 616 823 1124 940 1086 -171 159 188 147 302 1049 1340 271 953 174 848 474 486 400 664 404 676 914 667 831 -107 92 148 86 417 987 1086 136 503 97 572 203 247 199 406 199 440 593 338 489 -89 181 23 146 161 308 293 83 44 196 112 117 91 115 78 115 95 110 92 81 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -24 33 20 25 24 24 26 292 181 255 28 115 31 69 28 56 28 50 123 99 -105 120 90 104 103 107 141 896 683 662 251 497 252 369 201 360 200 379 550 502 -134 147 118 130 135 145 362 950 856 568 437 617 372 476 352 478 354 570 703 681 -116 121 102 108 119 137 419 653 690 294 413 479 323 379 334 380 337 508 561 569 -192 196 175 178 205 279 819 840 1050 255 749 739 559 607 613 608 618 876 881 928 -222 222 210 203 252 578 1107 764 1164 263 918 786 648 660 750 661 758 1041 963 1055 -87 85 84 78 100 123 140 112 132 93 196 184 181 179 188 179 188 201 193 200 -118 111 124 103 186 476 592 172 433 120 435 284 289 256 360 257 365 461 361 427 -60 56 69 51 144 290 315 71 166 58 206 110 123 108 164 108 172 211 145 184 -22 18 27 17 76 130 124 22 40 18 73 40 45 40 56 40 61 72 45 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 9 8 9 9 9 9 10 9 10 17 17 17 17 17 17 17 17 17 17 -46 49 40 44 45 46 51 60 57 57 88 93 88 90 87 90 87 90 94 93 -91 100 81 90 91 99 122 160 153 135 197 212 191 200 190 200 190 208 219 217 -62 63 56 58 63 66 71 73 74 69 122 124 120 122 121 121 121 124 125 125 -124 127 114 116 132 162 218 220 245 159 301 300 276 282 283 282 284 319 320 326 -70 70 65 64 74 81 87 82 87 75 143 141 138 138 140 138 140 145 144 145 -107 105 105 97 127 173 209 151 193 115 261 237 231 228 244 228 245 270 254 267 -88 85 88 78 112 156 176 109 146 90 207 180 181 176 194 176 195 212 194 206 -30 28 29 26 34 38 39 31 35 29 60 56 57 56 58 56 58 60 57 59 -9 8 9 8 11 13 13 9 11 9 18 16 17 16 18 16 18 18 17 18 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -26 27 23 25 26 27 28 29 28 29 49 50 49 50 49 50 49 50 50 50 -70 75 62 68 71 75 85 99 96 90 144 150 141 145 141 145 141 148 153 152 -99 104 89 95 102 113 139 156 159 130 218 225 209 215 210 215 211 228 234 234 -106 109 98 100 113 132 163 163 176 130 244 243 229 233 233 233 233 254 254 258 -93 93 87 85 102 119 137 123 137 104 206 200 194 194 198 194 199 212 208 212 -108 106 106 98 129 175 211 152 194 116 264 239 233 231 247 230 248 273 257 270 -58 55 56 51 66 76 81 65 74 58 121 113 114 112 117 112 117 122 117 120 -34 32 33 30 40 46 47 36 41 33 69 64 65 64 67 64 68 70 66 68 -11 10 11 9 14 16 16 11 13 10 22 19 20 19 21 19 21 21 20 21 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 -32 33 29 31 32 33 34 37 36 36 61 62 61 62 61 62 61 62 63 62 -73 81 63 71 73 80 137 272 248 184 169 213 154 179 150 179 150 200 233 228 -223 242 200 218 231 278 682 1020 1069 514 772 871 641 725 657 726 661 912 992 1003 -245 254 227 231 267 370 908 931 1144 345 912 902 715 765 770 766 776 1045 1050 1100 -263 263 249 241 299 641 1186 828 1242 311 1036 898 755 767 861 767 869 1163 1081 1177 -242 234 242 216 305 917 1372 604 1197 265 1054 776 706 671 860 671 871 1158 980 1120 -190 176 211 163 339 1118 1413 285 996 192 929 534 550 460 739 464 750 997 736 908 -121 103 174 97 466 1070 1166 151 529 109 641 229 295 224 472 224 502 662 386 548 -75 92 49 84 255 446 422 76 73 97 190 115 105 114 122 114 151 185 106 121 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -29 43 25 33 30 30 33 356 218 315 36 148 43 94 35 78 35 66 157 126 -72 85 61 72 71 73 95 430 331 329 156 266 157 209 132 207 132 211 289 267 -166 186 145 165 166 181 422 1091 978 669 545 753 475 594 451 596 454 695 849 822 -235 250 210 226 242 281 792 1227 1288 578 863 987 698 804 717 806 723 1038 1138 1152 -263 269 241 246 281 374 1066 1095 1361 344 1024 1013 781 843 850 845 857 1187 1194 1255 -264 263 249 241 298 671 1267 874 1328 310 1088 937 781 795 898 795 907 1227 1137 1242 -236 229 235 210 295 910 1365 592 1188 257 1043 765 695 660 850 660 861 1147 969 1109 -185 172 206 159 328 1052 1324 274 933 187 885 517 533 449 708 452 719 948 704 864 -121 103 172 97 449 1012 1100 150 501 108 619 232 296 224 463 224 489 638 379 531 -73 81 56 74 261 452 427 73 77 84 200 114 107 114 129 114 159 194 108 127 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -39 61 34 48 40 40 44 573 347 508 50 236 62 148 49 122 49 99 250 200 -130 150 112 131 127 132 162 1067 805 802 330 624 334 473 264 467 263 477 683 624 -191 214 167 190 191 208 496 1308 1170 800 651 903 566 711 537 714 540 832 1018 986 -245 260 220 235 253 292 842 1313 1378 613 920 1055 743 857 763 860 769 1109 1216 1231 -278 285 255 260 297 393 1140 1172 1459 361 1099 1087 837 904 912 906 919 1274 1282 1347 -279 279 264 255 315 716 1357 933 1422 326 1167 1005 837 852 963 852 973 1317 1220 1332 -249 241 248 222 311 978 1467 628 1274 271 1122 820 746 707 913 707 925 1233 1040 1192 -195 181 218 168 350 1136 1429 286 1001 197 954 553 572 481 762 484 774 1021 756 930 -128 109 187 102 489 1103 1196 158 537 115 673 247 321 237 504 237 531 693 409 575 -83 97 58 88 297 516 486 83 82 101 224 127 117 126 142 126 178 218 119 140 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -30 41 25 33 29 30 34 218 139 196 39 105 45 75 38 67 38 57 110 92 -55 60 48 54 54 56 63 78 73 73 109 116 109 112 107 112 107 112 117 116 -68 72 60 65 68 71 79 90 88 83 136 141 135 137 134 137 134 140 144 143 -90 94 82 87 93 101 118 128 130 112 193 197 187 191 187 191 188 199 203 203 -100 102 92 94 106 120 142 142 151 119 222 221 211 214 214 214 214 229 230 232 -75 75 70 69 80 88 95 89 94 81 155 152 150 150 152 150 152 157 156 157 -69 68 65 63 76 84 90 79 86 72 143 138 137 136 140 136 140 145 142 144 -62 59 60 55 71 82 87 69 79 63 130 122 122 121 126 121 126 131 126 130 -39 37 39 34 47 54 55 42 48 38 81 74 76 74 79 74 79 81 77 79 -17 16 17 15 23 29 28 17 21 16 35 30 31 30 33 30 34 35 31 33 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -40 61 34 49 39 39 44 481 292 430 53 212 67 141 52 120 52 96 223 181 -110 133 94 113 107 112 146 837 632 636 281 508 284 391 228 389 228 392 553 507 -177 199 155 177 177 193 428 1096 980 684 579 787 511 630 486 632 488 727 881 854 -235 250 211 226 243 279 772 1198 1255 572 864 987 706 809 723 811 729 1034 1132 1145 -266 272 244 248 284 374 1042 1071 1328 345 1028 1017 793 853 860 855 866 1186 1193 1251 -281 281 265 257 316 711 1336 918 1397 327 1168 1008 846 859 969 859 978 1314 1219 1329 -251 243 249 224 312 968 1443 616 1250 272 1121 824 753 714 918 714 929 1230 1039 1188 -198 184 222 170 356 1127 1409 282 982 199 957 562 582 494 770 496 781 1022 760 931 -131 112 193 105 494 1095 1181 160 525 117 679 257 337 241 518 240 540 697 417 580 -76 76 70 70 337 586 549 76 92 77 255 121 119 121 158 121 200 247 119 153 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -22 23 19 21 21 21 23 25 24 25 40 42 41 41 40 41 40 41 42 41 -55 59 48 54 54 56 61 75 70 71 107 113 107 110 106 110 106 110 115 113 -65 68 58 63 66 68 75 83 82 78 130 134 128 131 128 131 128 133 136 135 -74 76 66 70 75 80 87 91 92 85 148 151 146 148 146 147 146 151 153 153 -172 174 157 160 181 231 362 367 427 224 446 444 392 406 407 406 409 484 485 500 -176 175 163 161 192 288 425 328 437 198 471 433 397 400 424 400 427 505 482 508 -174 169 175 156 222 557 801 375 697 189 673 518 481 461 567 461 573 730 629 708 -192 178 215 165 342 1047 1303 270 907 193 901 537 557 477 729 478 740 960 719 876 -134 114 199 108 501 1102 1185 162 523 120 689 266 349 246 531 246 550 707 424 589 -77 75 74 69 360 625 583 77 96 76 271 123 122 123 167 123 213 262 122 160 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -43 67 36 54 42 42 48 503 304 453 58 229 78 156 57 136 57 105 240 195 -123 150 105 128 119 125 163 941 707 719 326 581 329 451 263 450 263 449 632 578 -182 210 158 185 181 200 388 894 802 584 552 714 501 593 482 594 484 666 787 765 -170 180 152 164 175 203 398 568 590 324 497 548 434 475 441 476 443 567 607 612 -169 173 155 158 181 239 433 441 524 230 497 493 420 439 442 440 444 549 551 571 -174 174 166 159 200 381 649 465 674 208 619 547 476 482 531 482 535 684 641 691 -206 199 210 183 267 629 891 431 777 225 779 608 569 547 662 547 669 840 730 816 -132 125 143 115 218 572 702 180 497 133 522 336 346 306 434 306 439 551 428 508 -83 75 100 70 193 360 383 96 201 78 279 160 184 154 235 154 239 284 203 250 -38 30 50 28 169 286 267 38 67 30 147 66 77 68 105 67 120 143 75 99 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 15 13 14 15 15 15 16 16 16 28 28 28 28 28 28 28 28 28 28 -55 60 48 54 54 56 62 74 70 71 108 114 108 111 107 111 107 111 116 114 -103 116 90 103 103 112 180 349 317 245 254 309 237 268 230 268 231 292 334 327 -240 254 214 230 247 284 695 1055 1101 535 821 926 688 775 702 777 707 964 1048 1058 -289 296 265 270 308 398 1009 1035 1272 371 1048 1038 831 886 892 888 898 1194 1200 1254 -302 301 285 276 338 709 1284 891 1336 349 1178 1028 879 890 993 890 1002 1314 1224 1327 -267 258 266 238 332 948 1386 606 1198 288 1130 848 784 746 939 746 950 1230 1049 1189 -211 196 239 181 382 1163 1440 292 995 212 1008 603 627 539 819 539 830 1072 803 978 -142 121 215 114 528 1140 1220 171 533 127 726 290 384 264 571 264 584 743 452 621 -86 84 83 78 411 708 657 86 105 86 311 137 136 137 191 137 245 299 136 181 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 84 44 68 50 51 57 616 369 558 72 288 103 201 71 178 71 133 301 246 -147 171 126 149 143 149 181 1106 827 851 393 694 396 541 312 543 311 536 751 688 -208 234 181 208 207 225 499 1326 1177 833 712 970 632 779 600 781 603 892 1083 1048 -265 281 237 254 273 311 845 1318 1378 637 984 1121 812 926 831 929 836 1170 1279 1291 -302 308 276 281 321 414 1142 1173 1452 383 1165 1153 910 975 982 977 989 1336 1343 1407 -303 302 285 277 339 739 1360 933 1414 349 1233 1071 910 923 1034 922 1044 1379 1281 1392 -268 260 266 239 331 998 1468 623 1263 289 1181 878 810 769 977 769 988 1288 1093 1244 -194 180 218 167 344 990 1218 265 844 194 875 537 558 485 718 485 728 928 704 849 -132 114 195 107 459 967 1031 157 457 119 634 271 353 247 507 246 516 648 404 545 -80 75 82 70 398 683 632 80 103 76 305 130 132 130 188 130 241 293 131 177 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -51 80 43 65 50 50 57 503 304 458 75 250 102 181 74 164 73 125 260 216 -143 167 122 146 139 144 176 1015 759 785 377 652 382 513 304 515 304 507 704 646 -199 224 174 199 199 216 464 1219 1081 772 671 907 599 733 570 735 572 835 1009 977 -253 268 226 243 260 297 781 1213 1266 595 922 1047 766 870 783 872 788 1091 1191 1202 -287 293 263 268 305 395 1056 1084 1339 366 1092 1081 859 918 925 920 931 1248 1255 1312 -289 288 272 264 323 690 1255 864 1303 332 1154 1005 859 870 972 870 981 1287 1197 1299 -258 250 256 230 319 931 1358 582 1168 278 1110 831 770 732 923 732 934 1208 1028 1167 -207 192 235 178 368 1023 1252 284 868 207 920 574 597 522 760 522 770 974 744 893 -149 125 220 118 495 1015 1078 178 488 131 691 314 399 287 560 286 569 705 451 597 -65 46 93 44 414 718 660 62 118 45 323 112 131 115 205 115 254 310 127 189 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 18 16 17 17 18 18 19 19 19 33 33 33 33 33 33 33 33 33 33 -37 38 33 35 37 38 39 42 41 41 70 71 70 71 70 71 70 71 72 71 -54 56 48 51 54 56 59 62 61 61 104 106 104 105 103 105 103 106 107 107 -70 72 63 66 72 75 80 83 83 79 139 140 137 138 137 138 137 141 142 142 -107 109 98 100 113 128 150 149 158 126 237 236 226 228 229 228 229 244 244 247 -130 129 124 119 146 188 236 200 238 150 322 306 292 293 303 293 304 336 327 337 -124 120 122 111 149 205 245 173 224 132 309 279 273 269 289 269 290 320 300 315 -155 148 163 137 233 482 571 199 416 156 497 360 370 341 433 341 437 518 426 485 -90 81 110 75 209 381 400 102 208 84 301 177 204 169 257 169 261 306 221 269 -41 35 50 32 149 241 223 40 63 35 139 71 81 72 106 72 118 135 78 100 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -57 94 49 76 55 56 63 605 361 554 86 301 122 220 80 198 80 148 312 258 -149 175 128 153 145 151 183 1045 778 813 400 684 406 541 325 544 325 533 736 676 -209 235 182 209 208 226 473 1247 1104 796 704 947 633 769 602 772 604 871 1050 1017 -251 265 224 240 258 294 738 1139 1186 572 893 1010 750 846 765 848 769 1049 1142 1152 -266 272 243 248 283 365 911 933 1145 341 970 961 775 825 830 827 836 1100 1106 1154 -269 268 254 246 302 613 1081 751 1118 310 1026 901 779 788 875 788 882 1137 1061 1147 -201 194 203 179 256 663 946 426 813 217 813 624 584 558 687 558 694 879 756 850 -145 136 159 125 239 552 662 195 469 145 535 363 376 339 456 339 461 561 446 520 -113 101 151 94 314 609 641 129 304 104 444 230 279 214 370 214 375 451 306 389 -64 47 92 45 397 679 620 61 114 46 313 110 130 112 203 112 249 299 124 186 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 27 22 24 25 25 26 29 28 29 47 49 47 48 47 48 47 48 49 48 -91 111 78 95 89 92 117 314 249 259 197 267 199 231 182 232 182 229 280 264 -152 173 133 153 152 165 305 721 642 479 457 590 419 493 402 495 404 548 647 628 -240 255 215 231 247 282 681 1042 1084 534 836 942 707 794 720 796 725 977 1061 1070 -305 311 279 284 324 409 954 976 1188 384 1050 1040 854 904 909 905 915 1180 1186 1234 -321 320 302 293 358 673 1140 807 1175 366 1131 1004 882 891 978 890 986 1242 1166 1252 -270 259 277 239 351 909 1291 581 1109 294 1126 864 811 774 953 774 962 1215 1046 1175 -192 183 201 169 287 574 675 244 493 193 605 445 457 423 531 423 536 628 521 590 -136 118 178 110 339 620 649 158 332 122 495 286 334 272 422 271 428 501 359 440 -30 28 31 26 43 54 51 30 36 29 61 52 55 52 59 52 59 61 54 57 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -26 27 23 25 25 26 27 30 28 30 48 50 48 49 48 49 48 49 50 49 -94 115 80 98 92 95 121 482 366 385 225 348 229 287 196 287 196 282 371 344 -205 230 179 204 204 221 457 1228 1083 786 699 940 630 765 599 768 601 863 1041 1007 -286 301 255 273 294 331 851 1326 1380 660 1046 1184 879 992 895 994 901 1229 1339 1350 -324 330 296 302 343 435 1144 1172 1445 403 1225 1212 975 1039 1046 1041 1053 1391 1398 1460 -314 313 295 287 350 718 1272 875 1313 357 1218 1068 925 935 1039 935 1047 1348 1257 1359 -278 270 275 249 341 1010 1460 608 1245 297 1218 913 852 809 1018 809 1029 1321 1124 1274 -209 194 239 180 376 1024 1239 278 845 208 930 583 611 534 773 534 783 980 750 897 -91 83 114 77 215 388 405 103 207 85 308 180 210 171 264 171 267 311 225 274 -50 42 63 39 212 346 315 48 77 42 186 85 98 86 136 86 156 179 93 126 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -74 128 63 104 71 72 80 795 468 734 122 409 174 304 105 280 105 204 423 350 -169 200 145 176 165 171 206 1172 868 921 466 788 476 629 382 631 383 615 845 776 -220 248 192 221 220 237 478 1269 1119 819 744 992 675 813 642 816 644 913 1095 1060 -294 310 263 281 302 340 863 1344 1397 672 1073 1213 904 1019 921 1021 927 1257 1368 1380 -336 342 306 312 355 447 1161 1188 1463 414 1257 1244 1005 1069 1077 1072 1083 1424 1430 1493 -337 335 316 308 373 776 1380 944 1423 381 1323 1159 1004 1014 1128 1014 1138 1465 1366 1476 -309 300 307 276 379 1014 1438 628 1229 330 1253 961 903 862 1062 861 1072 1350 1162 1305 -237 219 275 203 438 1230 1489 313 1005 235 1106 683 718 624 916 623 928 1167 885 1065 -169 142 261 135 583 1170 1224 197 532 148 804 367 473 327 657 326 668 816 522 690 -87 62 129 60 497 830 750 82 149 60 406 150 181 153 277 153 330 388 168 251 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -77 133 65 108 73 74 83 796 468 738 128 417 182 312 109 290 109 210 430 356 -151 186 128 161 146 151 192 1109 817 871 431 739 442 587 354 589 354 573 793 726 -233 261 203 233 232 250 505 1362 1199 879 799 1068 725 875 690 878 692 981 1178 1140 -296 312 265 283 304 341 857 1334 1386 671 1076 1215 910 1023 926 1026 932 1259 1369 1380 -336 342 306 312 355 446 1150 1176 1447 413 1255 1242 1007 1070 1078 1072 1084 1419 1426 1487 -180 179 172 165 205 361 580 418 594 210 604 541 484 488 530 488 534 658 620 662 -131 127 130 117 158 218 260 181 236 139 330 297 291 287 308 286 310 341 320 336 -167 156 190 145 294 734 879 220 602 166 690 449 470 416 582 416 589 724 563 665 -83 79 86 73 120 164 168 89 120 81 190 157 164 156 178 156 179 191 168 181 -41 40 42 36 65 85 79 41 50 41 85 69 74 69 80 69 81 84 72 78 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 17 15 16 17 17 17 17 17 18 31 31 31 31 31 31 31 31 31 31 -44 45 38 41 43 44 46 50 48 49 82 85 82 83 82 83 82 83 85 84 -105 115 92 104 104 112 134 170 162 149 226 241 222 230 220 230 220 236 248 246 -170 182 152 165 175 203 353 489 504 304 478 520 429 462 434 463 435 533 567 570 -118 121 110 112 126 144 171 171 182 142 269 268 255 259 259 259 260 279 279 282 -191 189 178 174 211 314 454 347 461 215 526 484 448 450 477 450 480 561 535 563 -151 147 150 136 185 278 344 219 306 160 401 351 343 336 368 336 370 417 385 409 -136 128 152 119 229 521 617 178 429 136 506 343 358 322 433 322 438 529 420 489 -126 112 171 104 344 640 663 142 314 115 485 263 317 244 411 244 416 490 340 425 -50 43 64 40 212 342 308 48 75 43 186 84 98 85 138 85 157 178 92 126 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -69 111 57 88 64 65 75 471 287 442 119 281 151 222 107 213 106 166 288 246 -149 190 126 163 143 149 194 783 589 631 392 596 400 496 345 497 345 485 632 587 -206 240 179 213 204 225 385 852 759 588 612 766 572 656 551 657 552 715 828 806 -237 251 212 229 244 279 507 718 740 431 693 757 618 669 625 670 628 777 828 833 -197 202 181 185 211 278 485 492 581 267 592 587 508 529 532 530 534 648 650 672 -238 237 230 217 276 486 768 555 784 283 817 732 657 661 719 661 723 887 836 892 -181 176 181 162 227 419 550 297 478 192 561 465 448 434 499 434 502 592 529 576 -130 125 133 115 176 262 293 158 230 130 327 272 277 266 302 266 304 335 297 321 -114 113 114 103 182 275 281 120 179 116 273 209 223 208 250 207 252 274 229 254 -57 58 55 52 104 143 132 57 68 61 123 93 101 94 113 93 115 121 98 109 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -65 109 55 87 62 63 71 515 307 483 114 296 151 230 98 221 98 166 303 256 -110 136 93 116 107 110 139 596 445 480 276 433 283 356 240 357 240 347 460 425 -55 56 49 51 55 56 59 61 60 60 104 106 104 105 104 105 104 105 107 106 -98 101 88 93 100 107 121 130 131 117 205 209 200 203 200 203 200 210 213 214 -63 63 57 58 64 66 69 68 69 66 121 121 120 120 120 120 120 122 122 122 -191 190 182 174 219 404 658 465 671 224 678 603 537 540 591 540 595 740 694 744 -275 267 273 246 337 892 1249 536 1058 292 1113 857 812 773 949 773 958 1195 1029 1153 -222 206 259 191 405 1033 1228 287 825 220 965 619 653 575 813 574 823 1011 781 926 -152 131 228 124 487 936 966 171 422 136 670 328 414 295 558 294 566 676 446 576 -57 48 73 45 192 295 266 54 82 48 186 97 114 99 149 99 162 179 107 137 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -58 94 48 74 55 55 63 382 232 361 97 228 124 181 86 176 85 135 233 199 -139 176 118 151 134 140 178 745 557 602 363 560 372 464 319 465 319 452 593 549 -194 219 169 195 193 208 373 932 821 625 609 787 563 661 539 663 541 727 857 832 -260 274 232 249 267 301 673 1023 1058 545 886 989 765 848 776 850 780 1019 1101 1108 -230 236 212 216 247 330 742 755 921 308 847 839 694 733 738 734 742 949 953 991 -136 135 130 124 157 261 397 291 403 160 426 384 348 350 378 350 380 460 435 462 -177 171 179 157 226 506 689 324 587 189 646 511 489 469 560 469 565 689 601 667 -113 107 121 98 174 323 372 143 268 112 342 254 263 243 303 243 306 354 294 332 -100 90 127 84 235 409 418 110 212 93 333 200 234 190 289 190 293 336 245 296 -81 61 119 58 407 656 583 74 129 59 345 135 169 139 251 139 288 328 153 224 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -54 77 45 61 51 52 59 191 129 183 92 147 103 127 88 125 87 108 149 134 -110 136 94 117 106 110 138 356 281 300 244 324 248 285 229 285 229 279 337 319 -164 187 144 166 164 176 277 575 514 409 448 547 423 477 410 478 411 513 586 571 -180 192 161 174 185 214 401 575 592 340 547 600 485 528 491 528 493 615 657 661 -162 166 149 152 174 231 405 410 485 221 493 489 423 440 443 440 445 541 542 560 -267 266 258 244 310 584 958 669 975 315 1000 888 791 795 872 795 878 1091 1023 1096 -306 297 303 273 373 888 1213 548 1030 324 1138 897 857 821 986 821 994 1213 1057 1173 -234 215 280 199 433 1039 1224 308 821 230 1001 657 693 615 851 615 861 1045 815 960 -178 152 281 144 609 1171 1200 200 506 156 830 396 508 351 690 350 700 836 544 708 -93 68 138 65 442 703 624 84 146 65 384 157 196 161 286 161 324 366 178 256 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -36 38 31 34 35 35 37 42 40 43 66 69 67 68 66 68 66 67 69 69 -79 88 68 79 76 79 89 115 106 109 157 170 158 164 155 164 155 163 172 169 -36 36 32 34 37 37 37 37 37 38 67 68 67 68 67 68 67 68 68 68 -38 38 35 35 39 39 40 39 39 40 72 72 71 71 71 71 71 72 72 72 -43 43 39 40 44 45 45 45 45 45 81 81 81 81 81 81 81 82 82 82 -104 104 98 96 113 127 140 129 139 114 225 220 215 215 219 215 219 230 226 230 -96 94 93 87 108 125 135 113 127 101 209 199 197 196 203 196 203 212 205 210 -80 76 79 71 93 108 113 88 101 80 170 159 160 157 165 157 166 172 164 169 -63 58 64 54 79 93 94 66 77 60 133 119 123 119 128 119 129 133 124 129 -48 45 50 41 74 94 88 46 56 46 99 80 86 81 94 81 95 98 84 91 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -47 68 38 53 45 45 51 177 116 170 76 128 87 109 71 108 71 91 130 116 -100 126 85 107 97 100 126 414 315 343 235 338 241 288 215 289 215 281 355 332 -121 139 105 123 120 130 197 385 345 281 309 373 294 328 285 329 286 351 398 388 -134 143 121 131 138 155 194 226 229 184 313 325 299 309 301 309 301 329 338 339 -138 142 129 131 148 175 217 217 236 172 333 331 311 317 317 317 318 347 347 353 -134 134 129 122 156 259 392 286 396 158 425 383 348 349 377 349 380 458 432 460 -131 126 131 117 158 207 240 174 218 138 323 294 290 285 305 285 306 332 313 327 -72 69 70 64 82 92 95 78 87 72 149 141 142 140 145 140 145 150 144 148 -51 48 50 44 59 66 66 52 58 49 102 95 97 95 100 95 100 102 97 100 -20 19 19 17 23 24 24 20 21 19 38 36 37 36 38 36 38 38 37 37 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 12 5 7 5 5 6 41 19 46 7 20 8 14 7 11 7 8 19 14 -77 136 64 107 72 73 83 564 333 538 144 344 189 273 121 270 119 201 350 298 -162 206 137 179 156 162 202 1018 744 824 465 749 482 614 404 616 404 591 793 730 -228 257 200 229 228 244 435 1143 999 767 756 980 702 825 671 827 672 902 1066 1033 -249 263 222 238 255 287 616 929 958 507 838 931 731 806 741 807 744 956 1030 1036 -199 204 183 186 214 283 572 579 698 266 681 674 571 598 602 599 605 755 757 785 -180 179 173 164 208 361 560 400 566 211 606 543 491 493 536 493 539 655 617 657 -223 214 227 198 285 694 945 414 793 237 887 692 664 633 766 633 772 945 819 912 -236 219 282 204 439 1060 1239 296 815 232 1013 660 701 619 862 619 872 1055 820 966 -179 154 287 145 617 1164 1180 197 488 158 832 401 517 357 696 356 706 836 545 708 -100 75 161 72 589 941 823 90 159 72 477 162 218 168 345 167 397 450 189 298 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 3 0 1 0 0 0 16 6 19 0 6 1 3 0 2 0 0 6 3 -108 192 91 155 102 103 115 808 474 773 216 506 284 405 181 402 178 300 515 439 -200 258 168 225 190 199 251 1122 826 916 563 869 581 724 499 726 499 698 917 849 -254 298 220 264 250 276 454 1020 902 717 774 962 730 832 704 834 705 896 1034 1006 -197 207 177 189 202 228 349 465 475 313 512 549 472 500 476 501 477 559 588 590 -213 215 194 197 223 286 455 457 535 275 590 585 519 536 539 537 541 637 639 657 -202 200 190 184 225 336 478 361 480 227 570 524 488 489 519 489 522 606 577 607 -194 190 190 175 237 393 497 282 430 201 545 464 453 441 495 440 498 569 516 555 -171 168 175 155 242 400 450 201 332 173 465 370 381 360 424 359 426 476 412 452 -129 128 133 118 215 325 327 133 200 131 332 252 272 252 305 252 307 332 277 307 -63 63 64 59 97 123 114 62 71 65 153 129 137 130 147 130 147 151 134 142 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -27 28 24 26 27 27 28 29 29 30 50 51 51 51 50 51 50 51 51 51 -51 53 45 48 50 51 53 58 56 57 96 99 96 97 96 97 96 97 99 98 -70 72 62 66 70 72 77 82 81 80 136 139 135 137 135 137 135 138 140 140 -83 85 75 78 85 88 94 98 98 93 165 167 163 165 163 165 163 168 169 169 -90 91 83 84 94 99 107 106 108 99 183 183 179 180 180 180 180 186 186 187 -51 51 47 47 53 54 55 53 54 53 97 97 97 97 97 97 97 98 97 98 -101 98 97 91 114 131 141 118 133 105 219 208 207 205 212 205 213 222 215 220 -124 117 130 108 166 229 248 147 199 123 307 262 268 258 287 258 289 311 282 300 -60 56 60 52 72 83 83 62 71 57 123 113 116 113 120 113 120 123 116 120 -29 27 29 25 35 39 38 28 31 27 56 51 53 52 55 52 55 56 53 54 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 12 5 8 6 6 7 25 14 28 9 17 10 14 9 12 9 10 16 13 -61 89 50 71 57 58 66 210 140 205 106 168 120 146 101 146 101 124 169 153 -152 197 128 170 145 151 191 707 528 587 400 585 412 498 364 499 365 481 613 572 -222 252 194 225 221 236 354 718 639 523 604 725 576 642 559 642 559 682 771 753 -265 281 237 256 272 310 545 770 789 473 789 858 711 766 718 767 721 876 931 935 -396 399 359 366 414 488 965 971 1161 458 1212 1200 1039 1082 1089 1083 1093 1324 1327 1370 -340 338 331 311 396 692 1068 756 1074 398 1196 1073 976 978 1062 978 1069 1289 1214 1292 -309 296 319 273 399 961 1292 561 1078 329 1249 979 944 901 1085 901 1093 1326 1151 1279 -251 228 304 212 455 944 1081 323 727 243 971 675 713 643 847 643 855 1004 806 929 -184 157 284 148 575 1036 1038 199 446 161 782 409 512 376 667 375 675 783 531 671 -109 80 169 77 500 768 667 96 162 77 440 181 239 187 345 187 378 417 210 301 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16 45 12 21 14 14 15 154 64 175 18 73 24 50 18 37 18 20 68 48 -113 211 95 169 106 107 119 855 494 824 235 546 310 439 197 441 192 326 553 472 -192 250 163 219 184 191 236 1185 859 969 571 905 595 749 505 751 506 717 954 879 -268 300 235 268 267 285 487 1289 1122 876 894 1147 837 975 800 977 802 1057 1242 1204 -355 369 317 336 363 396 867 1325 1364 714 1228 1362 1076 1183 1089 1186 1094 1398 1503 1512 -409 412 371 378 427 513 1151 1158 1410 471 1406 1390 1180 1235 1245 1237 1251 1554 1557 1614 -409 406 379 373 442 831 1357 918 1365 443 1466 1303 1175 1178 1290 1177 1299 1588 1488 1591 -342 332 335 305 407 1030 1386 579 1153 357 1330 1042 1006 958 1157 958 1165 1411 1225 1361 -271 252 332 234 516 1204 1386 332 895 266 1167 767 820 725 1002 725 1012 1211 944 1109 -197 168 320 159 668 1222 1220 212 499 172 896 447 573 406 759 405 769 896 593 761 -116 86 192 83 652 1015 874 102 175 82 535 185 261 192 405 191 452 503 220 344 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 27 11 17 13 13 14 61 31 69 18 38 21 31 18 27 18 20 36 29 -75 118 61 93 69 70 80 315 199 307 141 241 164 206 132 206 130 170 244 217 -123 156 105 134 119 123 153 388 303 333 281 370 287 328 266 328 266 319 383 362 -244 274 213 245 243 259 429 1085 947 748 782 990 735 848 704 850 706 915 1068 1036 -330 345 295 314 338 371 728 1073 1102 614 1048 1151 933 1014 942 1016 946 1178 1259 1265 -377 381 343 349 395 472 943 946 1136 439 1189 1176 1018 1059 1067 1061 1072 1301 1302 1346 -261 259 254 238 304 517 780 556 782 305 888 799 731 733 793 733 798 954 899 955 -213 206 217 190 271 533 691 339 582 223 718 586 570 549 638 549 643 754 668 731 -238 218 294 203 448 966 1103 300 723 231 971 659 702 628 842 627 851 1004 795 924 -141 124 195 116 357 601 598 150 286 127 499 299 355 286 437 286 442 498 362 437 -91 73 131 69 365 548 474 82 126 72 332 151 195 155 269 155 290 315 172 236 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 70 17 31 20 20 20 229 92 263 23 108 33 75 23 56 23 27 101 70 -121 233 102 186 113 114 127 920 527 892 260 597 343 482 220 484 214 360 604 515 -202 265 171 233 193 200 247 1180 855 973 598 929 623 775 536 778 536 741 976 902 -285 318 249 285 284 302 497 1287 1120 886 929 1179 874 1010 837 1012 839 1089 1271 1233 -357 371 319 338 365 398 816 1225 1258 682 1181 1302 1046 1142 1058 1144 1062 1333 1428 1435 -461 462 416 424 477 548 1090 1091 1306 510 1396 1381 1204 1250 1260 1252 1264 1520 1522 1570 -518 514 469 472 540 818 1192 868 1191 540 1427 1310 1220 1222 1303 1221 1309 1512 1441 1514 -419 408 403 376 482 1026 1328 620 1118 435 1378 1124 1096 1053 1227 1053 1234 1447 1283 1401 -285 257 356 240 539 1144 1300 360 852 274 1162 793 845 757 1011 756 1021 1200 953 1105 -210 177 324 168 637 1116 1106 224 480 181 871 474 587 446 751 445 760 869 600 748 -116 86 188 83 564 857 735 101 169 82 484 188 262 195 383 194 417 456 223 328 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -49 53 42 48 47 47 50 61 56 61 92 97 93 95 91 95 91 93 97 96 -45 46 40 42 45 45 46 48 48 49 84 85 84 84 83 84 83 84 85 85 -86 90 76 82 86 89 96 106 104 101 171 176 169 172 169 172 169 174 178 177 -86 88 78 81 88 92 98 101 101 96 172 174 170 172 170 172 170 175 176 176 -93 94 85 87 96 102 109 108 110 101 188 188 184 185 185 185 186 191 191 192 -93 93 87 86 99 107 113 106 112 99 192 188 186 186 188 186 188 194 192 194 -87 85 83 79 95 104 109 96 104 90 179 173 173 172 176 172 176 181 177 180 -75 72 72 67 85 93 96 80 88 75 153 146 147 145 150 145 150 154 149 152 -58 54 57 50 68 75 75 59 65 55 116 108 110 108 114 108 114 116 111 114 -35 32 36 30 44 49 47 34 38 32 69 62 65 63 68 63 68 69 64 66 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 4 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -51 56 44 50 49 49 52 64 59 64 95 101 97 99 95 99 95 97 102 100 -95 107 81 96 91 94 106 142 129 135 192 209 193 201 189 201 189 199 211 207 -95 111 82 97 94 103 154 310 275 229 243 296 231 260 224 260 224 276 316 307 -68 68 61 63 69 71 73 74 74 72 130 131 129 130 130 130 130 131 132 132 -74 74 67 68 76 78 81 80 81 78 144 144 142 142 142 142 143 145 145 145 -74 73 68 68 77 80 83 79 81 77 144 143 142 142 143 142 143 145 144 145 -134 129 138 118 175 323 409 209 344 141 427 350 342 330 382 329 384 448 397 433 -156 146 180 135 262 490 547 187 371 153 523 380 401 367 465 367 468 536 441 499 -104 95 127 88 211 326 321 108 174 97 299 203 231 201 270 200 272 298 233 268 -60 55 65 51 95 118 107 57 69 57 127 102 111 104 121 104 121 124 107 115 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -30 90 23 43 27 27 28 242 100 279 34 127 51 95 35 79 35 42 119 87 -112 211 92 165 103 104 119 682 399 668 239 481 299 399 216 400 211 312 485 420 -199 264 168 232 190 196 241 1020 743 853 566 847 589 718 519 720 519 686 886 822 -278 311 243 279 277 294 458 1114 972 786 862 1073 818 932 787 934 788 995 1149 1116 -326 352 293 320 336 386 739 1079 1106 633 1096 1200 980 1063 990 1064 994 1226 1309 1315 -391 403 363 368 423 532 900 897 1052 501 1199 1186 1051 1086 1094 1087 1098 1295 1296 1334 -202 201 196 184 234 404 609 425 606 233 700 628 576 577 625 577 629 750 706 751 -302 288 313 266 391 839 1084 493 899 317 1123 901 880 842 994 842 999 1181 1036 1140 -232 212 284 197 421 818 915 287 606 223 862 610 648 588 760 587 767 885 717 819 -211 177 313 167 577 965 946 222 434 180 800 467 565 453 701 452 708 795 570 693 -131 100 196 95 476 692 592 113 178 96 454 221 292 229 387 229 404 432 256 338 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -34 118 27 53 30 30 32 319 127 371 39 165 62 123 39 103 39 49 154 111 -116 220 95 172 106 107 122 700 408 688 249 499 312 415 228 416 222 324 502 436 -220 294 186 260 210 217 266 1145 831 959 639 956 666 812 587 814 587 774 999 927 -304 338 267 303 304 321 508 1305 1133 911 989 1242 937 1073 898 1075 900 1147 1332 1292 -408 420 364 383 417 444 847 1245 1275 721 1275 1392 1145 1238 1156 1240 1160 1421 1513 1520 -465 465 419 427 481 553 1087 1082 1296 511 1423 1407 1233 1278 1289 1279 1294 1546 1546 1594 -470 466 430 428 498 870 1345 915 1337 497 1548 1391 1279 1278 1387 1278 1395 1657 1561 1657 -389 378 376 348 453 1125 1476 599 1210 402 1481 1170 1143 1088 1302 1088 1309 1560 1359 1503 -303 281 384 261 597 1316 1482 356 927 294 1301 864 933 826 1127 825 1139 1340 1049 1226 -223 190 378 180 773 1362 1329 232 523 193 1020 520 670 494 874 493 885 1013 675 860 -138 102 246 99 772 1162 976 117 196 97 633 214 338 222 509 222 545 591 270 420 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -37 159 30 67 35 35 35 436 165 509 41 220 77 163 42 136 42 57 204 144 -137 267 114 212 127 128 142 907 518 893 305 637 390 527 278 529 270 406 641 553 -215 291 183 258 206 213 258 1205 866 1008 650 991 680 837 596 839 596 794 1036 959 -296 329 259 295 295 312 484 1207 1049 851 939 1170 892 1016 857 1019 858 1083 1252 1216 -379 392 339 358 388 417 821 1222 1252 696 1239 1357 1109 1202 1119 1204 1123 1386 1479 1486 -239 245 222 225 257 340 604 601 718 316 793 783 685 710 717 711 720 863 863 891 -375 372 348 341 407 673 1001 699 992 405 1181 1068 990 989 1067 989 1072 1258 1189 1258 -359 348 350 321 423 925 1187 526 981 371 1243 1005 986 944 1107 944 1112 1303 1148 1258 -224 204 272 190 396 727 805 274 539 215 787 570 605 552 701 552 707 806 660 748 -158 144 190 134 307 459 448 163 251 147 447 317 355 316 408 315 411 444 355 403 -108 85 158 81 370 529 450 94 141 83 357 180 239 187 310 186 321 339 208 270 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 49 19 30 23 22 24 89 46 103 32 62 40 53 32 51 32 36 60 50 -81 98 68 86 76 76 84 128 107 129 155 177 160 169 154 169 154 161 177 171 -65 68 57 62 64 65 68 76 73 75 124 128 124 126 123 126 123 126 129 128 -132 146 115 133 130 139 166 216 204 191 292 313 287 299 284 299 284 305 321 318 -151 161 136 148 155 173 215 249 252 205 358 371 343 354 344 354 345 374 385 386 -160 165 150 152 172 205 257 255 279 200 400 397 374 380 381 380 382 417 417 424 -140 139 135 129 157 186 214 186 211 155 330 318 309 309 317 309 318 339 331 339 -143 137 145 127 173 222 251 182 225 148 353 321 319 314 335 314 336 360 340 354 -141 131 162 122 230 391 429 168 296 137 434 327 344 319 392 318 395 443 371 414 -113 102 139 94 229 346 337 115 182 104 323 221 251 221 293 220 295 320 251 289 -99 86 118 81 226 302 263 91 116 86 254 169 199 173 233 173 237 245 183 213 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -42 178 34 77 39 39 40 448 169 526 48 237 94 181 49 161 49 70 220 158 -142 281 119 223 132 133 148 913 520 904 322 658 411 548 304 549 295 426 660 571 -219 299 186 267 209 216 260 1192 855 1003 662 1000 694 848 612 850 611 804 1043 966 -302 335 265 301 301 318 495 1277 1104 897 991 1240 943 1076 904 1079 906 1146 1327 1288 -417 428 373 391 426 453 875 1298 1328 744 1345 1469 1209 1307 1220 1309 1224 1499 1596 1603 -510 508 457 466 524 586 1081 1070 1270 542 1464 1447 1288 1329 1340 1330 1345 1576 1574 1619 -477 473 435 434 503 834 1243 856 1228 501 1484 1343 1248 1246 1343 1246 1350 1577 1491 1576 -428 418 409 384 487 1085 1382 599 1137 441 1465 1189 1169 1119 1310 1119 1315 1532 1353 1480 -323 299 407 278 617 1262 1400 374 879 313 1291 885 953 852 1133 852 1143 1323 1052 1215 -238 201 394 191 771 1311 1265 245 512 203 1023 549 696 543 888 541 898 1013 693 866 -150 109 268 106 754 1108 922 124 205 103 640 234 376 251 537 250 559 598 299 442 -0 0 14 0 320 421 284 0 0 0 93 0 0 0 31 0 70 63 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -47 199 38 87 43 43 44 477 180 562 56 260 111 203 57 186 57 83 242 176 -152 309 127 244 141 142 158 1003 566 997 351 725 452 604 337 605 327 468 727 628 -232 319 197 287 222 228 274 1292 922 1089 716 1085 752 920 663 923 662 870 1132 1047 -319 352 279 316 318 334 520 1368 1180 960 1063 1332 1011 1155 969 1158 971 1229 1425 1382 -415 426 371 390 424 450 832 1215 1242 715 1291 1404 1168 1257 1178 1259 1182 1431 1519 1525 -512 510 459 468 526 588 1073 1060 1258 544 1464 1446 1291 1331 1343 1332 1347 1573 1572 1616 -508 504 460 463 530 849 1241 864 1223 529 1510 1374 1284 1282 1376 1282 1382 1598 1515 1597 -430 420 411 386 488 1081 1371 593 1126 442 1465 1190 1172 1122 1311 1122 1316 1530 1352 1477 -328 304 415 283 628 1269 1403 377 877 318 1304 897 967 865 1146 865 1157 1335 1064 1227 -240 202 398 192 774 1308 1257 245 508 205 1025 554 702 553 892 552 902 1014 696 868 -152 111 273 107 758 1107 917 125 204 104 643 236 385 257 547 255 564 600 305 448 -0 0 14 0 309 404 271 0 0 0 91 0 0 0 30 0 70 62 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 212 42 96 46 46 48 485 185 572 64 274 126 218 65 206 65 95 255 188 -154 319 125 249 139 140 160 987 558 984 357 726 457 607 350 608 341 473 727 629 -242 333 206 298 231 239 287 1236 888 1049 724 1071 758 916 675 919 674 868 1114 1034 -338 371 296 334 337 354 525 1300 1126 929 1061 1308 1014 1146 975 1148 976 1212 1393 1353 -449 458 401 418 458 480 846 1214 1239 734 1328 1437 1211 1296 1220 1298 1223 1462 1547 1552 -540 537 483 492 552 599 1011 997 1165 561 1416 1401 1271 1305 1314 1305 1318 1508 1506 1544 -524 519 472 477 542 816 1151 823 1132 541 1444 1327 1251 1248 1329 1249 1335 1519 1447 1517 -421 411 403 378 479 1012 1269 568 1045 433 1383 1135 1120 1074 1245 1074 1249 1441 1280 1393 -327 303 409 282 609 1184 1300 375 821 316 1240 869 935 842 1097 841 1107 1267 1020 1168 -242 203 390 193 738 1223 1171 246 488 205 984 550 687 556 862 554 872 972 679 837 -155 112 272 109 713 1030 853 127 204 105 619 243 389 266 537 265 548 580 310 442 -53 36 76 36 364 459 323 35 49 30 186 76 90 81 126 80 164 155 80 88 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -47 164 37 79 42 41 44 347 138 410 59 208 107 169 61 165 60 84 195 147 -134 259 109 202 121 122 139 725 420 725 296 559 368 474 295 475 289 378 559 489 -227 311 193 277 217 224 270 1043 757 892 648 934 677 807 610 809 609 766 970 903 -317 350 278 315 316 333 480 1112 968 810 948 1153 910 1020 878 1021 879 1073 1223 1190 -339 365 304 332 348 397 693 981 1001 609 1080 1170 983 1053 991 1055 994 1191 1262 1267 -380 390 353 357 409 513 849 838 984 477 1170 1155 1033 1064 1073 1065 1077 1258 1256 1292 -292 288 283 265 335 552 798 555 784 328 974 879 819 817 882 817 886 1034 976 1032 -316 305 326 281 403 740 916 451 756 325 1029 852 843 811 931 811 936 1070 955 1035 -226 211 260 196 363 590 637 262 441 220 683 527 555 516 623 516 627 694 589 652 -175 157 213 147 340 497 478 176 266 160 490 350 393 354 450 353 453 486 390 441 -107 92 130 87 242 318 274 97 122 92 271 180 217 188 252 187 254 262 197 228 -33 27 38 26 98 117 89 27 32 25 79 53 59 54 69 54 75 73 54 58 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -36 69 27 43 32 31 33 113 60 131 46 86 59 75 47 75 47 53 82 69 -92 112 76 98 85 85 94 148 122 150 175 202 182 193 175 193 175 183 202 194 -150 197 126 171 143 147 180 441 340 390 353 455 363 410 340 410 339 394 468 444 -211 246 184 220 209 225 331 709 620 526 624 752 601 669 581 670 581 702 796 775 -220 237 197 216 226 260 445 627 639 395 694 751 633 677 637 678 639 764 809 812 -228 234 212 214 246 325 521 513 606 302 716 706 630 650 656 650 658 771 770 792 -221 218 213 201 252 372 504 371 494 247 644 590 558 556 592 557 595 677 644 676 -124 119 122 111 143 168 181 145 167 128 279 262 262 259 270 258 271 283 272 280 -190 184 210 170 288 451 485 214 342 189 535 424 444 417 492 416 495 542 467 512 -147 140 165 128 253 356 342 148 207 144 368 280 307 283 342 283 344 365 304 336 -93 88 101 80 174 220 192 89 103 92 203 153 172 157 192 157 193 197 161 178 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -37 105 28 54 32 32 34 202 86 238 42 127 71 105 44 105 43 58 119 92 -66 106 53 82 62 62 69 222 142 224 118 187 136 164 118 164 117 138 187 168 -112 148 93 128 106 109 135 344 263 304 258 340 267 304 248 304 247 291 350 331 -152 178 131 159 149 161 230 439 388 336 408 483 395 434 384 435 384 453 508 496 -262 282 235 256 269 307 549 788 804 482 860 934 781 839 787 840 789 951 1010 1013 -257 263 238 241 277 361 628 617 736 330 852 839 742 767 775 767 778 921 919 948 -287 284 280 261 333 573 840 570 821 325 1015 909 846 842 914 843 919 1079 1014 1076 -373 362 363 334 435 981 1232 509 996 383 1329 1073 1062 1014 1190 1013 1194 1386 1219 1335 -292 270 374 252 559 1060 1152 331 715 281 1113 780 843 758 988 758 997 1135 912 1044 -228 194 377 184 719 1181 1117 228 449 196 944 523 661 538 829 536 838 930 645 798 -146 109 268 105 705 1007 821 120 186 104 594 224 382 257 526 256 532 559 296 425 -34 504 31 10 415 527 349 640 103 899 125 286 81 216 49 204 104 95 229 108 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -62 253 49 119 54 54 57 525 197 627 77 318 165 259 87 260 78 125 296 222 -156 334 128 260 141 142 160 971 541 979 374 739 476 623 374 625 371 486 738 640 -239 336 203 303 228 235 279 1199 854 1028 726 1068 765 919 683 921 682 866 1107 1028 -339 372 298 335 339 354 526 1352 1162 966 1117 1380 1070 1210 1028 1213 1029 1276 1468 1425 -441 450 394 411 450 472 862 1260 1285 746 1389 1506 1264 1356 1274 1357 1277 1532 1624 1629 -525 522 470 479 538 607 1113 1090 1301 552 1552 1531 1371 1412 1426 1413 1431 1666 1662 1709 -529 524 476 481 547 852 1211 841 1183 545 1529 1396 1317 1313 1404 1313 1410 1608 1527 1604 -460 450 434 414 511 1085 1341 582 1093 471 1496 1232 1223 1172 1355 1172 1358 1554 1382 1501 -344 319 446 298 667 1270 1377 385 844 332 1332 931 1008 906 1183 905 1193 1358 1089 1248 -249 211 419 200 798 1308 1232 249 489 212 1047 578 733 596 920 594 930 1030 714 883 -168 123 312 119 802 1139 925 135 211 115 681 258 442 299 604 298 612 640 342 488 -62 39 99 39 430 532 365 37 55 31 221 84 105 90 154 90 198 183 89 100 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -57 196 45 99 50 50 53 381 151 455 75 246 139 205 84 205 77 110 230 178 -151 306 123 239 136 137 155 819 467 829 351 651 434 556 350 557 348 442 649 568 -222 306 188 273 212 218 261 937 680 813 621 877 651 766 590 767 589 725 906 846 -202 236 176 212 199 214 299 562 496 434 547 641 531 580 516 581 517 603 672 656 -274 296 246 269 281 322 533 740 753 477 845 911 776 826 781 827 783 926 977 981 -506 504 454 462 519 572 928 908 1058 532 1332 1317 1204 1232 1242 1233 1246 1413 1410 1444 -527 523 474 480 544 813 1128 799 1099 542 1453 1336 1268 1263 1344 1263 1349 1522 1450 1518 -284 270 298 250 369 742 917 409 741 293 1018 827 822 785 916 785 920 1060 935 1021 -279 252 373 236 555 1026 1107 324 685 263 1091 766 829 747 970 746 979 1110 892 1021 -229 193 375 183 695 1121 1053 227 432 194 921 526 658 541 815 540 823 906 639 781 -160 118 293 114 737 1037 840 129 198 111 631 246 415 287 562 285 569 593 324 455 -65 41 108 40 483 595 405 38 57 32 242 87 109 93 166 93 217 199 92 104 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 39 29 35 33 33 34 41 37 43 63 67 64 66 63 66 63 64 67 65 -101 126 83 109 93 94 104 167 136 170 195 226 203 216 194 216 194 204 226 217 -158 210 133 182 150 154 188 456 351 407 376 482 388 436 363 436 363 418 495 469 -309 341 270 307 307 323 449 1000 870 745 905 1086 875 970 845 972 846 1014 1146 1116 -358 371 320 339 366 393 695 1000 1019 608 1124 1216 1027 1099 1035 1100 1037 1237 1308 1313 -225 231 210 212 244 317 523 512 607 290 722 711 634 653 660 654 663 777 775 798 -308 304 300 280 356 627 922 612 895 346 1125 1004 936 931 1013 932 1019 1195 1121 1190 -304 289 318 267 393 821 1016 434 815 313 1124 907 902 860 1009 860 1013 1170 1028 1125 -252 228 334 213 495 897 964 290 598 238 959 679 735 663 856 662 864 976 787 898 -242 205 401 194 745 1200 1123 239 451 206 979 554 697 572 866 570 875 962 675 828 -160 118 284 114 684 953 771 128 194 110 599 248 404 288 537 286 544 564 319 439 -43 29 64 28 182 220 154 28 37 26 119 59 75 64 97 64 110 104 62 71 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 18 15 16 17 17 17 18 18 18 32 32 32 32 32 32 32 32 32 32 -31 31 27 29 30 31 31 32 31 32 56 57 57 57 56 57 56 57 57 57 -84 91 74 83 82 84 90 105 99 103 164 172 165 169 163 169 163 168 173 171 -109 115 96 106 108 112 123 139 135 132 221 230 220 224 219 224 219 226 232 231 -118 123 107 113 121 128 140 148 148 138 247 251 243 246 243 246 243 252 255 255 -112 112 103 104 116 123 132 130 134 122 230 229 225 226 226 226 226 233 233 234 -126 125 119 116 137 152 165 150 161 135 273 266 262 262 267 262 267 277 273 277 -111 107 107 100 124 138 144 123 135 113 235 225 225 223 230 223 230 238 231 235 -75 72 72 67 83 88 89 78 83 74 149 144 145 143 147 143 148 150 146 148 -51 49 49 45 56 59 58 51 54 49 98 94 96 94 97 94 97 98 95 97 -26 25 25 23 28 29 29 25 26 25 49 47 48 47 48 47 49 49 47 48 -13 11 13 10 16 17 15 11 12 11 24 21 22 22 23 21 23 23 21 22 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -46 132 35 71 40 40 42 233 98 280 54 158 95 133 62 133 55 77 148 117 -92 175 75 135 85 85 94 418 243 426 194 340 234 293 193 294 192 236 338 298 -88 118 73 101 84 86 104 286 214 254 197 268 206 237 189 237 189 225 276 259 -160 185 139 165 159 169 250 581 501 428 499 610 482 540 463 541 464 565 646 627 -322 336 288 306 329 357 661 972 990 575 1082 1175 984 1056 991 1058 994 1196 1268 1273 -360 363 328 333 378 465 869 845 1022 413 1211 1191 1057 1090 1104 1091 1108 1308 1303 1344 -409 404 378 372 439 755 1106 727 1069 433 1374 1234 1158 1151 1247 1152 1253 1453 1367 1446 -360 349 352 321 425 972 1203 467 954 368 1324 1065 1062 1010 1189 1010 1193 1377 1207 1323 -292 270 399 252 603 1127 1205 324 715 280 1174 813 889 794 1045 793 1054 1194 951 1094 -236 202 413 192 783 1268 1176 232 446 203 1013 557 714 578 895 576 904 993 684 848 -139 107 260 103 653 907 725 114 164 102 549 209 365 253 492 251 498 515 280 394 -53 33 97 32 399 486 324 31 44 27 199 67 89 73 140 73 179 163 71 82 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -81 338 65 168 71 70 74 639 234 776 105 419 233 348 136 349 109 179 389 297 -182 390 152 308 167 168 185 1044 577 1067 456 844 565 722 453 725 450 569 839 733 -260 376 222 341 249 255 298 1286 905 1116 811 1187 863 1029 772 1031 771 964 1226 1139 -349 381 306 344 349 363 522 1329 1137 965 1154 1413 1113 1249 1070 1252 1071 1307 1496 1452 -452 460 404 421 461 481 851 1232 1254 743 1420 1532 1301 1389 1310 1391 1314 1556 1644 1649 -534 531 478 488 547 619 1095 1062 1267 558 1574 1551 1402 1439 1454 1440 1460 1681 1676 1721 -511 506 462 465 531 843 1192 808 1151 528 1531 1394 1320 1313 1408 1314 1413 1607 1523 1601 -424 413 405 380 484 1068 1308 522 1042 432 1471 1198 1197 1142 1331 1142 1334 1526 1348 1469 -325 302 435 281 645 1168 1243 358 746 312 1242 877 955 859 1113 859 1122 1262 1016 1160 -245 208 414 197 759 1206 1116 239 440 209 992 565 714 586 882 585 891 972 683 836 -165 123 311 119 763 1054 839 131 192 116 649 250 435 303 582 302 589 607 334 466 -50 31 90 31 351 426 283 30 41 27 179 62 83 68 129 68 162 147 66 77 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 19 16 17 18 18 19 19 19 20 34 34 34 34 34 34 34 34 34 34 -44 46 39 42 43 43 45 48 46 49 81 84 82 83 81 83 81 82 84 83 -71 74 62 68 70 71 74 81 78 80 135 139 135 137 134 137 134 136 139 138 -92 95 82 88 92 94 100 108 105 105 181 185 180 182 179 182 180 183 187 186 -121 125 110 116 124 131 143 151 151 141 253 257 249 252 249 252 249 258 261 261 -78 78 71 72 80 82 84 83 84 82 151 150 149 150 150 149 150 151 151 152 -87 87 81 80 91 95 98 94 96 91 172 170 169 169 170 169 171 173 172 173 -63 62 58 58 66 67 68 65 66 64 121 119 119 119 120 119 120 121 120 121 -109 99 134 92 193 312 329 124 214 103 335 247 266 244 304 243 306 340 280 315 -99 87 132 81 214 310 289 97 147 88 283 190 222 194 258 194 260 278 214 248 -61 51 83 47 164 214 176 53 66 51 156 88 119 97 144 96 145 148 101 124 -25 19 35 18 95 112 78 18 22 18 62 33 40 35 51 35 58 54 34 38 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -23 23 20 22 22 22 23 24 23 25 41 42 42 42 42 42 42 42 42 42 -60 64 52 58 58 58 61 70 65 71 111 117 113 115 111 115 111 113 117 115 -88 94 77 86 86 87 93 108 102 107 171 179 172 176 170 176 170 174 180 178 -78 79 69 73 78 79 82 86 85 85 149 152 149 150 149 150 149 151 152 152 -63 63 57 59 64 65 66 66 66 66 120 120 119 120 119 120 119 120 120 120 -68 68 62 63 70 71 72 71 71 71 130 130 129 129 129 129 129 130 130 130 -87 87 81 80 91 95 98 93 96 91 172 170 169 169 170 169 171 173 172 173 -93 91 88 84 100 107 110 99 105 95 188 182 182 181 185 181 185 189 185 187 -80 76 76 71 88 94 95 82 88 78 159 152 154 152 156 152 157 159 155 157 -60 56 57 52 67 71 70 59 63 57 116 110 112 110 114 110 115 116 112 114 -23 22 22 21 25 25 25 23 24 23 44 42 43 43 43 43 43 43 43 43 -7 6 6 6 7 7 7 6 7 6 13 12 12 12 12 12 13 12 12 12 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -27 90 21 47 24 24 25 154 61 188 33 105 63 89 41 89 34 50 98 77 -50 52 43 47 48 49 50 55 53 56 92 95 93 94 92 94 92 93 95 94 -48 48 42 45 48 48 49 50 49 50 89 90 89 89 89 89 89 89 90 90 -144 167 125 149 143 152 216 469 406 355 424 511 411 457 397 457 397 475 538 523 -162 174 145 158 166 189 324 459 467 289 520 562 476 508 479 509 480 571 604 606 -116 118 107 108 125 165 273 264 316 148 362 355 316 325 330 325 331 391 389 401 -79 78 72 73 82 84 86 83 85 81 153 152 151 151 152 151 152 154 153 154 -91 88 85 82 97 103 106 96 101 92 181 177 177 176 179 176 179 182 179 181 -70 68 66 63 76 80 80 72 75 69 137 133 134 132 135 132 135 137 134 136 -53 51 51 47 58 61 61 53 56 51 102 98 100 98 101 98 101 102 99 101 -45 41 45 38 54 58 54 42 46 41 86 79 82 80 85 80 85 85 80 83 -25 19 36 18 96 112 78 19 22 19 62 33 40 35 52 35 58 54 34 38 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -93 334 74 178 81 80 84 568 216 695 132 412 253 352 168 353 139 202 385 304 -184 392 150 308 165 165 186 936 522 968 458 802 557 696 457 698 454 555 796 700 -273 387 233 350 261 267 310 1131 806 999 797 1116 844 984 766 986 765 924 1147 1072 -302 334 264 302 300 314 445 1114 951 820 1002 1219 970 1084 933 1086 934 1129 1287 1250 -361 373 323 341 369 394 647 906 920 576 1092 1170 1010 1071 1016 1072 1018 1187 1248 1251 -306 312 285 287 330 419 669 647 764 380 970 954 863 885 896 886 899 1036 1031 1060 -469 464 429 426 495 825 1171 765 1121 489 1512 1366 1295 1285 1385 1285 1391 1589 1498 1579 -400 389 386 358 466 936 1118 471 890 406 1310 1083 1087 1040 1197 1040 1200 1352 1203 1303 -173 157 213 146 294 458 477 192 316 163 530 405 433 401 486 400 489 535 450 499 -125 111 142 103 188 236 223 121 155 113 289 238 255 240 275 240 277 286 251 269 -83 70 112 65 206 263 216 72 88 69 211 130 168 141 198 141 199 201 146 172 -35 26 51 25 118 137 96 25 30 25 84 47 59 51 73 50 80 75 49 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 11 10 11 11 11 12 11 11 12 21 21 21 21 21 21 21 21 21 21 -45 46 39 42 44 44 45 48 47 49 82 84 83 84 82 84 82 83 84 84 -35 35 31 32 35 35 36 35 35 36 65 65 65 65 65 65 65 65 65 65 -59 59 53 55 59 60 61 62 61 62 111 111 111 111 110 111 110 111 112 112 -109 112 99 103 112 116 124 128 128 122 221 224 218 220 219 220 219 224 226 226 -89 89 81 82 91 94 97 96 97 93 173 173 171 172 172 172 172 174 174 175 -91 90 84 84 95 99 102 98 100 95 180 178 177 177 178 177 178 181 180 181 -152 144 154 134 182 222 240 179 214 154 362 333 334 328 348 328 349 367 348 361 -135 124 143 115 174 213 217 144 178 128 314 278 286 277 301 277 302 315 291 305 -109 97 119 91 151 180 172 106 129 98 240 206 218 208 231 208 232 238 215 227 -32 30 31 28 35 37 36 31 32 30 60 57 59 58 60 58 60 60 58 59 -24 20 26 19 33 35 30 20 22 20 43 37 41 38 43 38 43 42 38 40 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -24 24 21 22 23 23 24 25 24 26 43 44 44 44 44 44 44 44 44 44 -50 52 44 48 49 49 51 55 53 56 93 96 94 95 93 95 93 94 96 95 -44 44 39 41 44 45 45 46 45 46 82 83 82 82 82 82 82 82 83 83 -147 175 126 156 144 155 214 408 357 321 404 474 394 431 383 431 383 445 496 484 -89 90 80 83 91 93 96 98 98 96 174 175 172 173 172 173 172 175 176 176 -181 186 171 172 195 230 280 273 298 220 456 452 429 434 437 434 438 472 471 478 -180 177 178 165 208 260 305 249 295 199 465 439 427 425 443 425 444 478 462 476 -172 162 180 151 215 280 310 211 269 174 442 397 398 389 420 389 421 450 420 440 -96 91 94 85 109 120 121 99 109 93 198 186 189 186 194 186 194 198 190 195 -66 62 64 58 75 81 79 65 70 63 130 122 125 123 128 123 128 129 124 127 -104 97 124 91 189 230 194 97 108 99 275 218 245 226 265 226 266 267 229 247 -26 22 28 20 36 39 33 22 24 22 47 40 44 41 46 41 46 45 41 43 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -61 149 46 91 52 52 54 221 102 268 86 182 127 161 98 161 89 108 172 144 -95 155 75 124 85 85 95 274 177 285 185 269 209 243 185 243 185 208 267 244 -114 157 94 136 107 110 134 333 252 303 269 351 281 317 261 317 260 300 359 339 -141 163 122 146 139 147 207 454 391 346 419 503 407 451 393 452 393 467 529 514 -235 252 210 230 241 272 454 637 647 408 766 824 706 751 710 751 712 835 881 883 -216 221 203 203 235 310 474 456 538 281 694 682 619 634 642 634 644 741 737 757 -302 297 287 274 337 613 886 552 840 325 1125 1001 944 935 1020 936 1025 1188 1110 1179 -596 593 533 543 621 1094 1259 607 1031 606 1592 1383 1390 1345 1491 1344 1493 1630 1492 1583 -329 305 473 285 698 1235 1283 352 729 314 1314 923 1019 912 1186 911 1196 1331 1066 1217 -255 216 433 205 752 1136 1025 242 407 216 974 579 727 606 880 605 888 950 683 822 -173 130 343 126 801 1070 827 135 184 123 677 261 468 331 614 330 621 627 350 482 -54 35 96 34 271 316 207 33 42 32 156 65 90 71 127 70 146 132 68 79 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 66 7 18 8 7 8 61 10 93 9 37 15 31 10 22 10 10 30 18 -111 447 88 236 96 94 99 725 259 899 164 537 332 461 218 462 177 260 499 393 -211 466 175 370 192 193 211 1082 590 1132 548 953 669 832 550 833 546 661 943 830 -292 429 250 391 280 285 326 1293 903 1149 910 1287 969 1134 876 1136 874 1058 1321 1231 -395 423 348 384 395 408 537 1310 1119 984 1255 1503 1222 1352 1179 1354 1179 1397 1578 1534 -536 536 478 491 546 553 866 1199 1216 774 1523 1621 1423 1499 1430 1500 1433 1640 1715 1719 -665 656 588 602 669 705 1082 1039 1203 650 1664 1644 1535 1561 1575 1561 1579 1743 1736 1771 -635 631 558 578 634 928 1224 847 1168 639 1687 1562 1505 1496 1583 1496 1588 1750 1672 1740 -491 482 465 443 558 1148 1357 536 1064 499 1618 1341 1352 1292 1486 1291 1489 1667 1484 1605 -377 352 534 329 779 1356 1402 399 800 362 1460 1039 1143 1027 1323 1026 1334 1477 1191 1355 -269 229 504 218 910 1401 1254 254 449 229 1152 646 838 683 1033 681 1043 1120 779 956 -172 131 361 127 861 1150 882 135 182 124 712 259 486 338 645 336 652 657 357 500 -73 45 143 44 421 491 316 41 55 38 231 86 125 94 184 94 215 191 90 107 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 49 5 14 6 6 6 45 8 68 8 28 12 24 8 18 8 8 23 14 -34 36 29 33 33 33 33 37 35 38 62 64 63 63 62 63 62 62 64 63 -113 219 91 173 102 102 113 447 259 469 254 411 301 364 255 364 254 297 406 362 -241 346 204 311 229 234 272 924 658 829 693 951 734 847 670 848 669 793 974 912 -290 323 253 291 288 301 397 868 748 668 863 1020 842 924 815 925 815 953 1067 1039 -356 368 318 337 364 388 601 820 831 543 1038 1106 969 1021 974 1022 976 1119 1171 1174 -319 325 297 299 344 433 671 644 758 391 1000 983 896 917 929 918 932 1063 1057 1086 -202 198 202 184 237 313 380 295 365 224 558 520 504 501 527 501 529 577 553 574 -128 123 125 115 145 164 172 142 159 130 279 265 265 262 272 262 272 281 272 278 -96 91 94 85 109 119 120 99 108 93 196 186 188 185 193 185 193 197 189 193 -69 64 67 60 78 84 82 67 73 65 135 127 130 127 133 127 133 134 129 132 -39 36 38 34 44 46 44 37 39 36 74 70 72 70 73 70 73 73 70 72 -13 12 12 11 15 15 14 12 13 12 24 23 23 23 24 23 24 24 23 23 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 -39 42 34 38 38 37 38 44 41 46 71 74 72 74 71 74 71 72 74 73 -53 56 47 51 52 52 54 58 56 60 99 102 100 101 99 101 99 100 102 101 -124 141 106 128 118 121 135 177 160 173 253 275 256 266 251 266 251 261 277 271 -99 103 88 95 99 102 107 115 113 113 196 200 195 197 194 197 194 198 201 201 -169 180 153 166 173 190 225 252 253 218 396 407 384 393 384 393 385 410 419 419 -146 151 138 138 161 214 329 315 372 192 472 463 419 429 435 429 437 504 501 516 -160 156 161 144 193 303 404 275 382 180 526 473 451 447 482 447 485 551 518 547 -170 160 187 148 235 394 457 222 362 171 551 456 461 441 506 441 508 566 504 545 -221 199 301 186 424 684 701 240 427 205 766 564 615 560 701 559 706 773 635 713 -266 225 471 214 816 1222 1089 249 415 225 1045 615 780 648 945 646 953 1016 726 875 -198 146 403 143 908 1197 914 151 205 137 773 304 541 388 705 386 712 713 403 550 -110 96 206 92 680 783 505 95 99 94 367 157 198 158 288 158 344 305 157 171 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 103 10 31 12 11 12 93 15 142 14 58 25 50 15 38 15 15 48 29 -121 480 96 258 103 102 107 739 262 924 189 571 363 494 247 496 206 286 530 422 -220 490 182 389 199 199 218 1082 587 1142 575 982 699 862 579 863 575 687 969 856 -301 444 258 406 289 294 334 1283 893 1151 938 1311 999 1162 906 1164 904 1083 1343 1253 -409 436 360 396 410 421 539 1293 1103 983 1281 1524 1252 1377 1209 1379 1209 1419 1594 1551 -558 556 498 509 568 571 863 1178 1192 777 1543 1634 1450 1520 1456 1521 1459 1651 1722 1725 -704 692 619 635 704 729 1071 1026 1176 676 1681 1662 1567 1589 1603 1590 1606 1750 1743 1774 -661 658 577 603 655 933 1201 839 1142 663 1695 1578 1529 1518 1600 1518 1604 1751 1678 1741 -507 498 483 458 581 1145 1336 536 1043 515 1629 1360 1375 1315 1504 1315 1508 1675 1496 1613 -380 354 546 331 789 1346 1377 399 776 364 1461 1046 1155 1039 1331 1037 1341 1477 1193 1354 -293 248 543 237 950 1426 1265 274 461 247 1205 696 893 736 1089 734 1098 1170 826 1003 -207 152 418 148 926 1213 924 156 212 142 794 320 561 405 726 403 733 733 419 567 -114 98 217 94 685 786 505 97 101 96 373 160 206 161 297 161 351 311 161 176 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 128 12 40 14 14 14 115 17 176 17 72 31 62 18 48 18 18 59 36 -123 488 98 264 105 104 109 739 262 927 197 579 371 503 254 504 215 293 538 429 -225 517 184 408 201 201 222 1124 606 1190 598 1024 729 899 603 899 599 714 1010 891 -342 488 294 446 329 335 376 1318 928 1189 1014 1386 1076 1238 983 1240 981 1157 1417 1327 -350 381 307 345 349 361 476 1185 1005 895 1155 1384 1127 1246 1086 1248 1087 1284 1451 1410 -439 448 393 410 448 467 770 1093 1107 685 1386 1482 1288 1363 1295 1364 1298 1500 1575 1578 -414 415 376 381 431 523 908 860 1040 456 1374 1348 1224 1253 1271 1254 1276 1465 1455 1496 -896 897 737 820 818 897 990 843 962 859 1574 1555 1546 1544 1558 1543 1559 1582 1571 1581 -403 392 402 361 490 930 1082 447 842 408 1321 1098 1112 1062 1218 1062 1222 1357 1210 1306 -291 261 426 245 610 1017 1037 313 596 268 1119 803 886 798 1020 797 1028 1129 913 1035 -254 216 464 206 801 1191 1054 237 391 216 1016 595 759 629 920 627 928 986 702 847 -218 160 453 156 1004 1312 993 164 221 148 855 339 603 433 781 431 789 787 446 607 -132 74 288 75 797 916 574 65 91 58 428 145 234 159 349 159 401 350 152 188 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -24 150 14 47 15 15 15 134 19 206 18 84 36 72 20 57 19 19 68 41 -121 458 95 252 103 101 107 679 244 853 196 543 355 474 248 476 214 282 506 406 -182 403 148 318 163 163 180 840 460 892 465 778 561 686 469 687 466 549 767 679 -213 311 180 279 202 207 240 791 560 717 613 834 650 746 594 747 593 697 852 798 -463 480 410 437 467 474 558 1133 986 903 1239 1424 1218 1313 1184 1315 1185 1343 1477 1444 -421 430 376 393 430 448 692 951 962 626 1238 1316 1159 1219 1165 1220 1167 1330 1391 1394 -481 479 432 440 495 563 874 831 976 508 1350 1329 1231 1254 1269 1255 1272 1422 1414 1447 -488 483 443 443 510 800 1065 700 1003 503 1465 1337 1286 1275 1363 1275 1368 1524 1444 1512 -442 431 434 397 527 972 1122 477 877 447 1391 1168 1182 1133 1289 1132 1293 1428 1279 1376 -339 314 490 294 702 1173 1192 356 672 323 1284 925 1021 920 1174 919 1182 1296 1050 1189 -249 211 444 201 755 1109 979 231 372 211 960 573 725 605 873 603 880 931 670 804 -138 106 228 101 440 559 433 108 138 102 417 218 318 252 388 252 391 389 257 318 -61 42 102 40 225 255 168 39 47 38 151 76 104 82 134 82 144 131 79 91 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 52 9 22 11 10 11 47 13 70 14 35 20 31 14 27 14 14 30 21 -67 135 49 91 55 55 58 175 92 214 95 164 125 150 103 149 99 110 156 135 -90 102 76 92 84 84 90 115 103 119 170 185 175 180 170 180 170 174 184 180 -95 102 83 93 93 94 100 114 108 114 185 193 186 190 184 190 184 188 194 192 -95 98 85 91 95 97 102 108 106 106 186 190 186 188 185 188 185 188 191 190 -89 89 80 83 90 92 95 96 96 94 172 173 171 171 171 171 171 173 174 174 -84 84 76 77 86 88 90 88 89 87 161 161 160 160 161 160 161 162 162 162 -73 72 66 67 75 76 77 75 76 75 139 138 138 138 138 138 138 139 139 139 -67 66 62 61 70 72 72 69 70 68 128 127 127 127 128 127 128 129 128 128 -84 80 80 75 92 97 97 85 90 82 166 159 161 159 163 159 164 166 161 164 -97 88 101 82 122 137 131 93 107 88 201 181 189 183 197 182 197 200 186 193 -39 37 38 34 44 45 44 37 39 37 73 70 72 70 73 70 73 73 70 72 -32 27 35 25 44 46 39 27 29 27 58 50 55 52 57 52 58 56 51 53 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 -20 20 17 18 20 19 20 20 20 20 36 36 36 36 36 36 36 36 36 36 -45 46 40 43 45 45 46 48 47 49 84 85 84 85 84 85 84 84 85 85 -91 96 80 88 89 90 95 107 102 107 176 183 177 180 175 180 175 178 183 181 -149 163 131 149 147 154 174 211 200 196 322 340 320 329 317 329 317 332 345 341 -207 225 187 206 212 240 309 371 373 296 542 566 519 537 520 537 521 570 589 589 -226 232 214 213 248 324 480 457 538 291 732 718 658 672 681 672 683 776 771 792 -167 164 163 152 187 217 240 207 232 179 393 377 371 369 380 369 381 400 390 398 -142 135 141 126 163 187 195 158 178 142 316 297 298 294 307 294 307 318 306 314 -153 139 167 129 204 252 253 160 200 142 364 318 330 318 349 317 350 364 333 351 -92 83 94 78 112 124 119 88 99 83 187 170 176 171 183 171 183 185 174 180 -43 40 42 37 49 51 48 40 43 40 81 76 79 77 80 77 80 80 77 78 -16 15 15 14 18 18 17 14 15 14 29 27 28 28 29 28 29 29 28 28 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 -36 38 31 35 35 35 36 39 37 40 66 68 66 67 66 67 66 66 68 67 -38 38 33 35 37 37 38 39 38 39 69 70 69 70 69 70 69 69 70 70 -32 32 29 29 32 32 32 32 32 32 59 59 59 59 59 59 59 59 59 59 -32 32 29 30 33 33 33 32 32 33 60 60 60 60 60 60 60 60 60 60 -42 42 38 39 43 43 43 42 42 43 78 78 78 78 78 78 78 78 78 78 -155 156 144 145 163 178 196 192 201 173 342 339 331 333 334 333 334 348 347 350 -154 151 148 140 169 190 206 182 199 163 344 333 329 328 335 328 336 349 342 348 -145 138 144 128 167 192 201 161 183 145 324 304 306 301 315 301 315 327 314 322 -122 113 124 105 146 165 166 125 143 115 262 241 246 241 255 240 255 262 248 255 -99 89 102 83 123 138 132 94 107 89 203 183 191 185 199 184 199 202 188 195 -68 60 72 56 89 96 87 60 68 59 133 117 125 120 131 120 131 131 120 125 -25 18 43 17 101 114 73 17 19 17 56 23 36 25 49 25 53 47 24 29 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16 88 9 33 10 10 10 76 12 118 12 51 26 45 13 39 13 12 42 27 -30 31 26 28 29 29 30 31 30 32 54 55 55 55 54 55 54 54 55 55 -44 45 39 41 43 43 44 46 45 47 81 82 81 82 81 82 81 81 82 82 -131 183 107 160 121 124 149 355 267 331 315 403 330 368 308 368 307 347 409 387 -77 89 66 79 77 80 107 229 196 180 211 254 207 229 199 229 199 235 265 258 -254 273 228 249 260 292 459 630 637 420 819 875 764 806 767 807 769 884 927 929 -219 223 205 205 237 306 473 447 531 271 719 705 644 658 668 658 670 764 758 779 -163 159 166 147 199 308 399 269 373 182 537 484 465 460 496 460 498 561 527 555 -170 161 191 148 242 432 497 209 378 170 596 485 495 469 547 469 549 613 538 586 -192 172 276 161 388 616 618 202 358 177 684 500 551 499 629 499 633 688 562 632 -157 133 260 125 420 594 520 143 216 133 535 337 416 354 491 354 495 518 384 452 -152 115 290 111 593 752 564 117 147 111 520 238 383 289 480 287 485 478 291 378 -91 54 196 54 462 519 320 49 61 48 260 97 163 106 228 106 247 215 100 127 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -54 335 27 123 29 30 29 284 35 453 33 188 90 163 35 145 35 35 152 92 -144 561 114 315 123 120 126 777 270 990 263 655 440 578 316 579 291 350 609 492 -232 554 190 439 207 207 227 1110 587 1197 634 1061 771 939 643 939 639 746 1043 922 -324 480 278 438 311 315 352 1263 872 1156 1004 1369 1069 1227 975 1230 974 1139 1394 1305 -448 469 395 428 450 459 548 1261 1075 989 1350 1579 1328 1445 1285 1447 1286 1476 1641 1599 -652 637 581 585 662 649 879 1138 1147 810 1614 1688 1542 1598 1546 1599 1549 1700 1756 1758 -832 813 721 745 818 799 1057 1011 1123 761 1735 1722 1663 1677 1686 1676 1689 1779 1773 1793 -778 777 659 711 742 963 1156 850 1097 768 1736 1651 1621 1612 1671 1611 1675 1773 1719 1764 -560 554 543 509 657 1145 1294 567 1008 569 1666 1422 1444 1387 1560 1386 1566 1704 1540 1645 -405 380 592 355 833 1347 1346 417 745 389 1500 1099 1215 1099 1386 1097 1395 1512 1235 1390 -307 260 591 249 989 1427 1235 281 440 258 1240 735 941 782 1132 780 1142 1198 856 1029 -216 157 454 154 952 1211 895 159 206 147 814 345 588 431 750 429 757 744 432 577 -128 71 298 72 703 782 480 62 81 59 385 131 238 144 338 144 365 315 136 178 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -62 372 30 141 32 32 32 310 38 501 37 210 105 183 41 168 39 38 170 103 -147 569 116 321 124 122 128 778 269 993 274 663 449 586 323 588 303 357 616 499 -234 561 192 444 209 209 228 1106 585 1197 641 1067 779 947 650 947 646 753 1048 927 -327 485 280 442 313 318 354 1259 869 1155 1012 1375 1078 1235 984 1237 982 1146 1400 1310 -453 474 401 432 456 464 549 1256 1070 989 1359 1585 1338 1453 1295 1455 1296 1483 1646 1605 -669 652 596 598 680 663 883 1132 1140 816 1626 1696 1556 1610 1561 1611 1563 1707 1761 1763 -541 537 483 493 552 616 927 875 1023 556 1479 1457 1363 1384 1400 1385 1404 1550 1540 1573 -438 433 404 398 466 743 974 623 905 455 1368 1245 1203 1190 1275 1190 1280 1421 1343 1408 -335 322 363 297 454 831 951 378 717 336 1180 970 991 942 1089 941 1094 1211 1071 1160 -256 233 375 218 527 840 837 265 471 238 933 681 754 682 861 681 866 939 765 862 -253 214 469 204 771 1099 950 230 353 213 969 587 744 623 888 621 895 936 677 808 -222 161 467 157 968 1226 903 161 209 150 829 356 602 442 765 440 772 757 440 588 -155 83 376 85 867 959 585 71 95 67 471 154 295 170 419 170 447 384 160 214 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -70 400 33 158 35 35 34 327 41 537 40 228 118 199 47 188 42 42 185 113 -154 583 121 332 130 127 134 784 273 1003 292 680 465 603 339 604 323 372 632 514 -237 568 194 450 211 211 230 1104 582 1197 648 1074 787 955 659 954 655 759 1055 934 -329 489 282 446 316 320 356 1254 864 1154 1019 1380 1085 1241 991 1244 989 1151 1404 1315 -457 476 403 434 459 467 549 1249 1064 987 1363 1588 1343 1458 1301 1460 1301 1486 1648 1606 -658 642 586 589 668 654 872 1122 1130 807 1615 1685 1545 1599 1550 1600 1552 1696 1750 1752 -848 828 734 759 831 808 1051 1004 1111 771 1739 1728 1674 1687 1696 1686 1698 1780 1774 1792 -797 796 671 729 754 966 1144 848 1085 785 1739 1661 1634 1626 1681 1625 1684 1773 1723 1764 -574 570 562 524 680 1142 1280 577 997 584 1674 1437 1461 1405 1573 1405 1579 1710 1551 1651 -412 386 604 361 843 1346 1336 422 736 396 1508 1112 1230 1114 1399 1113 1407 1520 1245 1398 -305 257 554 245 894 1260 1088 277 414 255 1135 702 880 743 1044 741 1052 1097 803 951 -219 158 444 154 895 1126 829 158 204 147 780 352 574 429 722 427 728 713 424 559 -160 85 390 88 860 947 577 73 98 69 473 158 308 178 430 176 451 387 164 222 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -75 404 34 166 36 36 36 323 43 539 43 233 127 205 52 199 45 44 190 118 -152 585 120 333 128 126 132 777 268 997 296 677 464 602 339 603 328 370 629 512 -237 572 194 454 212 211 231 1095 576 1191 652 1074 790 957 662 956 658 761 1054 934 -330 491 283 447 317 321 356 1245 857 1149 1022 1381 1088 1243 995 1246 993 1152 1403 1314 -456 476 403 434 459 467 545 1238 1054 982 1362 1584 1343 1456 1301 1458 1301 1483 1643 1602 -417 440 373 402 426 464 810 1188 1200 725 1561 1677 1448 1537 1455 1538 1459 1695 1785 1787 -677 667 596 611 678 709 986 934 1063 657 1606 1588 1512 1529 1543 1529 1546 1664 1655 1682 -680 677 588 620 666 900 1091 777 1027 680 1628 1534 1503 1493 1558 1492 1562 1668 1608 1657 -526 518 535 477 657 1137 1280 541 978 533 1651 1396 1423 1362 1543 1361 1550 1689 1517 1625 -420 395 594 369 818 1272 1259 428 711 404 1451 1090 1200 1093 1353 1092 1361 1462 1211 1350 -315 266 612 255 1004 1425 1221 286 433 264 1255 754 962 802 1151 800 1160 1210 870 1041 -223 160 469 156 956 1202 878 160 205 150 820 360 599 442 757 440 764 747 432 579 -148 79 360 81 766 839 510 69 89 65 424 144 285 164 394 163 405 347 149 203 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 11 10 10 11 11 11 11 11 11 20 20 20 20 20 20 20 20 20 20 -59 66 50 60 55 54 56 69 62 73 106 114 110 113 107 112 107 108 113 111 -115 137 95 123 105 105 113 160 136 167 221 247 229 239 221 239 221 227 245 238 -153 181 129 164 144 147 166 237 207 232 324 360 330 346 321 346 321 337 362 353 -180 203 157 186 175 185 218 287 267 261 414 446 412 428 406 428 406 431 454 448 -196 211 178 194 200 222 268 306 308 261 482 498 466 478 467 478 468 500 513 514 -159 160 148 149 167 182 199 194 202 176 348 346 338 340 341 340 342 355 354 357 -157 154 151 143 173 193 207 184 200 166 350 339 335 334 342 334 342 355 348 353 -185 173 213 160 269 452 510 223 385 183 633 520 532 505 585 505 588 648 572 620 -132 121 136 113 161 183 182 134 155 124 287 262 270 263 280 262 280 287 270 279 -102 91 106 85 126 140 133 96 109 91 208 188 196 190 204 190 204 206 192 199 -77 66 82 62 101 110 98 67 75 65 149 131 140 134 147 134 147 146 134 139 -55 40 85 38 145 156 106 38 42 38 112 68 92 73 108 73 109 100 69 79 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 264 28 119 30 29 30 208 36 349 36 160 95 142 45 142 38 37 132 86 -155 593 122 341 131 128 134 768 261 991 310 684 474 610 349 611 344 379 635 518 -239 579 196 460 214 213 232 1077 565 1178 658 1075 797 960 670 960 666 765 1054 935 -332 496 285 451 318 322 357 1228 843 1139 1028 1381 1095 1247 1002 1249 1000 1155 1402 1314 -456 476 403 434 459 467 538 1218 1036 973 1361 1579 1344 1455 1303 1457 1303 1479 1636 1595 -673 655 599 601 683 666 867 1102 1108 808 1621 1687 1557 1607 1561 1608 1563 1696 1747 1748 -853 832 736 762 835 810 1039 991 1092 775 1734 1724 1675 1686 1695 1686 1697 1772 1766 1783 -808 809 677 739 760 965 1127 839 1067 796 1737 1664 1641 1632 1684 1632 1687 1767 1721 1758 -422 409 456 378 567 984 1108 453 832 424 1420 1183 1210 1154 1321 1153 1328 1453 1293 1393 -278 254 422 238 588 925 910 285 498 259 1033 756 841 759 958 758 964 1039 847 953 -183 153 327 146 517 715 613 164 240 153 650 409 509 432 600 431 605 627 463 545 -152 113 276 108 519 639 472 112 138 108 471 243 361 282 440 281 444 433 275 348 -123 68 279 69 548 595 363 61 76 59 321 123 231 142 307 141 308 267 127 169 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -62 245 31 117 33 33 33 192 40 321 43 156 98 140 54 140 46 45 131 89 -103 240 76 160 84 82 86 289 136 364 174 294 226 270 186 270 185 195 278 240 -127 213 99 175 111 110 122 321 206 347 261 361 293 333 264 333 263 286 356 326 -162 235 135 208 152 154 180 476 344 448 426 551 449 503 417 504 416 470 558 527 -399 425 351 387 399 409 478 1064 905 853 1193 1385 1179 1276 1142 1277 1142 1296 1434 1397 -226 243 202 222 231 258 406 565 568 375 757 808 708 747 711 747 712 815 855 856 -143 144 132 134 150 159 170 166 172 156 302 300 295 296 297 296 297 306 305 307 -142 140 135 130 153 166 175 160 170 148 303 295 293 292 297 292 298 306 301 305 -197 183 212 171 253 326 349 231 294 194 516 460 467 454 492 454 494 523 486 509 -180 160 207 150 256 325 321 184 239 163 450 382 402 383 430 383 431 449 403 428 -100 90 104 85 124 136 129 95 107 90 205 185 193 187 201 187 201 203 190 196 -75 65 80 61 97 105 94 65 73 64 146 129 137 131 143 131 143 143 131 136 -56 40 88 38 148 159 106 38 42 38 112 67 93 73 109 73 110 100 68 79 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -82 361 38 168 39 38 39 278 47 474 50 223 136 199 68 200 55 53 185 122 -145 531 110 312 118 115 121 668 229 867 282 607 425 543 317 544 312 340 563 461 -223 542 183 431 199 198 215 984 514 1082 613 995 742 891 626 891 622 710 974 865 -301 459 257 417 288 292 324 1119 764 1044 945 1270 1008 1148 922 1150 920 1060 1288 1206 -383 412 336 375 383 393 466 1119 941 886 1229 1442 1215 1322 1174 1324 1174 1343 1496 1455 -770 735 684 675 781 742 866 1022 1025 822 1591 1631 1553 1583 1555 1583 1557 1636 1666 1667 -250 254 234 234 270 342 497 466 548 303 790 774 717 730 740 730 743 832 825 846 -206 200 207 186 240 297 340 271 321 222 538 506 497 493 515 493 517 551 531 547 -197 183 212 171 253 323 346 230 291 193 514 459 465 453 490 452 492 520 483 506 -181 161 208 151 257 326 321 184 240 164 452 384 404 385 432 385 434 451 405 430 -156 133 186 124 242 293 265 141 176 133 359 292 319 298 345 298 346 352 306 328 -78 68 83 63 102 110 98 67 76 66 151 133 142 136 149 136 149 148 135 141 -57 41 90 39 150 160 107 39 43 39 114 69 95 75 112 75 112 102 70 81 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -66 247 33 122 35 34 35 191 42 322 46 161 103 145 59 145 50 48 135 93 -148 535 112 316 120 117 123 664 228 864 289 611 431 548 323 549 319 346 567 465 -187 376 149 305 163 162 179 617 353 677 448 668 522 608 455 608 453 503 656 592 -268 384 227 346 254 258 290 807 574 761 739 955 781 874 724 875 723 815 967 912 -358 387 314 352 356 367 428 896 766 730 1031 1187 1021 1099 990 1100 990 1114 1226 1197 -474 477 424 438 483 493 657 841 845 617 1225 1281 1172 1214 1175 1215 1177 1289 1332 1333 -142 146 135 134 158 205 297 279 327 181 455 445 410 418 425 418 426 482 477 490 -160 157 153 146 175 195 208 185 201 168 355 344 340 339 347 339 347 359 352 358 -116 112 111 105 126 135 138 122 130 116 237 229 230 228 234 228 234 238 233 236 -167 149 185 140 225 275 271 169 211 152 398 347 362 347 383 347 384 397 362 381 -110 98 116 91 139 155 146 102 117 97 227 203 213 205 222 205 222 224 208 216 -60 54 60 50 71 74 69 54 58 53 113 104 108 105 111 105 112 111 105 108 -39 33 42 31 51 52 45 32 35 32 70 62 67 64 70 64 70 68 62 65 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 -16 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 -37 37 33 34 37 37 37 37 37 38 67 68 68 68 67 68 67 67 68 68 -105 149 86 130 99 100 115 288 209 273 249 322 263 295 244 295 243 274 326 307 -91 106 77 94 90 94 119 245 209 199 244 290 242 264 233 264 233 268 301 292 -144 149 131 138 147 154 166 173 174 164 302 306 298 301 298 301 298 307 310 310 -121 123 112 112 131 169 253 235 280 148 380 372 342 348 354 348 355 403 399 410 -137 133 140 122 168 257 324 213 297 150 445 400 388 382 413 382 415 463 434 457 -156 147 186 135 235 396 442 185 326 154 551 448 461 437 508 437 511 563 494 536 -149 130 199 121 266 379 369 151 230 132 444 340 373 343 415 342 417 443 372 411 -133 111 193 104 279 363 314 117 158 110 363 255 301 266 341 266 343 351 278 314 -69 61 72 57 86 91 83 61 67 60 133 120 126 122 131 122 131 130 121 125 -30 26 30 24 35 36 32 25 27 25 53 49 51 50 53 50 53 52 49 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 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 14 12 13 14 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 -16 16 14 14 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 29 -83 149 65 118 74 74 79 230 139 253 159 235 185 214 162 214 161 177 230 208 -101 144 83 126 95 96 110 278 202 265 238 310 253 283 234 284 233 263 314 295 -113 132 96 118 111 116 147 293 250 240 307 360 304 331 294 331 294 335 373 363 -121 130 108 118 124 139 206 279 280 194 363 387 340 358 341 359 342 390 408 409 -88 88 81 82 91 92 94 92 93 92 170 170 169 169 170 169 170 171 171 171 -109 108 101 100 114 119 122 116 119 112 217 214 213 213 215 213 215 218 216 218 -82 80 76 75 86 88 89 84 86 83 159 156 156 156 158 156 158 159 157 158 -199 176 279 164 374 544 529 201 315 179 637 483 532 487 595 486 599 636 531 588 -107 96 112 90 134 148 139 100 113 95 220 198 207 200 215 200 216 218 203 210 -73 64 76 60 92 98 89 64 71 63 140 126 133 128 138 128 139 138 128 132 -65 46 101 44 162 172 115 44 48 44 128 78 108 86 126 86 125 114 80 92 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -75 275 35 140 37 36 37 207 44 355 47 178 115 161 66 162 53 51 149 103 -154 590 120 349 128 126 131 711 227 934 317 667 475 601 357 602 352 379 618 508 -135 279 108 224 119 119 129 451 253 500 318 481 374 438 324 437 323 358 471 424 -225 342 189 307 211 214 243 749 517 708 663 876 706 797 650 798 648 736 886 831 -137 165 116 147 131 141 181 338 292 282 377 437 374 404 362 404 362 408 452 440 -142 153 127 139 146 162 257 362 363 239 479 513 448 473 450 474 451 517 543 544 -158 162 151 149 175 227 324 303 355 200 509 497 461 469 476 469 478 536 531 545 -175 171 175 157 207 341 440 269 398 188 617 552 535 527 572 527 574 641 600 632 -165 154 198 143 248 412 457 193 336 162 578 472 487 461 535 461 538 590 519 562 -162 144 235 134 319 473 457 163 262 146 537 400 444 404 501 403 503 537 442 493 -294 248 591 238 931 1275 1065 262 370 246 1153 709 902 757 1067 755 1075 1106 803 953 -185 130 347 126 631 763 550 128 158 124 564 291 435 339 530 337 534 516 324 412 -96 58 188 57 327 347 214 54 62 54 216 102 171 120 213 119 210 185 104 132 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -117 469 51 236 52 51 52 345 62 604 71 302 193 273 106 274 82 77 252 171 -178 670 139 399 148 145 152 797 255 1049 370 762 547 688 415 689 410 438 706 583 -261 632 213 507 232 231 249 1083 560 1208 722 1144 869 1033 739 1032 735 826 1118 996 -355 534 305 486 341 345 376 1210 825 1146 1087 1434 1159 1307 1066 1309 1064 1207 1449 1361 -502 513 445 469 507 512 550 1190 1013 980 1424 1627 1414 1515 1374 1517 1374 1530 1675 1636 -781 745 694 684 793 754 892 1073 1075 848 1683 1729 1640 1675 1642 1675 1643 1734 1770 1770 -970 941 824 860 933 868 1032 987 1059 850 1775 1771 1751 1755 1759 1754 1761 1791 1788 1795 -885 890 724 813 809 976 1094 847 1038 868 1754 1707 1695 1688 1722 1687 1724 1772 1742 1766 -633 634 631 582 750 1120 1211 620 946 648 1690 1491 1520 1470 1613 1469 1619 1716 1580 1664 -442 418 654 391 886 1326 1280 444 696 427 1544 1169 1294 1180 1451 1178 1459 1549 1286 1429 -336 284 667 272 1041 1417 1182 299 415 281 1296 806 1021 860 1202 858 1211 1243 909 1074 -280 187 582 184 1090 1323 937 183 230 174 945 451 715 539 885 537 892 857 509 671 -203 101 489 104 897 952 557 86 109 83 519 180 388 236 514 233 504 426 186 268 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -39 93 22 57 25 24 24 74 29 118 34 72 54 67 40 67 37 36 64 50 -100 242 73 162 81 79 83 276 123 355 169 286 221 264 182 264 180 188 269 232 -237 553 192 446 210 208 226 924 485 1032 634 990 759 897 649 896 646 721 967 864 -272 407 230 368 257 261 291 866 600 825 795 1038 846 949 780 950 779 878 1048 986 -272 307 236 278 268 278 332 703 596 578 813 942 807 871 782 872 782 879 972 947 -300 315 268 288 306 330 481 652 653 453 930 985 880 921 882 922 884 990 1033 1033 -346 348 318 320 365 444 670 621 738 387 1110 1088 1014 1030 1046 1031 1049 1167 1156 1184 -200 195 201 180 237 378 480 300 435 214 688 618 601 592 640 592 643 713 668 703 -230 215 279 200 347 570 628 267 461 225 821 675 696 660 763 660 767 837 738 799 -220 194 327 182 441 649 625 221 354 197 754 565 627 570 705 570 709 753 622 693 -193 158 328 150 488 646 545 167 230 156 621 411 503 435 581 434 585 598 455 525 -167 119 285 114 484 575 420 117 143 113 458 262 366 296 434 295 437 422 285 348 -96 60 170 58 278 293 185 55 63 55 200 107 164 124 198 123 197 175 109 133 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 16 14 14 15 15 15 16 15 16 28 28 28 28 28 28 28 28 28 28 -50 53 43 49 48 47 48 54 51 57 90 94 92 94 91 94 91 91 94 92 -108 187 83 153 93 92 102 270 169 298 215 303 246 280 219 280 218 236 297 271 -130 186 105 164 118 121 142 329 243 318 314 398 332 368 310 368 309 343 402 380 -137 145 121 133 136 139 150 167 161 162 280 289 279 284 277 284 277 285 291 290 -151 156 137 144 154 161 174 182 182 173 318 323 314 318 314 318 314 324 327 327 -158 159 147 148 166 178 191 186 193 173 340 338 332 333 335 333 335 345 344 347 -140 137 132 128 150 160 167 153 162 145 293 286 285 284 288 284 288 295 291 294 -94 92 88 85 99 103 104 96 100 94 184 180 181 180 182 180 182 184 182 183 -124 115 125 108 145 160 158 124 138 117 260 242 248 243 255 243 255 259 247 254 -95 86 96 81 112 120 115 89 98 86 188 174 180 176 186 176 186 187 177 182 -170 119 309 115 540 645 463 117 142 114 493 266 388 307 466 306 470 452 293 366 -167 87 381 88 675 712 418 76 92 74 404 153 310 198 402 196 394 336 157 220 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 18 15 16 17 17 17 18 17 19 32 32 32 32 32 32 32 32 32 32 -39 41 35 37 39 38 39 41 40 43 72 73 72 73 72 73 72 72 73 73 -92 100 78 92 87 86 91 108 99 112 172 183 176 180 172 180 172 174 182 179 -62 63 56 58 62 62 63 65 64 66 116 118 117 117 116 117 116 117 118 117 -86 87 77 81 86 87 89 92 91 92 164 166 164 165 164 165 164 165 167 166 -107 108 97 100 108 111 114 116 116 114 209 210 208 209 208 209 208 210 211 211 -182 187 174 172 202 260 363 339 395 229 587 574 535 543 552 544 554 617 611 626 -78 77 71 72 80 82 82 80 81 80 149 148 148 148 148 148 148 149 149 149 -113 110 108 102 122 130 131 118 124 113 229 222 223 221 226 221 226 229 225 228 -91 87 87 81 100 104 104 91 96 89 179 173 175 173 178 173 178 179 175 177 -92 84 92 79 108 115 110 87 95 84 182 169 174 170 179 170 179 180 171 176 -51 48 50 44 58 60 57 47 50 47 96 91 94 92 95 92 95 95 91 93 -17 16 16 15 18 18 17 16 16 16 31 30 30 30 30 30 30 30 30 30 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 9 8 8 9 9 9 9 9 9 17 17 17 17 17 17 17 17 17 17 -32 32 28 30 32 31 32 33 32 34 58 59 59 59 58 59 58 58 59 59 -58 60 51 55 57 57 58 62 60 63 108 110 109 110 108 110 108 108 110 109 -82 84 72 78 81 81 84 89 86 90 155 158 155 157 154 157 154 156 158 157 -78 79 70 73 79 80 81 82 82 83 149 150 149 149 148 149 148 149 150 150 -89 89 80 82 90 91 93 93 93 93 170 171 169 170 169 170 169 171 171 171 -93 93 85 86 96 97 99 97 98 97 180 180 179 179 179 179 179 181 181 181 -84 83 77 77 86 88 89 86 87 86 161 160 160 159 160 159 160 161 161 161 -42 41 38 38 42 43 43 42 42 42 78 77 77 77 77 77 77 78 77 78 -92 88 88 82 101 106 105 92 97 90 181 175 177 175 180 175 180 181 177 179 -97 88 98 83 115 124 118 91 100 88 194 179 185 180 191 180 191 192 182 187 -70 62 71 58 84 88 81 61 67 60 132 120 126 122 130 122 131 130 122 125 -26 24 25 22 29 30 28 23 25 23 47 45 46 45 47 45 47 47 45 46 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 87 19 53 21 20 21 66 25 109 29 66 49 62 36 62 32 31 58 45 -68 198 49 124 55 54 56 222 83 293 110 211 156 193 122 193 120 126 196 163 -107 185 81 151 91 90 99 262 164 292 210 296 241 274 214 273 213 230 290 264 -115 166 94 146 107 108 124 299 216 289 276 353 292 325 272 325 271 301 356 335 -130 154 111 139 127 133 165 319 271 267 358 415 356 385 345 385 345 387 428 417 -196 211 176 193 200 223 326 442 442 312 628 668 595 623 596 624 597 671 701 701 -175 178 164 163 190 245 369 340 408 211 606 592 548 557 567 558 569 639 632 649 -148 143 153 132 182 273 335 220 304 160 480 433 423 416 449 416 450 497 466 490 -120 116 115 108 131 139 141 125 133 120 245 237 238 236 242 236 242 246 240 244 -126 117 127 109 147 161 159 125 139 118 263 245 251 246 258 246 259 262 250 257 -185 150 294 142 423 545 458 157 210 148 544 375 450 395 512 394 515 524 408 465 -147 105 236 100 380 444 325 103 123 100 369 223 302 250 352 249 354 341 240 286 -118 69 225 68 367 383 233 63 72 63 251 123 204 149 250 148 247 216 125 159 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -111 376 49 207 51 49 50 265 60 474 72 256 174 235 107 236 87 81 216 153 -72 159 52 109 59 58 60 174 83 226 107 178 139 165 115 165 115 118 167 144 -227 524 183 424 200 198 214 827 433 936 599 918 714 837 615 836 612 675 895 802 -317 486 271 441 302 305 334 1019 692 982 959 1251 1025 1148 945 1150 943 1056 1261 1185 -416 441 366 402 416 424 461 1016 856 846 1234 1417 1230 1320 1193 1321 1192 1326 1456 1420 -564 559 503 512 574 573 736 941 940 703 1445 1506 1393 1437 1395 1438 1396 1510 1557 1557 -695 684 609 627 693 711 903 854 947 671 1543 1529 1480 1491 1501 1490 1503 1581 1573 1592 -658 656 570 601 648 889 1046 722 965 664 1635 1539 1518 1504 1572 1504 1576 1669 1607 1654 -368 353 428 327 521 828 897 395 657 366 1224 1028 1061 1011 1149 1010 1154 1243 1111 1191 -175 154 257 144 343 491 467 173 267 156 572 431 479 437 536 436 539 569 472 524 -154 126 254 119 370 479 400 131 175 125 464 313 381 331 437 330 439 446 343 393 -158 112 252 106 400 466 341 109 132 106 393 241 323 268 375 268 378 364 258 306 -142 79 283 79 464 485 289 71 82 71 309 142 249 177 308 176 304 264 145 189 -41 21 66 21 88 83 44 18 20 19 52 36 45 37 53 37 53 43 36 37 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -95 283 45 163 48 46 47 203 57 354 68 201 142 186 94 186 80 75 172 127 -185 667 143 415 152 148 155 739 228 990 388 753 558 688 433 689 428 448 698 582 -263 626 214 508 232 230 248 992 509 1126 717 1104 858 1006 737 1006 733 808 1076 962 -350 532 301 484 336 339 367 1104 750 1068 1055 1370 1126 1259 1039 1260 1037 1159 1379 1297 -539 541 479 496 547 549 560 1158 987 982 1467 1655 1463 1556 1424 1557 1424 1561 1695 1658 -686 665 611 610 697 678 815 1000 998 784 1578 1630 1535 1572 1536 1572 1538 1633 1672 1672 -879 857 753 784 855 820 976 930 1002 797 1684 1678 1653 1658 1663 1657 1665 1704 1700 1710 -824 829 681 757 765 933 1038 798 978 818 1678 1628 1618 1610 1646 1609 1648 1696 1664 1688 -594 593 615 545 728 1059 1129 589 870 607 1614 1422 1456 1406 1543 1405 1548 1634 1504 1583 -427 401 640 375 853 1232 1171 424 632 409 1469 1122 1244 1137 1386 1136 1393 1466 1225 1354 -332 280 661 268 996 1318 1080 291 383 277 1241 791 996 846 1160 844 1168 1187 880 1030 -301 192 629 189 1119 1328 918 186 228 179 969 474 746 568 915 566 922 876 528 688 -244 116 571 120 973 1014 577 97 121 94 580 204 448 286 578 283 568 478 209 311 -41 0 103 2 149 136 47 0 0 0 30 0 16 0 32 0 33 11 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -148 502 64 281 66 63 64 347 76 629 98 346 238 319 148 320 121 111 292 209 -171 539 126 349 136 132 138 589 204 787 335 617 466 567 370 567 366 381 574 484 -222 465 177 381 194 193 208 698 384 789 546 803 640 738 560 738 557 606 783 708 -275 409 228 368 253 257 293 757 536 737 759 965 806 893 750 894 748 827 971 917 -328 377 283 342 320 334 394 727 625 624 910 1035 909 969 883 970 883 972 1061 1036 -398 419 357 384 406 437 590 765 763 570 1151 1211 1102 1145 1103 1145 1105 1214 1260 1259 -304 311 291 287 334 423 575 537 623 375 978 958 899 912 925 912 928 1023 1014 1037 -424 413 410 382 476 685 821 551 748 444 1261 1158 1138 1123 1194 1123 1198 1295 1229 1279 -291 269 348 250 421 612 655 335 497 280 920 778 803 767 865 767 869 931 836 893 -253 233 360 218 443 614 582 247 360 237 783 620 676 627 740 626 743 776 666 724 -198 169 316 163 401 507 427 172 220 171 617 470 538 488 591 488 593 599 499 548 -145 116 180 108 243 271 216 115 130 116 293 229 263 240 286 240 287 280 236 255 -75 59 89 54 114 117 89 57 60 58 129 105 120 111 128 111 128 123 106 113 -20 14 23 13 29 28 19 15 14 15 27 22 26 24 27 24 27 25 22 23 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 162 30 97 33 31 32 116 38 201 43 116 84 108 58 109 51 48 100 75 -109 309 79 203 86 84 88 334 125 445 192 346 263 319 211 319 209 216 322 272 -136 292 106 236 118 117 126 438 237 498 322 486 382 445 331 444 329 360 473 425 -175 272 145 243 162 164 186 524 361 511 497 646 532 594 491 595 490 546 650 611 -158 187 136 169 154 161 195 418 349 349 481 562 481 520 464 520 464 521 579 563 -200 215 179 197 204 226 325 440 438 314 638 677 606 634 607 634 608 679 709 709 -237 241 223 222 257 327 488 449 536 281 831 812 756 768 781 769 783 873 864 886 -276 268 270 247 316 545 695 397 617 289 1042 933 912 896 972 896 976 1079 1008 1062 -286 270 355 251 436 710 768 314 546 280 1041 858 891 844 973 844 977 1057 934 1008 -267 239 419 225 560 814 768 262 409 243 953 712 797 723 895 722 900 948 782 870 -296 247 565 236 837 1093 895 256 333 244 1048 682 849 728 983 726 989 1003 753 874 -282 182 558 178 955 1123 779 176 215 169 850 439 666 518 806 516 811 771 484 615 -212 103 478 105 797 827 470 88 106 86 485 179 379 249 483 247 477 402 183 268 -75 50 130 45 182 169 85 74 59 74 93 81 82 73 95 73 95 78 82 75 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -178 609 74 342 74 72 73 409 86 758 113 417 287 385 177 386 144 130 350 249 -200 739 155 464 165 160 167 798 236 1078 430 828 618 759 481 760 476 495 767 640 -275 646 223 526 243 241 258 990 509 1132 742 1128 886 1033 765 1033 760 832 1098 985 -379 578 327 527 365 368 394 1170 790 1140 1142 1476 1221 1361 1128 1362 1126 1251 1484 1397 -548 548 487 502 556 558 563 1141 973 978 1474 1657 1473 1562 1435 1563 1435 1564 1694 1657 -866 812 769 744 880 821 900 1039 1036 875 1721 1752 1697 1719 1697 1718 1698 1752 1775 1774 -862 841 739 769 840 811 963 918 989 787 1671 1663 1638 1643 1648 1642 1650 1691 1687 1697 -792 795 659 726 742 918 1024 777 960 789 1657 1601 1591 1582 1622 1581 1624 1676 1640 1667 -573 571 606 525 718 1043 1107 572 843 585 1593 1398 1434 1384 1522 1383 1527 1612 1480 1559 -424 397 640 372 848 1211 1143 419 615 405 1456 1115 1237 1132 1376 1130 1382 1450 1214 1339 -360 306 724 293 1079 1413 1149 316 405 302 1345 865 1086 926 1261 924 1269 1285 958 1117 -327 206 665 203 1142 1342 924 198 243 190 1007 510 786 607 954 604 961 911 563 723 -254 119 587 123 976 1011 569 99 123 97 588 208 458 298 586 295 578 485 212 320 -88 54 158 49 222 206 99 83 65 82 105 88 92 78 108 78 108 87 89 81 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -183 618 75 350 76 73 74 412 87 768 118 425 294 393 183 394 150 135 357 255 -204 752 159 474 168 163 170 805 236 1090 440 842 631 773 492 774 487 505 779 651 -285 693 233 564 253 251 268 1063 536 1219 790 1211 948 1107 816 1108 811 888 1177 1054 -385 587 333 535 372 374 400 1172 792 1146 1155 1489 1235 1375 1142 1376 1140 1264 1497 1409 -559 556 498 509 568 569 571 1140 973 982 1486 1666 1486 1573 1448 1574 1448 1574 1702 1665 -462 486 414 446 471 505 777 1120 1113 744 1680 1790 1593 1671 1594 1672 1597 1793 1876 1875 -973 944 823 862 933 863 973 935 984 857 1702 1702 1698 1699 1699 1698 1700 1706 1706 1707 -837 843 687 769 772 927 1018 796 961 831 1666 1625 1617 1610 1640 1609 1642 1681 1654 1675 -589 588 616 541 728 1041 1100 585 844 602 1597 1411 1446 1397 1530 1396 1535 1615 1488 1564 -435 409 649 383 856 1212 1142 430 620 417 1468 1132 1253 1149 1389 1148 1396 1461 1228 1352 -342 288 648 275 948 1227 1002 298 378 284 1195 788 976 841 1124 839 1131 1144 866 1001 -297 191 556 187 916 1067 744 184 226 176 840 458 670 532 800 530 805 765 499 620 -216 109 438 110 697 720 417 91 112 90 460 198 370 261 458 259 453 389 202 276 -76 27 128 28 171 157 73 17 22 18 88 46 74 53 90 52 91 68 45 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 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 21 18 20 21 20 20 21 21 22 38 38 38 38 38 38 38 38 38 38 -61 66 52 60 58 57 58 67 62 71 110 116 113 115 111 115 111 111 115 113 -120 139 100 126 110 109 116 152 133 161 228 249 236 244 229 244 229 232 247 241 -193 285 159 255 178 180 205 492 352 485 503 634 534 589 498 589 497 545 636 602 -197 222 171 204 190 199 229 296 273 276 450 483 450 466 443 466 443 466 489 482 -213 228 193 210 216 236 275 310 309 274 515 531 503 514 503 514 503 532 544 544 -221 224 210 208 238 273 315 302 326 257 556 549 530 534 539 534 539 571 567 575 -169 165 162 154 184 202 212 190 204 175 371 359 357 356 363 356 364 374 367 372 -160 151 159 141 183 204 208 169 188 156 350 331 334 329 343 329 343 352 339 346 -195 171 227 160 275 336 322 189 240 171 478 409 433 412 460 412 462 475 428 452 -103 93 105 87 123 131 124 96 105 92 205 189 196 191 202 191 202 203 192 197 -73 65 74 60 87 90 83 64 69 63 137 125 132 127 135 127 136 134 127 130 -82 54 128 52 188 194 124 51 55 51 150 92 130 106 149 105 149 134 93 109 -23 17 27 15 33 31 22 17 16 17 32 27 31 28 33 28 33 30 27 28 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -117 357 50 209 53 51 51 237 61 440 79 250 177 233 115 233 100 90 212 154 -119 378 87 246 95 92 96 397 132 539 224 416 315 383 249 383 246 254 385 323 -149 284 116 235 129 127 137 396 230 451 331 470 383 436 340 436 338 362 458 417 -138 201 111 177 124 126 147 329 241 326 334 419 355 390 331 390 331 361 421 398 -151 161 134 149 149 153 165 187 179 182 313 325 313 319 310 319 310 319 327 325 -167 173 152 161 170 178 193 204 204 193 358 364 353 358 353 358 354 364 369 369 -90 90 82 82 97 123 182 167 199 106 291 284 263 267 272 268 273 306 303 311 -169 162 175 150 207 303 365 240 328 180 546 494 485 477 513 477 515 563 529 554 -236 215 285 201 346 497 527 269 397 225 746 630 652 623 703 622 706 754 677 723 -271 236 391 222 502 691 649 262 384 238 857 664 733 674 809 674 813 849 717 787 -261 214 407 203 558 698 581 221 280 212 739 531 627 558 703 557 707 712 570 638 -174 125 273 119 416 475 344 122 141 120 419 268 352 297 403 296 405 389 284 330 -167 93 299 92 452 465 279 82 95 82 331 171 277 211 329 210 328 288 175 219 -110 49 193 49 267 245 114 49 50 50 127 81 108 79 131 79 132 99 81 80 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -55 119 30 79 33 32 32 87 38 145 48 96 75 91 57 91 54 51 84 68 -73 164 52 114 59 57 59 170 79 225 109 180 142 167 118 167 117 119 168 145 -129 254 101 208 112 110 119 356 202 407 286 414 334 383 294 383 293 315 403 365 -249 390 208 351 232 234 260 736 500 725 727 939 779 867 720 868 719 794 943 886 -250 287 215 262 244 253 295 648 537 547 787 913 788 849 761 850 761 847 938 911 -335 349 300 320 341 362 507 693 687 495 1056 1117 1010 1052 1010 1053 1011 1118 1164 1162 -237 240 223 221 256 325 478 440 523 280 833 815 762 773 785 773 788 874 865 886 -199 193 201 178 236 367 451 278 402 210 683 616 605 594 641 594 643 704 661 693 -235 218 296 203 362 564 602 262 430 226 834 690 718 680 781 680 785 844 747 805 -247 216 393 204 519 739 689 239 369 218 881 659 739 671 827 670 832 872 720 800 -221 179 409 171 588 755 612 185 240 175 739 490 606 523 696 522 701 706 536 618 -303 190 596 186 984 1141 782 182 220 177 881 465 699 548 839 546 845 799 509 640 -242 114 533 117 857 881 492 96 116 95 531 197 420 284 529 282 525 441 205 298 -130 52 234 52 325 298 133 52 52 53 144 84 120 83 150 83 150 108 85 84 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -192 606 79 356 80 77 78 391 91 744 132 428 304 398 196 399 171 152 361 262 -214 786 166 505 176 171 178 814 234 1115 467 876 664 808 522 809 516 530 810 679 -298 721 243 590 264 261 278 1069 534 1239 823 1248 986 1146 851 1147 846 920 1211 1086 -403 614 349 559 390 391 415 1173 791 1158 1192 1525 1275 1413 1182 1415 1179 1298 1529 1441 -429 480 372 441 420 434 491 1211 989 1012 1479 1728 1483 1603 1429 1604 1429 1598 1776 1724 -478 502 427 460 486 519 780 1123 1112 760 1721 1831 1637 1714 1637 1715 1640 1831 1914 1912 -1192 1145 984 1043 1114 971 1036 1002 1028 993 1851 1862 1888 1882 1874 1881 1875 1831 1836 1824 -1075 1101 832 1000 917 967 994 887 967 1049 1711 1745 1750 1754 1733 1752 1733 1704 1725 1709 -721 737 692 675 803 1032 1070 691 873 751 1634 1513 1537 1505 1592 1504 1595 1645 1563 1611 -438 414 610 386 786 1063 1000 433 578 422 1339 1064 1165 1080 1274 1079 1280 1329 1141 1240 -342 288 628 274 897 1143 929 296 367 283 1141 771 945 821 1079 819 1085 1092 840 961 -330 207 630 203 1020 1178 810 198 241 190 930 505 745 591 888 588 894 846 550 683 -263 124 560 127 886 910 510 103 126 101 565 220 451 311 561 309 558 472 229 325 -128 54 226 54 312 286 130 54 54 55 145 88 123 87 151 87 151 112 88 88 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 31 5 22 5 5 5 9 5 33 6 16 11 15 7 15 7 6 12 7 -118 357 49 211 51 49 50 230 59 437 78 248 176 231 114 231 102 90 209 152 -113 324 82 218 89 87 90 332 121 451 202 358 277 332 223 332 221 226 332 282 -100 182 77 149 87 86 92 245 146 280 199 281 230 261 204 261 203 217 274 249 -140 204 112 181 125 127 147 328 240 327 338 423 359 394 336 395 335 365 424 401 -266 322 227 295 255 268 328 628 529 542 796 913 798 854 772 855 772 851 935 910 -275 296 246 271 280 307 408 528 524 404 807 850 775 804 774 805 775 850 883 882 -386 389 359 359 411 483 632 592 673 437 1098 1080 1027 1038 1050 1038 1053 1139 1130 1151 -441 430 424 397 491 654 753 538 689 458 1192 1109 1097 1083 1141 1083 1144 1218 1164 1204 -476 467 512 430 609 849 890 486 681 480 1307 1149 1181 1139 1250 1139 1254 1318 1212 1275 -424 397 650 372 853 1193 1114 417 593 404 1460 1122 1246 1141 1381 1140 1387 1447 1215 1337 -349 295 695 283 1006 1292 1039 303 374 291 1260 828 1032 886 1188 884 1195 1203 908 1050 -311 191 627 188 1029 1190 807 183 220 178 912 475 723 564 869 561 875 825 521 657 -249 113 562 117 902 925 508 96 114 96 548 192 432 288 545 285 542 452 202 300 -142 46 265 48 367 333 140 41 44 42 152 75 123 77 159 77 159 109 75 76 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -16 16 15 15 16 16 16 17 16 17 30 30 30 30 30 30 30 30 30 30 -33 33 29 31 33 33 33 34 33 34 60 61 61 61 60 61 60 60 61 61 -103 186 79 153 89 88 94 249 149 285 205 288 236 268 210 268 209 223 281 255 -128 187 102 165 114 115 134 301 219 300 304 383 324 357 302 357 302 329 384 363 -151 160 133 147 148 152 163 183 176 179 309 321 309 315 307 315 307 315 323 320 -139 142 126 132 141 146 153 157 157 153 282 285 280 282 280 282 280 285 287 287 -145 146 134 135 151 157 164 161 164 155 299 298 294 295 296 295 296 301 301 302 -151 145 157 134 186 271 324 212 290 161 485 439 432 424 456 424 458 500 469 492 -150 135 182 126 224 323 341 169 253 141 469 391 407 387 440 387 442 473 421 452 -176 153 264 144 345 477 444 169 250 155 570 432 483 440 537 440 540 563 469 519 -240 197 457 188 654 836 673 203 255 194 816 540 671 578 770 576 775 779 590 681 -324 199 646 195 1048 1208 820 190 228 185 936 494 745 584 893 582 899 847 541 678 -264 120 583 123 926 948 521 101 121 100 572 206 453 306 568 304 566 474 219 318 -153 53 281 54 389 353 150 49 51 50 166 86 137 87 173 87 174 121 86 87 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 54 7 38 7 7 7 13 7 58 9 25 18 25 10 25 10 9 19 10 -183 550 76 330 77 74 75 346 88 669 133 394 285 369 189 370 174 153 334 246 -159 487 116 329 125 121 126 494 167 676 309 547 424 508 341 508 338 344 508 430 -166 310 129 259 142 140 151 415 243 477 366 511 422 476 376 477 375 398 498 454 -201 299 165 268 184 186 210 493 352 492 521 652 554 609 517 609 516 561 654 618 -202 240 173 219 196 204 243 476 399 412 592 682 595 637 575 638 575 634 698 679 -173 192 155 175 176 199 270 352 348 270 526 557 504 525 503 525 504 556 580 579 -231 235 218 216 250 310 428 397 463 273 748 733 690 699 709 699 711 780 773 790 -220 211 230 196 270 385 457 305 410 233 712 647 638 627 672 627 674 731 689 720 -504 496 544 457 649 911 954 510 722 509 1408 1236 1271 1226 1347 1225 1351 1420 1304 1372 -422 396 628 370 815 1119 1044 415 572 403 1392 1083 1198 1102 1319 1101 1325 1378 1167 1277 -366 310 716 297 1025 1307 1049 318 386 306 1292 859 1065 919 1221 917 1228 1233 938 1080 -356 215 713 212 1151 1325 896 206 247 199 1028 542 820 642 982 639 989 930 594 743 -282 128 608 132 955 977 538 107 129 106 601 225 479 329 596 327 596 500 238 340 -163 57 298 59 413 374 159 53 55 55 177 92 147 93 186 93 186 130 92 93 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 53 7 37 7 7 7 13 7 56 9 25 18 24 10 25 10 9 18 10 -201 605 81 364 82 79 80 376 93 735 145 433 313 405 206 406 192 167 366 268 -216 788 167 517 176 171 178 792 226 1097 472 874 668 808 528 810 523 533 807 677 -296 720 242 591 262 259 275 1036 512 1212 818 1233 981 1136 849 1137 844 911 1195 1072 -397 616 343 560 383 384 408 1138 762 1135 1178 1504 1263 1397 1170 1398 1168 1279 1506 1419 -427 484 369 446 417 431 486 1184 962 1000 1472 1718 1479 1597 1425 1599 1425 1587 1762 1710 -469 493 419 452 477 509 754 1091 1075 747 1698 1807 1621 1695 1619 1696 1622 1805 1887 1883 -1140 1098 946 1000 1072 951 1019 984 1013 965 1818 1825 1845 1841 1835 1839 1836 1802 1805 1797 -1026 1049 804 953 892 990 1040 881 997 1010 1773 1781 1781 1781 1779 1780 1779 1773 1777 1774 -632 636 642 584 759 1022 1062 621 828 651 1603 1442 1476 1434 1546 1432 1550 1614 1506 1569 -425 399 627 373 811 1105 1031 417 569 406 1384 1082 1194 1100 1313 1099 1319 1369 1163 1271 -316 264 633 253 907 1159 925 271 332 261 1135 747 932 801 1071 799 1078 1082 817 944 -324 200 622 196 981 1124 766 191 229 185 896 491 722 574 858 572 863 813 534 658 -269 125 562 128 872 890 493 104 126 103 561 222 450 316 556 313 556 470 234 325 -157 55 284 57 393 355 151 50 53 51 173 90 144 92 181 92 181 128 90 91 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 12 3 9 4 3 3 6 4 13 5 8 7 8 5 8 5 5 7 5 -87 200 44 132 48 46 47 135 55 239 77 159 124 151 93 151 90 83 139 111 -162 491 118 335 127 123 128 491 168 675 314 552 430 513 347 514 344 349 512 434 -241 529 192 438 210 207 221 737 386 859 611 893 721 827 631 828 628 673 867 782 -339 516 288 468 322 324 348 911 621 911 960 1214 1026 1131 954 1132 952 1038 1215 1147 -222 263 190 241 215 223 263 551 456 474 686 795 690 741 666 742 666 736 813 790 -193 208 172 191 196 215 300 409 403 301 619 657 592 618 592 618 593 656 684 683 -561 556 499 510 569 613 793 744 837 567 1411 1392 1341 1352 1363 1351 1366 1450 1441 1462 -686 687 585 628 664 845 944 698 874 692 1543 1479 1470 1458 1505 1458 1507 1565 1522 1554 -520 513 566 473 678 960 1003 525 750 527 1487 1300 1340 1290 1421 1289 1426 1499 1373 1447 -96 92 91 85 104 108 107 95 100 93 187 181 183 181 186 181 186 187 182 185 -47 46 44 43 49 50 49 46 47 47 88 87 87 87 88 87 88 88 87 87 -87 76 91 71 108 113 101 74 81 73 165 148 158 152 163 152 164 161 150 155 -59 49 63 46 75 76 63 46 49 46 103 91 98 94 102 94 102 99 91 94 -16 14 17 13 20 19 16 12 13 13 27 24 26 25 27 25 27 26 24 24 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -18 18 16 16 17 17 17 18 17 18 32 32 32 32 32 32 32 32 32 32 -141 366 102 260 110 106 111 365 145 495 258 425 339 398 281 398 279 282 396 342 -193 380 150 318 164 162 174 508 286 590 447 631 519 588 460 589 458 487 614 558 -129 189 103 167 115 116 134 298 216 300 306 385 327 359 305 359 304 330 385 364 -218 259 187 237 211 219 258 543 448 469 678 785 682 733 658 734 658 727 804 781 -259 278 231 256 263 287 381 498 492 383 771 813 741 770 740 770 741 811 843 842 -287 292 274 270 314 397 545 506 590 349 980 960 904 916 929 916 931 1022 1013 1035 -279 268 291 249 339 504 605 386 538 294 963 873 861 846 908 846 912 989 931 974 -277 252 345 235 418 611 641 307 466 262 932 782 813 774 878 774 882 939 839 898 -203 173 280 162 354 468 436 191 269 173 592 465 512 473 561 473 563 584 498 543 -162 136 187 127 228 258 229 139 165 132 349 296 321 303 340 303 341 341 305 322 -148 116 181 109 232 252 201 114 128 113 291 234 266 245 286 244 286 279 240 256 -88 67 103 63 129 130 99 64 68 65 149 123 140 129 148 129 149 141 124 130 -81 31 133 31 176 159 73 24 27 25 94 51 81 57 97 57 97 74 51 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 -32 33 27 30 30 30 30 32 31 34 56 58 57 58 56 58 56 56 57 57 -65 70 55 64 61 60 62 71 65 75 117 123 120 122 118 122 118 118 122 120 -119 208 90 174 99 97 107 267 164 307 237 326 272 305 244 306 243 256 318 291 -244 370 200 332 222 224 251 610 427 614 654 822 698 767 651 768 649 705 822 776 -258 306 221 280 249 259 303 603 503 526 771 886 776 830 750 831 750 824 906 881 -130 141 115 128 132 145 198 267 262 200 390 414 374 390 373 390 374 413 432 431 -305 307 283 283 324 391 552 510 597 344 995 975 921 932 945 932 948 1036 1026 1048 -245 236 246 219 287 450 547 331 483 256 863 781 770 756 813 756 816 888 834 874 -218 201 278 187 343 527 555 238 388 208 787 651 680 644 739 643 742 794 703 757 -211 183 333 172 432 597 550 200 297 184 725 546 612 558 682 557 685 713 593 655 -228 183 426 175 595 750 600 187 235 179 750 505 623 540 711 538 715 716 548 628 -276 171 519 167 801 910 619 163 193 160 734 411 597 479 705 477 710 668 446 543 -251 116 523 118 804 819 448 98 115 98 516 206 414 291 509 289 512 431 217 296 -214 63 402 66 561 503 200 57 60 58 225 101 184 103 238 103 238 159 100 102 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -51 113 11 79 11 10 10 22 11 118 13 49 34 48 14 48 14 13 34 15 -244 718 96 438 96 92 93 427 108 864 182 517 377 486 252 487 246 211 437 321 -231 837 179 559 188 182 189 820 234 1146 508 926 715 860 568 861 562 569 854 719 -292 702 237 579 257 254 269 980 482 1155 796 1189 953 1099 828 1101 823 882 1151 1034 -386 604 332 549 370 372 394 1075 717 1082 1135 1444 1219 1345 1130 1346 1128 1229 1443 1360 -551 561 491 519 560 560 562 1052 893 936 1442 1606 1450 1527 1413 1528 1413 1517 1633 1598 -864 806 768 739 880 826 866 980 973 862 1672 1694 1658 1672 1656 1671 1657 1693 1708 1708 -1068 1032 892 940 1013 914 985 951 982 923 1747 1752 1765 1762 1757 1761 1758 1736 1739 1733 -969 988 766 898 855 956 1004 849 961 959 1707 1709 1708 1708 1709 1706 1709 1710 1709 1710 -686 697 675 639 796 1031 1063 667 845 713 1639 1500 1531 1494 1591 1492 1595 1647 1554 1609 -512 496 715 462 911 1202 1122 508 642 508 1556 1251 1366 1271 1484 1270 1490 1537 1331 1438 -377 321 709 306 990 1242 995 327 386 316 1264 865 1058 922 1201 920 1207 1208 935 1065 -317 188 642 185 1010 1151 768 180 211 176 897 476 719 564 860 562 865 810 521 647 -315 139 662 143 1017 1034 561 115 139 114 650 254 521 364 642 361 646 541 268 369 -238 70 449 73 627 561 221 64 67 66 250 111 205 112 264 112 265 176 111 112 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -57 126 12 90 11 11 11 24 12 132 14 54 38 53 15 53 15 14 38 16 -246 719 95 440 96 92 93 424 108 862 183 517 378 486 253 487 247 211 436 321 -220 791 164 532 172 167 173 770 222 1083 473 870 669 807 531 809 525 531 801 672 -306 718 249 595 270 267 282 991 494 1169 822 1214 980 1125 854 1127 849 907 1176 1058 -392 611 338 555 377 378 401 1074 718 1084 1144 1450 1228 1353 1140 1354 1137 1237 1449 1367 -246 293 210 268 237 246 289 533 449 472 692 789 697 742 675 743 675 736 805 784 -241 260 215 238 244 267 356 473 465 362 736 777 708 736 707 736 708 775 807 805 -311 314 291 290 333 402 547 509 587 358 984 965 914 925 937 925 939 1022 1014 1034 -343 332 339 307 393 593 709 445 629 357 1139 1039 1026 1009 1079 1009 1082 1169 1103 1151 -362 335 434 313 527 760 793 388 579 347 1168 991 1030 983 1106 982 1110 1177 1058 1128 -219 187 304 175 382 501 465 206 287 187 640 505 556 514 608 514 610 631 540 587 -229 184 370 175 497 611 497 188 234 180 652 468 556 494 622 493 625 625 500 559 -90 78 94 73 112 116 104 76 84 75 170 153 163 157 169 156 169 167 155 160 -41 37 41 34 47 47 43 35 37 35 73 68 72 70 73 69 73 72 68 70 -26 20 28 19 34 32 25 19 19 19 40 35 39 36 40 36 40 38 35 36 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 -12 12 11 11 12 12 12 12 12 12 22 22 22 22 22 22 22 22 22 22 -68 74 58 67 64 62 64 74 68 79 121 128 125 127 122 127 122 122 127 125 -103 113 87 103 97 96 100 118 108 124 192 204 197 201 193 201 193 194 203 199 -131 143 114 131 126 126 134 157 146 159 258 272 262 267 258 267 258 262 272 268 -153 162 135 150 151 154 164 184 177 181 313 324 314 319 311 319 311 318 326 324 -168 173 152 161 170 177 189 199 198 190 354 360 351 354 350 354 351 360 364 363 -175 175 162 163 183 194 206 201 207 189 376 374 368 369 370 369 371 380 379 382 -116 115 108 107 121 125 127 121 124 119 230 227 227 226 228 226 228 230 229 230 -165 156 164 146 188 207 210 172 190 160 359 340 344 339 352 338 353 360 347 355 -150 137 154 128 179 198 192 145 164 137 319 293 303 295 313 295 313 317 300 309 -129 113 136 106 161 174 161 115 129 110 262 235 248 239 257 239 258 258 240 248 -100 85 107 80 128 134 117 82 91 81 189 167 180 172 187 172 188 185 170 176 -34 31 33 29 38 38 35 30 32 31 61 58 60 59 61 59 61 60 58 59 -81 30 136 30 182 163 72 24 26 25 92 47 79 53 95 53 96 71 47 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 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 25 6 19 6 6 6 9 6 26 8 15 13 15 9 15 9 8 13 9 -71 144 38 100 42 41 41 99 48 170 65 118 95 113 75 113 74 69 105 86 -96 197 66 147 73 70 74 192 96 257 146 225 184 212 157 212 156 157 210 184 -101 111 86 101 96 94 98 116 107 122 189 201 194 198 190 198 190 192 199 196 -119 127 104 117 115 116 121 138 130 140 231 241 234 238 231 238 231 234 241 238 -93 94 84 87 94 94 96 99 97 99 178 180 178 179 178 179 178 179 180 180 -87 87 79 81 88 89 90 90 90 90 166 166 166 166 166 166 166 166 167 167 -131 131 120 122 135 139 143 141 143 137 262 261 259 260 260 260 260 264 263 264 -146 144 138 134 155 164 168 156 163 150 302 296 296 295 299 294 299 304 300 303 -110 106 103 99 116 121 121 111 116 109 216 211 212 211 214 211 214 216 213 215 -75 73 70 68 79 81 80 75 77 74 143 140 141 140 142 140 142 143 141 142 -123 98 190 92 258 314 257 100 125 95 320 226 271 240 305 239 306 306 242 272 -60 55 58 52 67 68 64 55 58 54 111 105 109 107 110 106 111 110 106 108 -59 50 62 46 73 74 63 46 50 47 103 92 99 95 103 95 103 100 92 95 -17 15 17 14 20 19 17 13 14 14 28 26 28 27 29 27 29 28 26 27 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 -14 14 13 13 14 14 14 14 14 14 26 26 26 26 26 26 26 26 26 26 -19 19 17 17 19 19 19 19 19 19 35 35 35 35 35 35 35 35 35 35 -41 41 37 38 42 42 42 41 41 42 76 77 76 77 76 76 76 76 77 77 -83 83 74 77 83 84 85 86 85 87 157 158 157 157 156 157 156 157 158 158 -137 139 124 129 139 142 148 152 151 149 275 278 273 275 273 275 273 278 280 279 -139 139 127 129 143 148 153 150 152 146 280 279 276 277 278 277 278 282 281 282 -100 99 92 92 104 106 107 103 105 102 195 193 193 193 194 192 194 195 194 195 -178 166 179 156 206 231 234 186 209 171 397 372 378 371 388 371 389 398 382 391 -173 154 187 145 220 249 240 166 194 154 387 347 362 350 378 350 379 385 357 371 -115 103 118 97 138 147 138 105 115 101 229 210 219 213 226 213 226 226 213 219 -142 112 169 105 211 227 184 109 123 108 276 226 255 236 271 236 272 265 231 246 -115 73 173 70 238 240 152 67 73 68 201 129 178 149 200 148 201 181 132 150 -34 25 38 24 46 43 31 24 24 24 50 43 48 45 51 45 51 47 42 44 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -66 145 14 108 13 12 12 27 13 151 15 63 44 62 17 62 17 15 44 18 -226 643 86 401 86 82 84 368 97 765 166 462 340 436 229 436 224 190 389 286 -77 222 53 152 59 57 59 212 75 298 127 230 178 214 142 214 140 141 211 177 -98 218 75 177 83 82 87 289 149 344 219 332 265 307 229 307 227 243 320 286 -191 307 156 275 174 175 194 511 344 521 534 683 576 637 533 637 532 578 682 641 -508 536 451 497 513 516 527 1023 854 911 1397 1569 1408 1489 1369 1489 1369 1474 1595 1558 -623 609 555 558 635 625 722 894 881 732 1481 1531 1449 1483 1447 1483 1448 1527 1565 1562 -611 605 541 554 617 655 839 789 883 610 1527 1509 1458 1469 1480 1469 1483 1566 1557 1577 -581 578 512 529 585 811 931 630 842 590 1537 1444 1433 1417 1483 1416 1486 1566 1504 1549 -483 473 536 436 643 899 930 490 689 486 1407 1228 1268 1220 1345 1219 1349 1414 1295 1364 -386 356 589 334 755 1016 934 374 505 361 1287 1001 1111 1022 1221 1020 1226 1267 1074 1174 -340 286 643 273 887 1102 877 290 341 281 1132 777 951 830 1077 828 1083 1081 838 953 -281 173 504 169 745 836 570 164 195 161 710 420 589 482 686 480 689 649 450 536 -292 134 576 136 854 862 472 111 132 111 573 252 470 341 568 339 572 484 262 345 -230 58 418 63 567 502 194 37 45 39 239 91 197 111 252 110 253 168 89 98 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -71 156 15 116 14 14 14 29 14 162 17 68 48 67 19 67 19 17 48 20 -242 665 95 420 96 92 93 383 108 788 188 489 366 463 252 464 247 212 415 311 -243 839 179 570 188 182 189 793 231 1125 512 922 719 860 574 861 568 570 849 716 -315 767 256 635 277 274 289 1031 498 1232 864 1282 1036 1189 900 1191 895 953 1238 1112 -421 659 365 599 407 408 428 1123 745 1145 1224 1544 1315 1444 1222 1445 1219 1318 1540 1453 -628 625 565 579 646 642 623 1024 887 940 1481 1612 1490 1551 1460 1551 1460 1539 1631 1603 -1024 926 910 848 1047 954 918 965 961 916 1721 1711 1727 1721 1727 1719 1727 1711 1703 1704 -1259 1205 1031 1095 1170 995 991 969 962 1036 1769 1787 1838 1827 1813 1825 1813 1729 1738 1718 -1124 1161 858 1051 947 971 977 911 958 1107 1708 1765 1771 1779 1743 1778 1741 1695 1731 1705 -827 867 761 790 879 1058 1078 785 903 884 1731 1652 1671 1649 1705 1647 1707 1735 1683 1713 -525 512 751 476 954 1253 1159 521 650 524 1633 1312 1436 1335 1559 1334 1565 1611 1394 1506 -394 338 797 323 1110 1386 1094 343 395 333 1405 949 1174 1018 1335 1015 1343 1339 1028 1175 -398 233 781 230 1187 1336 890 221 261 215 1083 598 882 702 1042 700 1049 980 647 792 -347 148 730 152 1096 1105 589 122 145 122 701 278 566 397 695 395 699 584 292 401 -270 75 501 80 687 610 236 67 71 69 283 119 235 133 299 131 301 200 118 121 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -78 170 16 127 15 14 14 31 15 175 18 74 52 72 21 73 20 18 51 21 -242 662 95 420 96 92 93 378 108 783 188 488 366 462 253 463 247 212 414 310 -236 796 167 545 176 169 176 748 223 1068 483 872 679 813 542 814 536 537 802 675 -312 765 254 633 275 271 286 1023 491 1225 859 1274 1030 1183 895 1185 890 946 1230 1105 -415 656 360 596 402 402 422 1115 737 1139 1215 1535 1307 1436 1214 1437 1211 1309 1531 1444 -626 625 563 579 644 640 622 1021 884 939 1479 1610 1489 1550 1458 1550 1458 1537 1629 1601 -1017 920 904 842 1040 949 914 963 959 913 1716 1706 1721 1716 1721 1714 1721 1707 1700 1700 -1262 1208 1033 1097 1173 998 992 970 963 1039 1770 1788 1840 1829 1815 1826 1814 1730 1739 1718 -1184 1227 893 1110 982 983 977 936 966 1163 1724 1799 1807 1818 1769 1816 1767 1706 1754 1719 -723 742 696 679 815 1014 1036 700 842 758 1637 1524 1550 1520 1599 1518 1602 1642 1567 1611 -479 458 701 428 892 1178 1086 472 602 468 1525 1213 1334 1236 1453 1235 1459 1503 1293 1401 -357 302 729 289 1014 1267 997 306 357 297 1279 860 1067 923 1216 921 1223 1218 932 1067 -368 216 716 213 1083 1217 811 205 242 201 990 551 809 646 954 643 960 897 595 726 -331 144 680 148 1012 1019 547 119 142 119 659 272 536 381 654 379 658 551 285 384 -253 73 463 77 628 557 218 64 68 66 267 116 223 131 282 129 283 192 115 118 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -164 425 67 275 69 66 67 247 78 501 126 313 237 297 166 298 163 141 266 201 -132 307 91 226 99 96 100 292 128 401 224 355 289 335 244 335 242 242 331 288 -284 672 229 557 248 244 258 887 435 1062 756 1112 903 1034 788 1036 783 831 1074 966 -382 595 328 540 366 367 388 987 660 1010 1087 1366 1167 1280 1086 1281 1083 1168 1362 1285 -576 592 515 549 588 587 582 1036 879 941 1464 1619 1476 1548 1440 1548 1440 1532 1641 1607 -978 891 870 816 1001 921 905 975 969 907 1720 1720 1720 1720 1719 1718 1719 1720 1719 1719 -1207 1158 994 1053 1129 977 995 970 974 1009 1778 1792 1832 1823 1812 1821 1812 1747 1754 1738 -1239 1288 928 1164 1016 1029 1031 972 1015 1216 1831 1908 1916 1928 1878 1926 1876 1813 1862 1827 -846 893 758 813 869 1006 1019 799 881 911 1662 1616 1627 1614 1647 1613 1648 1664 1634 1651 -532 521 730 484 918 1184 1098 530 640 534 1569 1282 1393 1304 1503 1302 1508 1548 1355 1455 -395 339 768 324 1059 1312 1039 343 395 334 1352 930 1139 994 1289 992 1296 1291 1002 1138 -391 231 749 227 1124 1259 842 218 258 213 1038 585 851 683 1001 681 1007 942 631 766 -340 147 699 151 1037 1043 559 122 144 122 676 280 550 392 671 389 675 565 292 394 -263 72 484 77 651 576 222 62 66 64 273 113 227 131 288 129 289 194 113 116 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -30 32 26 29 29 29 29 31 30 33 54 56 55 55 54 55 54 54 55 55 -74 81 62 74 69 67 69 81 74 87 132 140 136 139 133 139 133 133 138 136 -65 67 57 62 64 64 65 69 66 70 121 123 122 123 121 123 121 121 123 122 -85 87 76 81 84 85 86 91 88 92 161 164 162 163 161 163 161 162 164 163 -101 103 90 95 101 102 104 108 106 108 193 196 194 195 193 195 193 195 196 196 -155 171 137 157 156 174 230 303 296 239 461 489 445 463 444 463 444 486 507 505 -207 212 198 196 228 280 365 343 390 253 656 644 610 617 625 617 626 681 676 689 -161 158 153 147 173 184 190 174 183 165 340 333 332 330 336 330 336 342 337 341 -170 156 216 145 264 391 406 183 285 161 585 486 509 482 551 482 553 588 522 561 -247 217 418 205 540 745 676 233 341 219 914 685 773 702 861 701 865 897 742 822 -198 160 387 153 535 666 523 162 197 157 662 443 551 476 629 475 633 630 480 551 -131 105 150 99 183 194 161 101 114 100 251 211 234 220 247 219 248 242 215 227 -197 99 362 98 522 524 294 87 98 88 371 185 312 237 369 236 371 319 191 238 -100 38 161 38 207 185 83 30 33 31 113 61 100 71 118 70 118 89 60 65 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 30 6 24 7 6 6 11 7 31 9 18 15 18 10 18 10 9 14 10 -79 153 42 109 46 44 45 103 52 178 73 129 105 124 84 124 83 77 114 94 -142 361 98 262 106 102 105 338 134 474 249 409 330 385 273 385 271 271 379 327 -224 490 176 409 192 189 200 629 325 752 553 797 654 744 575 745 572 603 770 696 -368 598 315 542 350 351 372 1007 658 1035 1092 1389 1179 1298 1092 1299 1089 1178 1384 1302 -396 446 347 413 393 399 426 861 707 769 1159 1320 1172 1246 1135 1247 1135 1229 1342 1306 -257 277 229 254 260 281 376 518 504 394 826 876 797 829 794 830 795 870 907 904 -655 646 575 592 657 669 801 764 828 641 1439 1428 1395 1402 1408 1401 1410 1464 1458 1471 -475 469 433 431 497 720 837 543 749 486 1392 1293 1282 1265 1335 1265 1338 1421 1356 1403 -641 647 652 594 772 1003 1028 631 801 663 1606 1458 1493 1452 1556 1451 1559 1612 1513 1570 -418 390 634 365 807 1075 984 406 533 397 1381 1084 1199 1106 1312 1105 1318 1359 1158 1261 -317 253 602 243 821 1015 802 256 316 244 1051 720 884 770 1002 768 1007 1002 775 882 -318 192 576 187 842 938 635 181 215 177 804 476 668 547 777 545 781 733 508 605 -269 126 512 127 742 744 410 106 124 106 512 239 426 316 509 314 512 435 247 318 -214 57 379 61 495 437 171 39 45 40 221 89 186 112 233 111 234 160 87 96 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -18 18 16 17 18 18 18 18 18 19 33 33 33 33 33 33 33 33 33 33 -53 55 46 50 51 50 51 55 52 57 95 98 96 97 95 97 95 95 97 96 -67 69 59 63 66 65 66 70 68 72 123 126 125 126 124 126 124 124 126 125 -120 182 97 161 110 110 122 276 194 285 286 361 308 338 286 338 285 307 360 339 -152 188 127 171 142 149 179 323 271 292 412 473 417 445 403 445 403 438 482 468 -179 198 159 182 180 201 263 346 337 275 537 569 519 540 517 540 518 565 589 587 -156 159 148 147 171 210 277 260 296 189 488 479 453 459 465 459 466 508 504 514 -134 132 125 123 141 147 150 141 146 137 271 267 266 265 268 265 268 272 269 271 -191 178 196 167 226 256 260 201 229 183 440 409 416 407 429 407 430 441 420 432 -114 108 110 101 126 132 130 112 119 109 226 216 220 217 224 217 224 226 219 222 -185 146 277 138 361 432 353 148 184 141 477 353 414 372 458 371 460 458 374 413 -132 90 196 86 272 299 215 87 100 86 276 185 238 204 268 204 269 256 194 220 -143 79 239 77 334 335 197 70 78 71 255 143 219 174 253 173 254 223 146 175 -128 40 219 41 283 250 103 31 34 32 134 61 115 74 141 74 141 100 60 65 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -88 191 18 147 16 15 15 34 16 196 19 82 59 81 23 82 22 19 57 23 -250 673 95 433 95 91 92 370 106 789 189 492 371 467 256 468 250 212 416 310 -236 788 162 544 169 163 169 723 212 1048 470 854 666 798 530 799 525 522 783 658 -294 719 237 595 256 252 266 933 445 1128 798 1179 958 1097 834 1099 829 877 1137 1021 -347 569 296 515 329 329 351 947 617 977 1029 1310 1112 1225 1030 1226 1027 1110 1305 1227 -449 497 396 461 449 454 474 943 775 847 1287 1458 1302 1381 1262 1382 1262 1361 1481 1443 -623 607 555 556 634 624 695 840 826 714 1406 1448 1383 1410 1380 1410 1381 1443 1474 1471 -1018 985 854 897 974 881 929 902 921 892 1635 1640 1656 1653 1648 1651 1649 1622 1625 1618 -785 791 648 722 734 873 938 747 881 789 1585 1549 1546 1539 1565 1538 1566 1597 1573 1590 -608 611 624 561 738 958 980 602 764 626 1535 1390 1424 1385 1486 1383 1489 1540 1443 1499 -211 178 293 167 364 471 432 195 267 177 609 483 532 493 580 492 582 599 514 558 -308 256 582 244 793 975 771 259 306 251 1013 700 856 748 966 746 971 966 753 853 -309 187 564 183 825 918 619 177 208 174 779 458 648 528 754 526 758 710 490 585 -149 82 249 80 347 348 204 73 81 74 267 151 229 183 265 182 266 233 154 184 -72 34 106 34 133 120 60 30 31 31 86 55 79 62 89 62 89 73 55 58 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -92 198 19 153 17 16 16 36 17 203 20 86 62 85 25 86 24 20 60 25 -234 616 91 399 92 87 89 340 102 720 182 455 346 433 242 434 237 202 386 291 -246 803 167 557 175 168 174 734 219 1064 484 873 683 816 546 817 540 537 801 674 -279 668 224 554 242 238 251 860 415 1041 743 1092 889 1017 775 1019 771 814 1053 946 -320 525 270 474 300 300 322 866 565 895 940 1198 1017 1120 941 1121 939 1014 1193 1121 -457 499 404 462 458 462 479 885 739 804 1230 1379 1243 1312 1208 1312 1208 1294 1398 1365 -670 646 597 592 683 666 720 846 833 738 1424 1459 1406 1428 1403 1427 1404 1454 1480 1477 -294 298 275 275 315 376 508 477 547 339 947 931 884 894 904 894 906 983 975 994 -239 230 242 213 281 404 473 308 421 249 774 708 701 689 736 689 738 792 749 780 -227 207 279 193 337 478 493 243 357 214 734 621 647 617 695 616 698 738 662 706 -390 360 594 338 754 1002 915 377 497 365 1289 1011 1120 1033 1226 1032 1231 1268 1081 1177 -319 266 627 254 857 1058 832 269 316 261 1089 745 917 798 1039 797 1044 1039 803 914 -105 71 162 66 232 255 180 68 77 68 217 138 184 155 211 154 212 200 145 169 -285 127 562 129 819 820 442 108 124 108 548 242 452 329 545 327 548 461 251 330 -249 68 451 72 587 518 200 58 62 59 256 106 216 129 270 128 271 185 106 109 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -74 157 16 122 14 14 14 29 14 161 17 69 50 69 21 69 20 17 48 21 -145 355 61 236 64 60 61 203 71 414 113 265 204 252 146 253 143 124 226 173 -103 206 69 157 76 73 76 193 98 263 154 235 195 223 166 223 165 165 219 193 -126 221 94 186 103 101 109 265 161 313 249 339 286 319 257 319 256 266 328 301 -145 215 114 191 127 127 145 314 226 325 344 428 369 403 344 403 344 368 427 403 -151 188 126 171 142 148 178 320 268 291 410 471 416 444 402 444 401 436 479 465 -187 202 166 186 189 205 275 384 372 293 604 643 583 608 581 608 581 637 666 663 -136 138 127 127 147 179 241 226 260 161 428 420 397 402 407 402 408 445 442 451 -139 134 140 123 165 238 280 181 248 144 441 400 396 389 417 389 418 451 425 444 -137 126 168 116 205 290 299 148 216 130 427 358 374 356 403 356 405 429 383 410 -155 130 217 122 274 355 325 143 197 130 445 349 386 356 423 356 425 438 372 406 -145 114 221 107 292 349 284 115 143 110 373 271 321 286 357 286 359 357 288 320 -134 92 199 87 275 301 216 88 101 87 279 188 242 208 272 207 273 259 197 223 -103 62 157 60 215 215 133 57 62 58 173 107 152 125 172 125 173 154 109 126 -71 32 107 31 134 120 59 26 28 27 83 50 74 57 85 57 86 68 49 52 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 -33 34 28 31 31 31 31 33 32 35 58 60 59 60 58 60 58 58 59 59 -103 205 69 157 76 73 76 192 98 262 154 234 194 222 166 222 165 164 219 192 -122 214 90 180 100 97 105 256 155 303 238 326 275 307 246 307 245 255 316 289 -111 116 97 107 108 108 112 123 118 125 212 219 214 217 212 217 212 214 219 217 -133 164 112 149 128 132 154 288 237 261 361 417 366 392 353 392 353 384 424 411 -215 233 191 214 217 235 322 461 445 345 732 781 707 737 703 738 704 774 810 806 -352 353 323 325 369 429 592 555 639 387 1122 1104 1050 1062 1073 1062 1075 1162 1154 1175 -350 342 335 315 386 579 683 428 605 361 1140 1047 1038 1021 1086 1021 1089 1166 1105 1149 -390 373 463 346 558 797 822 403 589 384 1254 1075 1117 1069 1193 1068 1197 1259 1140 1209 -301 269 473 253 601 805 731 286 392 271 1022 790 880 808 969 807 973 1004 847 927 -246 196 455 187 614 752 594 198 243 190 785 544 664 581 750 580 754 749 584 661 -180 125 262 119 353 386 281 120 138 119 380 267 333 291 371 291 373 355 278 311 -137 85 201 82 269 269 170 78 85 79 236 156 210 178 235 177 236 213 158 179 -71 32 107 31 134 120 58 26 28 27 82 49 74 56 85 56 85 67 48 51 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 110 12 86 11 10 10 21 11 112 13 49 36 49 16 49 15 13 35 16 -189 480 74 316 76 72 73 264 84 559 146 356 273 340 192 340 189 161 302 229 -128 342 84 244 91 88 91 312 115 447 214 368 293 346 238 346 236 234 339 288 -249 564 196 470 213 209 222 709 354 858 629 910 747 850 655 851 652 685 877 791 -363 586 310 530 345 345 366 946 620 982 1049 1325 1132 1243 1051 1244 1049 1127 1318 1242 -440 489 388 453 440 444 464 874 724 795 1211 1363 1226 1296 1190 1296 1189 1275 1383 1348 -883 817 787 748 905 850 855 955 944 872 1659 1673 1652 1661 1650 1660 1651 1671 1681 1680 -1100 1060 916 963 1045 930 974 946 963 945 1732 1740 1763 1758 1752 1756 1752 1714 1718 1709 -1146 1185 873 1072 967 1009 1023 937 997 1132 1795 1845 1850 1858 1825 1856 1824 1783 1815 1792 -686 699 678 641 796 1000 1020 671 815 716 1622 1496 1526 1492 1580 1491 1583 1626 1543 1591 -471 450 696 420 879 1153 1055 463 582 459 1510 1205 1325 1229 1441 1228 1447 1487 1281 1386 -361 306 700 292 950 1165 919 309 358 301 1219 845 1033 904 1165 902 1171 1164 908 1028 -365 216 684 212 1000 1109 742 204 239 200 940 546 779 632 909 630 914 854 584 700 -322 141 634 143 919 918 493 118 137 119 618 274 510 372 614 370 618 520 283 373 -284 67 512 74 656 576 217 45 53 48 284 104 238 139 300 138 302 202 102 112 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -107 227 22 176 20 19 19 40 20 231 23 99 71 98 29 98 28 23 69 30 -256 666 98 435 98 93 95 359 109 774 197 492 375 469 263 470 257 218 417 313 -141 357 94 260 102 98 101 325 128 463 240 397 321 375 265 375 263 261 368 316 -132 229 98 193 108 105 113 272 166 322 260 352 298 333 268 333 267 278 341 313 -288 476 241 429 267 267 289 768 500 799 837 1067 906 998 838 999 836 901 1061 997 -383 443 335 411 378 384 412 849 688 764 1147 1312 1164 1239 1125 1240 1124 1217 1333 1295 -472 498 421 458 477 505 696 1039 1000 759 1706 1819 1648 1719 1640 1720 1641 1801 1885 1876 -1238 1185 1018 1076 1160 1001 1022 995 1001 1030 1836 1849 1890 1881 1871 1879 1870 1804 1810 1794 -1131 1167 864 1056 957 1003 1018 930 992 1117 1784 1831 1836 1843 1813 1841 1811 1773 1803 1782 -810 849 753 774 871 1040 1055 776 882 867 1714 1635 1654 1632 1687 1631 1689 1716 1664 1694 -521 508 746 473 938 1217 1116 517 629 519 1612 1306 1427 1330 1543 1329 1549 1589 1382 1488 -401 345 806 331 1100 1351 1062 349 398 341 1407 969 1190 1039 1345 1036 1352 1343 1043 1184 -415 240 801 237 1178 1307 868 227 265 222 1096 623 904 728 1059 725 1065 993 669 809 -372 156 753 160 1098 1097 581 130 152 130 724 308 594 427 720 425 724 606 319 428 -310 85 557 90 717 632 244 74 78 76 317 133 269 164 335 162 336 231 132 136 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -122 262 23 203 21 21 21 44 21 267 24 112 80 111 31 111 30 24 76 32 -277 730 103 476 103 97 99 387 113 848 208 534 405 508 281 509 275 231 450 336 -176 504 116 358 124 119 123 454 155 659 314 548 435 515 352 515 348 345 503 427 -161 274 120 234 132 128 138 323 200 382 325 433 370 410 335 410 334 346 420 387 -263 423 215 380 238 238 263 656 440 682 728 920 786 863 729 863 728 781 914 861 -432 484 380 448 430 435 456 866 714 789 1198 1352 1214 1284 1177 1285 1177 1262 1371 1336 -816 765 727 700 834 794 821 945 931 845 1627 1653 1614 1630 1612 1629 1612 1649 1667 1665 -1250 1196 1028 1085 1170 1008 1025 998 1002 1037 1841 1854 1897 1888 1878 1886 1877 1808 1814 1798 -917 934 732 849 824 931 977 823 931 915 1674 1667 1666 1664 1670 1663 1671 1677 1672 1675 -390 373 461 346 555 789 812 402 584 384 1246 1071 1113 1065 1187 1064 1191 1252 1135 1202 -377 346 583 325 739 982 892 362 479 351 1266 991 1099 1012 1204 1011 1209 1245 1059 1154 -317 264 624 253 847 1039 817 267 314 260 1080 743 913 797 1032 795 1038 1031 800 908 -327 195 611 190 890 985 659 184 215 182 837 488 695 565 810 563 814 761 522 625 -321 139 633 141 917 916 489 117 136 118 615 272 508 370 612 368 615 517 281 371 -315 72 570 79 729 640 238 48 56 51 313 110 262 151 331 149 333 221 108 119 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -36 69 12 55 12 11 11 19 12 71 15 36 29 36 17 36 17 15 28 17 -180 434 74 292 77 72 73 242 86 503 144 329 256 315 185 315 182 157 281 216 -198 536 131 387 139 134 139 483 175 697 351 595 477 560 391 561 387 384 548 468 -229 476 176 400 191 187 200 582 310 703 543 765 637 718 564 719 561 586 738 670 -209 319 169 286 188 188 209 472 328 491 531 661 570 622 532 623 531 567 657 621 -202 252 169 231 189 197 235 414 346 380 553 632 561 597 543 597 543 586 641 623 -213 237 189 218 214 237 306 403 391 326 641 679 621 645 619 646 619 672 701 698 -160 161 148 149 166 173 180 177 181 170 332 331 327 328 329 328 329 335 334 336 -165 157 171 146 200 279 323 218 289 173 520 475 470 463 494 462 495 532 503 524 -195 175 238 163 286 390 401 212 299 181 602 513 534 510 572 510 574 605 545 580 -448 425 626 396 782 1005 923 438 539 433 1338 1088 1186 1107 1281 1106 1286 1318 1150 1236 -279 222 528 213 709 868 684 225 275 215 912 630 772 674 871 673 876 870 677 767 -307 185 559 181 807 892 601 176 204 173 768 457 641 525 744 523 748 700 487 579 -274 126 518 127 741 739 403 107 123 108 514 243 429 321 512 319 514 437 251 322 -236 62 415 66 528 464 180 43 50 45 241 95 205 126 254 125 255 176 93 102 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -120 257 23 198 21 20 20 43 20 260 23 109 78 108 31 108 30 23 74 31 -247 628 96 415 97 92 93 336 107 727 193 468 359 447 254 447 249 212 397 301 -259 815 169 572 177 170 176 726 220 1069 490 881 693 826 554 827 549 542 806 678 -316 758 255 629 276 272 285 947 453 1156 840 1224 1004 1144 877 1146 872 916 1178 1061 -421 661 365 599 407 407 425 1039 686 1083 1182 1475 1272 1389 1185 1390 1182 1263 1467 1385 -604 612 543 567 621 618 603 894 784 846 1340 1440 1351 1396 1326 1396 1326 1381 1451 1429 -831 775 741 709 851 807 815 911 899 835 1575 1591 1567 1577 1565 1576 1565 1588 1600 1598 -598 591 528 541 603 620 745 714 774 594 1355 1345 1311 1319 1325 1318 1327 1381 1376 1389 -485 479 439 440 504 691 789 541 713 495 1333 1249 1240 1226 1284 1225 1287 1356 1301 1341 -419 404 484 374 581 811 834 429 607 415 1288 1117 1158 1111 1230 1111 1235 1294 1179 1245 -352 321 543 301 687 912 828 337 448 324 1176 920 1021 941 1119 940 1123 1156 984 1072 -359 304 708 291 960 1175 924 307 355 299 1231 852 1043 912 1177 910 1183 1175 915 1037 -403 235 770 231 1124 1243 828 222 260 218 1054 608 873 707 1020 704 1025 957 651 783 -366 155 728 158 1054 1052 559 129 151 129 705 307 581 422 701 419 705 592 318 423 -307 72 551 79 704 617 232 49 57 51 307 110 258 152 325 150 326 219 108 119 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -128 273 25 210 22 22 22 46 22 277 25 117 84 116 35 116 33 25 80 35 -273 705 103 464 104 98 99 371 114 815 209 520 398 496 279 497 273 231 440 331 -270 835 176 588 184 177 183 742 228 1093 507 906 715 850 574 851 567 561 830 699 -319 766 258 636 279 275 288 953 455 1165 848 1235 1013 1154 886 1156 881 924 1188 1070 -430 670 373 607 417 417 434 1045 693 1091 1196 1489 1287 1403 1200 1404 1197 1278 1480 1399 -694 686 629 638 721 714 678 1010 885 957 1530 1637 1542 1590 1515 1590 1515 1575 1650 1625 -1113 986 993 903 1148 1039 952 965 962 955 1765 1735 1780 1761 1781 1759 1781 1740 1717 1719 -1019 984 856 895 977 883 933 906 925 892 1647 1651 1667 1664 1660 1662 1660 1635 1637 1631 -1007 1033 785 937 879 922 938 860 914 1001 1624 1656 1659 1664 1643 1662 1642 1616 1637 1622 -745 769 712 703 830 1010 1025 722 842 787 1654 1555 1579 1552 1621 1551 1624 1657 1592 1630 -494 477 716 444 899 1170 1070 487 599 487 1550 1250 1369 1274 1482 1273 1488 1526 1324 1428 -391 336 776 321 1051 1286 1012 339 387 332 1351 938 1148 1004 1294 1002 1300 1291 1008 1141 -420 247 790 243 1148 1268 848 233 273 228 1087 635 904 735 1052 732 1058 989 678 812 -368 156 730 159 1056 1054 560 130 152 130 708 310 584 424 705 422 708 595 321 426 -336 94 599 99 770 679 263 82 87 85 347 146 296 183 366 181 367 254 145 149 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -134 286 24 219 22 21 21 46 21 290 24 120 85 119 34 119 32 24 81 34 -247 628 95 415 95 90 92 332 105 726 191 465 358 445 252 446 247 210 394 298 -254 759 166 538 174 167 172 673 216 990 469 826 655 777 528 778 523 516 758 641 -311 753 251 625 271 267 280 936 444 1145 829 1210 992 1131 866 1133 861 904 1165 1047 -405 649 349 588 389 389 407 1026 670 1073 1157 1454 1249 1367 1160 1368 1158 1239 1445 1362 -629 644 566 599 647 644 626 1007 863 944 1484 1615 1499 1558 1467 1559 1467 1538 1631 1600 -1065 950 950 870 1097 1000 931 962 957 939 1738 1717 1748 1735 1749 1734 1749 1721 1704 1706 -1372 1305 1118 1183 1273 1065 1048 1024 1012 1106 1888 1906 1970 1956 1942 1953 1941 1839 1847 1824 -1238 1288 928 1162 1021 1026 1023 979 1010 1219 1821 1900 1907 1920 1867 1918 1865 1801 1852 1816 -898 960 799 873 911 1043 1053 848 914 980 1744 1711 1719 1709 1733 1708 1734 1745 1723 1736 -559 553 768 514 959 1225 1127 559 656 568 1652 1363 1478 1386 1587 1385 1593 1629 1435 1534 -411 356 820 340 1112 1359 1070 359 407 352 1431 994 1216 1064 1370 1062 1377 1367 1068 1208 -427 248 822 244 1201 1327 882 234 274 230 1126 647 932 754 1089 751 1095 1022 693 835 -392 163 781 167 1132 1129 598 135 159 135 755 327 622 450 751 447 756 633 338 451 -332 93 589 98 758 668 259 81 86 83 343 144 293 182 362 180 363 252 144 147 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -123 260 24 199 22 21 21 44 21 263 24 111 80 111 34 111 33 25 76 34 -270 691 102 456 102 97 98 362 112 798 206 510 391 487 275 488 269 227 431 325 -265 815 172 575 179 172 178 719 222 1064 493 881 696 827 558 828 552 544 806 679 -311 750 251 622 271 266 279 929 441 1138 825 1204 987 1125 862 1127 857 899 1158 1041 -422 683 365 618 407 407 425 1084 702 1135 1220 1536 1318 1444 1224 1445 1221 1307 1526 1438 -438 541 378 504 424 434 481 1129 885 1011 1495 1745 1524 1636 1463 1638 1462 1598 1774 1716 -836 780 746 713 856 813 829 950 935 859 1642 1665 1631 1646 1629 1645 1629 1661 1678 1676 -810 791 698 723 797 767 877 846 894 754 1578 1573 1556 1560 1562 1559 1564 1591 1588 1595 -458 451 419 415 481 671 771 520 694 468 1307 1220 1211 1196 1256 1195 1259 1331 1274 1315 -474 462 532 427 635 872 894 480 661 475 1395 1223 1264 1217 1337 1217 1341 1400 1286 1352 -345 313 534 294 675 897 813 330 439 316 1158 906 1005 926 1102 925 1106 1139 968 1055 -297 245 572 235 770 941 741 248 292 241 987 685 838 733 945 731 950 943 735 833 -306 184 560 179 807 890 599 175 203 172 769 457 642 526 745 524 749 701 487 579 -302 133 580 135 834 832 448 114 130 114 570 262 474 350 568 348 571 482 270 351 -206 56 355 60 454 399 157 41 46 43 211 86 181 114 223 113 224 156 84 92 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -33 65 8 50 8 7 7 14 8 66 10 31 23 31 12 31 12 10 22 12 -76 147 38 106 42 40 41 93 47 169 66 119 98 115 77 115 76 69 105 86 -254 795 164 559 171 164 170 698 211 1038 472 852 671 800 536 801 530 523 779 655 -230 546 181 453 196 192 203 673 323 826 590 865 708 808 617 809 614 643 831 747 -211 360 173 323 191 191 210 572 368 600 610 787 665 735 613 736 611 659 781 732 -245 304 208 280 234 241 276 553 447 503 733 846 746 797 719 798 718 779 859 833 -237 256 210 235 238 256 340 486 466 374 781 833 757 789 753 790 753 823 861 856 -159 160 147 149 165 172 178 175 179 169 329 328 324 325 326 325 326 332 331 333 -160 153 166 142 194 270 313 212 280 168 505 461 457 449 479 449 481 517 488 509 -132 127 125 118 142 149 149 134 141 130 266 258 260 258 263 257 263 266 261 264 -321 277 456 261 567 732 669 299 400 277 966 770 847 786 922 785 926 951 818 886 -305 242 560 232 746 907 719 245 300 234 970 680 827 726 929 725 934 927 729 822 -308 192 514 186 715 785 544 180 215 176 725 463 618 520 704 519 708 667 488 565 -279 135 497 134 698 697 389 115 132 116 515 267 437 337 513 336 515 444 273 338 -282 75 488 80 625 549 215 50 59 53 293 117 250 157 308 156 310 216 115 126 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -66 129 18 99 18 17 17 30 18 130 22 63 48 62 27 62 26 22 46 27 -100 215 46 150 50 48 48 126 55 247 82 167 133 161 101 161 99 88 144 114 -122 280 80 208 87 84 87 251 108 358 192 310 253 293 211 293 210 207 287 248 -126 221 93 186 102 99 107 258 156 308 245 333 282 315 253 315 252 261 322 295 -295 488 247 440 273 273 294 767 498 806 847 1077 918 1010 850 1011 847 909 1069 1005 -582 612 522 569 596 594 588 993 838 926 1439 1583 1456 1521 1420 1522 1420 1498 1600 1566 -680 653 606 598 694 677 715 837 820 747 1417 1449 1402 1422 1399 1421 1399 1443 1466 1463 -823 802 706 732 806 756 806 784 803 756 1402 1403 1405 1405 1404 1404 1404 1400 1400 1399 -797 806 651 734 737 796 820 733 792 799 1390 1391 1390 1390 1390 1389 1390 1390 1390 1390 -248 228 312 212 377 543 560 265 398 235 851 718 750 714 806 714 809 855 767 818 -100 96 95 89 108 112 110 99 103 97 195 189 191 189 194 189 194 194 190 192 -143 124 153 117 181 195 178 125 142 121 292 261 277 266 288 266 288 288 266 276 -151 104 222 98 300 327 236 99 114 98 315 218 275 239 308 238 309 294 227 255 -160 88 259 86 355 355 210 78 87 79 281 164 244 197 280 196 281 247 167 198 -174 52 293 54 375 331 134 39 44 41 183 80 158 104 192 103 193 138 78 85 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -29 30 26 28 28 28 28 30 29 31 52 54 53 53 52 53 52 52 53 53 -91 187 59 140 66 64 66 169 82 238 128 202 166 191 140 191 139 137 187 162 -88 94 76 86 85 84 86 97 91 101 164 171 167 169 164 169 164 165 170 168 -132 142 114 131 126 126 132 154 143 157 256 269 260 266 256 265 256 260 269 265 -155 195 129 178 145 151 180 323 267 298 418 481 425 453 410 454 410 443 488 473 -144 157 127 144 145 157 202 277 266 221 426 454 413 430 411 431 411 448 469 466 -176 177 163 164 183 192 202 199 203 189 373 372 367 368 369 368 369 377 377 379 -152 146 154 135 180 253 296 197 264 158 477 437 432 425 453 425 455 488 462 481 -152 136 185 127 224 307 316 165 234 141 465 394 410 391 440 391 442 467 419 447 -187 161 282 151 355 469 426 174 241 161 593 460 512 471 563 470 566 583 493 539 -205 165 400 158 541 663 520 167 202 162 680 464 573 498 650 497 653 648 500 569 -171 106 303 102 435 478 325 102 116 101 411 247 344 283 398 282 400 375 263 311 -123 65 208 63 293 292 168 59 64 60 213 114 182 142 212 142 213 185 117 143 -43 33 48 31 56 53 40 30 31 31 66 57 64 60 66 60 66 62 56 58 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -20 38 6 29 6 6 6 10 6 39 8 20 16 20 10 20 10 8 15 10 -76 147 38 106 42 40 41 92 47 168 66 119 98 115 77 115 76 69 105 86 -191 522 123 376 131 126 130 459 163 676 330 568 455 536 370 536 367 362 522 444 -111 204 83 170 93 91 96 240 139 289 216 300 252 283 224 283 223 232 290 263 -134 201 105 178 117 116 132 287 203 301 311 390 335 367 312 367 311 332 387 365 -126 157 106 143 121 124 144 273 222 250 340 395 347 371 334 372 334 362 401 388 -127 138 111 126 128 138 179 248 238 196 376 401 365 380 362 380 363 396 415 413 -79 78 72 73 80 81 81 80 80 81 149 149 149 149 149 149 149 150 150 150 -153 147 155 136 181 254 297 198 266 159 480 439 435 428 456 428 457 491 465 484 -412 396 476 367 570 795 816 423 597 408 1270 1102 1142 1097 1213 1096 1217 1275 1163 1228 -445 421 653 393 820 1073 978 435 546 429 1418 1137 1248 1159 1354 1158 1360 1396 1206 1303 -270 222 510 212 683 832 658 224 266 217 878 613 747 655 841 653 845 839 657 742 -276 167 500 163 714 786 532 158 185 156 691 417 579 477 669 475 673 631 443 524 -251 117 460 117 654 653 359 101 114 102 462 226 388 293 460 292 462 395 232 294 -183 55 307 57 396 349 142 41 45 43 193 84 167 110 203 109 204 146 82 89 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 40 7 31 7 7 7 11 7 40 9 21 17 21 11 21 11 9 16 11 -68 136 33 97 36 35 35 83 40 156 57 108 87 104 68 104 67 60 94 76 -207 599 133 427 140 135 139 523 173 777 365 644 511 606 412 607 408 402 590 498 -180 378 138 317 150 147 156 454 237 553 415 590 490 554 433 555 430 449 569 514 -227 382 186 343 206 206 226 596 385 627 645 826 701 774 647 774 646 694 820 769 -160 202 133 184 149 155 185 334 276 308 434 499 441 471 426 471 425 460 506 491 -168 188 149 172 169 186 240 322 310 261 501 533 487 506 484 506 484 526 551 547 -213 217 200 200 229 273 370 354 403 251 701 692 655 663 670 664 671 728 724 737 -177 169 184 157 215 296 344 235 309 186 563 515 510 502 535 502 536 575 545 567 -220 201 271 188 326 460 474 235 344 208 719 610 636 606 682 606 684 722 650 691 -211 181 311 170 389 511 465 195 268 181 656 513 569 524 623 524 626 645 548 597 -190 151 318 143 419 505 405 152 187 147 542 389 466 413 521 412 523 520 414 463 -152 104 225 99 304 331 239 100 115 99 320 221 279 242 312 241 313 298 230 259 -122 74 181 71 244 243 152 67 73 68 206 132 182 153 205 152 206 184 134 153 -79 36 117 35 147 131 65 30 31 31 93 56 84 65 96 65 96 77 55 59 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -109 227 21 167 19 18 18 38 19 229 22 97 71 97 33 97 31 22 67 32 -268 686 98 452 99 93 95 350 108 789 198 499 382 477 267 478 261 218 420 314 -243 740 156 523 163 156 162 642 201 962 441 792 626 744 501 745 496 488 724 609 -309 756 249 626 268 264 277 925 433 1140 821 1201 985 1123 859 1125 854 893 1154 1036 -402 650 346 588 385 385 403 1017 658 1069 1146 1443 1239 1357 1151 1359 1148 1227 1432 1349 -572 599 512 557 584 583 577 944 802 886 1376 1508 1393 1452 1360 1452 1360 1430 1523 1492 -697 667 622 610 712 692 724 845 827 759 1432 1462 1418 1437 1415 1436 1415 1456 1478 1475 -882 856 753 781 860 798 858 835 857 798 1511 1512 1516 1515 1514 1514 1514 1509 1509 1508 -846 858 685 781 775 847 879 771 845 846 1499 1497 1497 1497 1498 1495 1498 1499 1498 1499 -685 700 661 641 772 938 953 669 785 717 1538 1440 1463 1437 1505 1436 1507 1541 1476 1514 -430 404 646 378 813 1075 977 419 536 411 1411 1122 1236 1145 1346 1144 1352 1389 1194 1294 -316 264 593 252 793 964 765 267 313 259 1029 725 879 774 987 772 992 986 776 874 -313 190 572 185 819 901 611 181 210 178 790 474 661 544 765 541 769 721 504 597 -312 137 591 139 847 846 457 117 134 118 586 272 488 363 583 361 586 497 281 364 -252 69 429 73 555 485 193 48 55 51 264 107 226 144 277 142 278 196 105 115 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -93 193 19 141 17 16 16 34 17 194 20 84 61 84 30 84 28 20 58 29 -183 437 73 295 75 71 72 234 83 501 141 326 253 312 182 312 179 153 277 211 -185 469 120 345 128 123 127 413 160 603 316 524 425 495 351 496 348 343 483 415 -249 575 196 478 212 208 219 696 340 856 625 905 746 848 653 849 649 678 870 784 -231 369 188 332 207 207 229 553 371 582 617 778 667 732 619 732 618 660 773 727 -307 378 262 349 294 302 342 679 548 622 912 1050 929 991 896 992 895 968 1065 1033 -672 646 599 592 686 670 708 839 820 747 1416 1451 1401 1423 1398 1422 1398 1444 1470 1466 -303 308 283 284 323 376 503 482 544 349 956 945 898 909 916 909 918 991 986 1002 -439 432 403 398 463 624 712 500 647 450 1207 1132 1123 1111 1162 1110 1165 1228 1179 1214 -354 336 420 312 504 713 734 368 532 346 1136 977 1014 972 1082 971 1085 1141 1035 1096 -253 218 382 205 480 636 577 235 325 218 820 641 711 654 780 654 783 806 685 747 -211 168 378 160 502 609 485 170 208 164 647 456 552 486 621 485 624 619 488 549 -292 178 520 173 738 812 554 168 197 165 724 443 609 504 702 503 705 662 470 553 -369 156 716 159 1033 1032 551 131 152 131 703 313 582 426 700 424 703 593 324 428 -304 75 528 81 684 597 230 52 60 54 311 116 264 161 328 159 329 226 113 124 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -90 186 18 136 17 16 16 33 17 188 20 81 59 81 29 81 27 20 56 28 -263 675 96 444 97 91 93 342 106 775 193 488 374 467 260 468 255 212 411 307 -258 800 165 565 172 165 171 692 212 1042 471 854 673 802 537 803 532 522 780 654 -315 798 255 659 274 269 282 977 447 1209 856 1263 1032 1180 896 1182 891 933 1213 1086 -388 639 333 578 370 370 389 1005 645 1059 1123 1422 1217 1335 1127 1337 1125 1204 1411 1327 -534 572 476 532 542 542 545 938 785 876 1344 1489 1363 1427 1327 1428 1326 1403 1505 1471 -577 567 514 520 588 584 652 824 799 702 1376 1428 1354 1385 1349 1385 1348 1417 1455 1450 -584 577 518 529 591 611 763 735 804 585 1422 1413 1369 1379 1386 1379 1388 1455 1451 1466 -543 539 481 494 550 707 791 583 728 552 1344 1277 1269 1257 1303 1257 1306 1362 1319 1350 -563 561 582 516 686 884 904 561 708 575 1436 1301 1333 1296 1390 1295 1393 1440 1350 1402 -372 342 551 320 692 911 829 358 465 347 1195 951 1047 970 1140 969 1145 1177 1012 1096 -352 299 696 286 937 1143 904 302 349 294 1211 843 1030 902 1161 900 1167 1159 906 1025 -391 231 752 227 1091 1202 806 219 254 215 1034 601 858 697 1000 694 1006 940 643 772 -364 153 708 156 1023 1023 546 129 150 130 695 309 575 421 692 418 695 586 319 423 -299 73 522 79 677 591 227 51 58 53 304 111 257 156 321 154 323 220 109 119 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -123 258 22 187 21 20 20 41 20 259 23 108 78 108 35 108 33 23 73 34 -265 676 98 446 98 93 94 343 107 776 195 491 376 470 263 470 257 214 413 309 -228 715 145 502 152 146 150 617 187 931 413 755 593 709 472 710 466 458 688 576 -235 522 184 435 199 195 206 628 316 770 571 819 678 768 595 769 592 618 788 711 -368 556 314 503 350 350 369 823 560 865 959 1182 1029 1117 962 1118 960 1019 1173 1111 -524 544 468 503 533 533 533 768 675 734 1146 1233 1157 1196 1135 1196 1135 1181 1243 1222 -840 773 751 707 864 813 764 759 759 767 1328 1310 1335 1325 1337 1323 1336 1314 1300 1302 -634 625 557 572 637 631 714 694 730 619 1266 1262 1242 1247 1250 1246 1251 1280 1278 1285 -635 635 546 581 623 743 805 643 755 643 1363 1319 1314 1307 1337 1306 1338 1375 1347 1367 -522 517 542 476 639 819 838 524 660 530 1328 1202 1232 1198 1285 1197 1288 1332 1249 1297 -418 391 607 366 760 996 909 406 515 398 1318 1058 1160 1078 1259 1077 1264 1298 1123 1212 -371 317 709 302 951 1157 920 320 367 313 1239 874 1060 933 1190 931 1195 1188 936 1055 -283 173 509 168 724 797 543 164 192 161 708 431 595 492 686 490 689 648 458 539 -316 140 594 142 851 851 463 119 138 120 595 280 497 371 592 369 595 506 288 373 -212 61 358 64 461 404 164 45 50 46 223 93 192 124 234 123 235 167 92 100 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -66 136 14 99 13 12 12 25 13 137 15 60 44 60 22 60 21 15 42 21 -67 135 33 96 36 35 35 82 40 154 56 107 87 103 67 103 66 60 93 75 -146 369 93 268 101 97 100 324 125 475 235 398 320 375 262 375 260 256 365 312 -190 430 146 357 159 156 165 518 257 638 457 665 546 622 478 623 475 496 639 574 -209 344 170 308 188 188 207 523 344 551 571 727 620 682 573 683 572 613 721 677 -189 237 160 218 180 185 213 426 342 390 553 641 564 603 542 604 542 588 650 630 -237 257 210 236 238 256 337 490 467 381 784 838 761 794 756 794 757 826 866 861 -249 253 232 233 265 315 441 423 483 290 851 841 795 806 813 806 814 885 881 897 -317 309 306 285 354 514 605 395 542 328 1026 946 936 923 978 922 981 1048 997 1034 -246 227 309 211 373 541 559 263 399 234 853 721 752 716 808 716 811 858 770 821 -234 202 362 191 456 609 552 218 306 203 781 605 674 619 741 618 744 767 649 709 -304 253 581 241 779 950 754 256 301 248 1009 705 859 754 967 752 972 966 757 855 -341 206 637 201 917 1011 684 195 227 192 881 523 735 602 853 599 857 803 558 664 -341 147 657 149 948 949 510 125 144 125 651 295 540 397 647 395 650 550 305 400 -308 75 539 82 700 612 236 52 60 55 317 116 268 162 334 161 335 230 113 124 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -99 205 20 149 18 17 17 35 18 206 21 88 65 88 31 88 29 21 61 30 -232 577 87 384 88 82 83 297 97 662 170 420 323 402 227 402 222 186 354 266 -198 491 128 362 137 131 135 431 171 629 336 552 449 522 373 523 370 364 509 438 -243 504 185 423 201 196 209 600 317 731 566 796 665 749 588 749 585 609 767 695 -292 465 238 418 262 262 289 694 465 731 783 985 847 927 786 928 784 837 978 921 -285 363 241 334 268 278 327 619 503 569 834 959 850 906 819 907 818 884 973 943 -303 338 270 311 304 333 433 601 574 481 971 1035 945 983 938 984 939 1021 1068 1061 -1210 1151 998 1044 1139 955 882 866 827 990 1498 1515 1586 1569 1558 1567 1556 1446 1451 1427 -1124 1160 854 1049 947 870 824 885 838 1102 1441 1538 1550 1566 1499 1563 1496 1414 1476 1431 -656 668 613 611 712 829 841 641 721 683 1363 1298 1313 1296 1341 1295 1342 1365 1322 1347 -469 450 635 418 788 1009 929 461 558 459 1365 1126 1219 1144 1310 1143 1315 1347 1185 1268 -316 264 590 252 789 960 765 267 313 260 1028 726 879 774 986 772 991 986 777 875 -276 173 474 167 664 731 506 163 193 161 668 420 566 474 648 472 651 614 444 517 -186 109 290 106 395 395 240 100 108 101 332 207 292 242 331 241 332 296 211 243 -122 48 190 48 240 213 99 39 42 40 141 77 126 93 146 93 147 114 76 82 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 -15 15 13 14 15 15 15 15 15 15 27 27 27 27 27 27 27 27 27 27 -35 35 31 32 34 34 34 35 35 36 63 64 64 64 63 64 63 63 64 64 -64 66 56 60 63 62 63 67 65 69 118 120 119 120 118 120 118 118 120 119 -100 104 88 96 98 98 101 109 105 111 190 196 192 194 190 194 190 192 195 194 -111 114 99 105 111 112 115 120 118 121 215 218 215 217 214 217 214 216 219 218 -95 96 86 89 97 97 99 99 99 99 183 183 182 183 182 183 182 183 184 184 -168 169 155 157 174 182 190 187 191 180 352 351 346 347 348 347 348 355 355 356 -167 164 158 153 179 190 196 181 190 172 354 346 345 344 349 344 350 356 351 355 -158 150 154 141 175 188 189 163 175 154 333 319 322 318 328 318 328 333 324 329 -152 139 155 131 178 193 188 147 163 140 319 297 306 298 314 298 315 318 302 310 -210 170 266 160 326 375 320 172 208 166 477 389 432 402 464 402 465 464 403 431 -182 126 265 120 355 387 283 121 140 120 387 273 339 297 377 296 379 362 284 317 -195 116 302 112 410 411 252 106 114 107 349 220 308 256 348 255 349 312 224 258 -169 61 269 62 341 302 135 47 52 49 193 100 171 123 201 122 201 154 98 106 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -105 219 20 158 18 18 18 36 18 220 20 91 66 91 30 91 28 20 62 29 -270 689 99 453 99 94 95 347 109 790 196 498 381 476 265 477 260 216 418 313 -269 824 171 580 178 171 176 711 220 1071 485 877 692 824 552 825 546 537 800 672 -311 764 251 631 270 265 279 931 435 1151 822 1205 988 1127 860 1129 855 894 1157 1039 -415 665 358 601 399 399 416 1030 669 1085 1163 1460 1257 1375 1168 1376 1165 1243 1449 1366 -643 657 580 611 664 659 638 1006 861 952 1486 1614 1503 1560 1471 1560 1471 1538 1628 1598 -860 796 769 728 884 837 838 959 941 880 1658 1678 1649 1661 1646 1661 1646 1673 1688 1686 -1112 1065 929 968 1062 934 979 954 968 944 1748 1754 1780 1774 1769 1772 1769 1730 1731 1723 -1044 1070 814 970 911 960 983 891 955 1030 1714 1742 1746 1750 1731 1748 1730 1706 1724 1711 -767 795 715 726 831 997 1013 737 848 812 1650 1566 1586 1563 1621 1562 1623 1653 1598 1630 -506 491 711 457 888 1155 1061 501 612 502 1551 1266 1377 1287 1486 1286 1491 1530 1338 1436 -392 338 768 323 1035 1265 1006 343 390 335 1350 947 1151 1011 1294 1009 1300 1294 1016 1147 -400 239 766 234 1113 1230 830 227 264 222 1065 623 884 720 1029 717 1034 969 667 798 -370 157 722 160 1047 1050 564 133 154 133 716 320 591 433 711 431 714 605 331 438 -338 80 596 88 777 681 262 55 64 58 348 124 293 175 367 173 369 251 121 133 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 103 12 75 12 11 11 21 12 104 15 47 36 47 19 47 18 15 34 19 -174 394 75 272 78 73 74 218 87 450 144 306 243 294 180 294 178 155 263 206 -191 435 125 327 133 127 132 385 168 553 317 500 412 475 347 475 344 340 463 403 -225 443 170 373 185 181 193 523 287 634 501 696 585 656 521 657 518 538 671 611 -277 427 224 383 248 247 273 621 427 653 709 883 764 833 712 834 710 756 877 828 -349 418 298 385 335 344 386 678 563 630 929 1053 945 1000 915 1001 914 979 1066 1037 -286 318 254 293 286 313 408 570 544 456 915 977 890 927 884 928 885 963 1008 1001 -163 164 150 152 169 176 184 181 184 174 339 338 334 335 335 335 336 342 342 343 -137 135 128 126 144 149 152 144 148 140 276 273 272 271 274 271 274 278 275 277 -224 205 240 192 278 329 335 238 285 212 556 506 518 504 539 504 540 558 525 544 -134 125 133 117 152 162 158 131 141 126 273 258 264 259 270 259 270 272 262 267 -134 118 140 111 164 176 163 119 133 115 271 245 258 249 267 249 267 267 250 258 -56 53 53 49 61 62 59 52 55 53 104 100 103 101 104 101 104 103 101 102 -74 61 78 57 93 93 78 57 61 57 129 114 124 118 128 118 129 124 114 118 -30 25 30 23 35 34 28 22 23 23 48 44 47 45 49 45 49 47 44 45 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -31 32 26 29 29 29 29 31 30 33 54 56 55 56 54 55 54 54 55 55 -68 73 57 67 64 62 63 72 67 78 121 127 124 126 122 126 122 121 126 124 -103 112 87 103 96 95 98 116 106 122 190 202 195 199 191 199 191 192 200 197 -74 75 66 69 73 73 74 77 75 78 138 140 138 139 138 139 138 138 140 139 -88 89 79 83 88 89 90 92 91 93 167 169 168 168 167 168 167 168 169 169 -98 99 89 91 99 100 102 102 102 103 188 189 188 189 188 189 188 189 190 190 -129 129 118 119 132 135 139 137 138 134 255 255 253 253 253 253 254 256 256 257 -114 113 106 105 119 122 123 118 121 117 224 222 222 222 223 222 223 225 224 225 -146 140 140 131 160 169 171 150 160 144 302 291 293 290 298 290 298 302 295 299 -133 124 131 116 151 160 157 130 140 125 271 256 262 257 268 257 268 270 260 265 -59 57 55 53 62 63 62 58 59 58 111 109 110 109 111 109 111 111 109 110 -280 173 504 169 719 795 545 164 193 162 708 433 594 492 685 490 689 649 460 541 -209 103 373 102 531 533 301 92 102 92 390 201 330 254 387 253 389 337 206 257 -266 69 464 74 604 531 210 49 56 51 279 106 236 146 293 144 295 205 104 114 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 47 7 35 7 7 7 12 7 48 9 23 18 23 11 23 10 9 17 11 -64 129 32 92 35 33 33 78 38 147 53 101 82 98 64 98 63 56 88 71 -46 47 40 44 45 44 45 48 46 49 83 85 84 85 84 85 84 84 85 84 -119 211 87 177 96 93 101 245 146 295 227 312 263 295 235 295 234 243 301 275 -76 77 68 72 76 76 77 80 78 81 142 145 143 144 142 144 142 143 145 144 -79 80 71 74 80 80 81 82 81 83 150 151 150 151 150 150 150 150 151 151 -400 412 356 378 404 417 513 724 691 578 1176 1246 1147 1189 1140 1190 1140 1229 1281 1273 -302 305 279 281 318 370 537 519 595 342 1053 1042 983 998 1005 998 1007 1096 1092 1111 -370 363 350 334 403 577 679 453 613 382 1152 1069 1057 1043 1101 1043 1104 1177 1123 1163 -239 220 298 205 360 526 546 257 391 227 830 702 730 696 785 696 788 835 750 799 -444 421 644 393 808 1066 978 435 554 428 1415 1138 1245 1158 1351 1157 1357 1395 1208 1304 -361 308 732 295 993 1224 970 312 360 305 1288 890 1090 952 1232 950 1238 1233 959 1088 -384 231 743 226 1083 1202 812 219 255 215 1035 603 857 697 999 694 1005 943 646 775 -364 156 712 159 1036 1042 562 132 154 132 711 318 586 430 705 427 709 601 330 436 -362 85 644 94 843 741 285 57 68 60 376 132 315 187 396 185 398 271 129 142 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -59 121 12 87 12 11 11 21 11 122 14 52 38 52 18 52 17 14 36 18 -212 536 78 352 79 75 76 272 87 615 150 383 293 367 203 367 199 165 322 240 -214 649 136 454 143 137 141 561 176 843 375 683 537 641 428 642 423 416 623 522 -101 231 76 187 84 82 87 280 138 346 220 333 268 310 231 310 230 241 319 284 -84 135 67 118 76 76 83 204 135 215 199 258 217 241 200 241 199 215 256 239 -157 199 130 181 146 152 181 329 271 305 422 487 430 459 414 459 414 448 494 478 -165 185 146 169 165 182 235 320 306 260 490 524 477 497 473 497 474 516 541 537 -171 176 162 162 186 223 293 285 318 210 534 529 500 507 510 507 511 555 554 563 -174 166 179 154 209 289 337 234 306 184 551 506 499 492 523 492 525 564 535 557 -154 138 185 129 225 310 321 169 241 144 474 403 418 400 449 399 450 476 429 457 -155 142 159 133 184 200 194 150 168 142 329 305 314 306 323 306 324 327 311 319 -135 119 142 112 166 179 165 121 135 116 274 248 261 252 270 252 271 270 252 261 -188 120 329 116 470 520 360 115 133 114 460 284 387 321 445 320 447 422 301 353 -111 68 167 64 227 228 143 62 67 62 189 119 166 138 188 138 188 169 121 139 -255 73 435 77 565 499 205 51 59 53 277 115 237 154 290 152 291 209 114 124 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -79 162 16 116 15 14 14 27 14 163 17 69 50 69 23 69 22 17 47 22 -274 715 97 464 96 91 92 355 105 821 187 504 381 481 260 482 254 208 421 309 -269 843 175 585 183 176 181 727 219 1094 491 892 702 838 560 838 554 544 814 682 -273 714 219 585 235 231 243 880 395 1094 743 1117 904 1040 780 1042 775 814 1070 954 -407 678 351 612 390 390 408 1077 684 1136 1184 1507 1286 1414 1189 1416 1186 1271 1496 1405 -429 539 369 502 414 423 470 1125 871 1015 1462 1717 1494 1609 1431 1611 1430 1565 1744 1685 -471 499 418 459 474 500 673 1048 991 790 1693 1818 1643 1717 1630 1719 1630 1789 1881 1867 -1283 1217 1059 1104 1209 1020 1030 1003 1002 1039 1852 1862 1913 1901 1894 1899 1893 1814 1817 1800 -1206 1244 915 1124 1013 1015 1018 967 1001 1174 1805 1870 1879 1889 1845 1887 1843 1786 1828 1797 -719 737 684 674 801 987 1009 696 831 753 1627 1523 1546 1518 1591 1517 1593 1631 1562 1602 -477 458 660 427 823 1071 989 470 582 468 1441 1178 1279 1197 1380 1196 1385 1422 1245 1336 -364 311 662 296 885 1080 869 316 364 308 1172 838 1005 890 1124 888 1129 1126 896 1005 -257 163 448 158 635 703 488 155 182 152 636 397 537 448 616 447 619 585 421 492 -151 95 219 91 291 293 188 87 95 88 264 178 236 201 263 201 263 239 181 203 -57 41 66 38 78 73 52 38 39 39 82 69 79 73 83 73 83 77 68 71 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -21 21 18 19 21 20 20 21 21 22 38 38 38 38 38 38 38 38 38 38 -59 62 50 57 56 55 56 62 58 65 105 109 107 109 106 109 106 105 108 107 -67 70 59 64 66 65 67 71 68 73 124 127 126 127 125 127 125 125 127 126 -130 141 112 130 124 124 131 153 142 156 253 267 257 263 253 263 253 257 266 262 -101 103 90 95 101 102 104 108 106 108 193 196 194 195 193 195 193 195 196 196 -89 89 80 82 90 90 92 92 91 92 169 169 169 169 168 169 169 169 170 170 -105 105 96 97 108 109 111 109 110 109 204 204 203 203 203 203 203 204 204 205 -175 171 166 160 188 202 209 191 202 180 376 367 366 364 371 364 371 379 373 378 -88 87 81 81 92 93 94 89 91 89 169 167 168 167 168 167 169 169 168 169 -138 117 192 109 243 316 292 129 178 116 396 311 343 317 376 317 378 390 332 362 -133 118 140 110 163 175 163 119 133 115 270 244 257 248 266 248 266 266 249 257 -107 91 113 85 134 139 123 88 97 87 202 180 193 185 200 185 201 197 182 189 -149 82 244 80 340 342 204 74 82 75 267 153 230 185 265 184 266 235 157 187 -287 81 510 86 674 596 239 69 74 72 311 126 263 164 326 162 327 230 126 130 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -37 76 8 54 7 7 7 13 7 77 9 33 24 33 11 33 11 9 23 11 -88 195 38 132 41 39 40 109 45 224 63 141 110 135 80 135 79 68 120 92 -91 187 59 139 66 64 66 168 82 238 126 200 164 190 138 190 137 135 185 161 -110 204 82 169 92 90 95 239 138 289 212 297 248 279 220 279 219 228 286 260 -143 216 112 191 125 124 141 308 217 324 334 419 360 394 335 394 334 356 415 391 -156 197 129 180 145 151 180 329 270 304 418 484 426 456 410 456 410 445 491 475 -261 284 232 261 263 282 356 487 466 396 767 816 748 777 743 777 743 805 841 836 -874 847 749 773 856 790 863 843 868 788 1528 1529 1529 1529 1528 1528 1529 1529 1529 1529 -827 834 678 760 767 867 923 778 881 824 1576 1557 1554 1551 1564 1549 1565 1583 1570 1580 -617 622 604 570 712 894 917 608 746 637 1462 1350 1374 1344 1423 1343 1425 1467 1393 1436 -449 426 673 398 850 1140 1047 440 577 433 1501 1193 1311 1214 1429 1214 1435 1480 1272 1379 -378 326 746 311 1012 1251 998 331 379 323 1325 923 1123 985 1267 983 1273 1270 994 1125 -331 202 638 197 935 1043 708 193 224 189 894 521 739 601 862 599 867 815 560 671 -268 117 536 119 792 800 432 103 116 104 531 231 435 315 526 313 529 448 241 322 -188 49 338 52 448 396 156 42 45 43 198 74 166 100 208 99 209 144 74 78 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -64 132 14 94 13 12 12 23 13 133 15 57 42 57 19 57 19 15 39 19 -199 491 76 324 77 72 73 255 85 564 141 353 270 337 189 338 185 155 297 222 -243 738 155 514 162 155 161 641 201 961 429 779 613 732 489 732 483 475 711 596 -287 696 229 572 247 242 255 854 403 1054 740 1092 892 1019 775 1021 771 807 1048 940 -327 526 276 473 306 306 327 810 532 852 894 1130 968 1062 898 1063 896 958 1122 1056 -364 425 317 393 359 364 391 742 605 684 1001 1139 1018 1080 984 1081 984 1057 1154 1122 -485 486 432 445 492 497 562 718 694 614 1172 1222 1152 1182 1146 1182 1147 1211 1248 1242 -772 753 669 688 764 722 796 779 805 717 1398 1397 1390 1392 1392 1391 1392 1404 1403 1406 -684 684 580 625 660 759 815 678 774 688 1375 1344 1339 1334 1356 1333 1357 1385 1365 1380 -606 609 595 558 701 883 907 597 737 623 1443 1330 1355 1325 1403 1324 1406 1449 1373 1418 -537 529 715 490 889 1144 1065 536 643 542 1559 1296 1396 1314 1497 1313 1503 1541 1364 1455 -391 339 755 323 1022 1261 1011 344 393 336 1345 945 1144 1006 1287 1004 1294 1291 1016 1146 -390 239 752 234 1102 1231 838 227 266 223 1062 622 879 716 1024 713 1030 969 667 799 -382 165 764 168 1127 1139 618 139 163 138 769 337 630 458 762 455 765 649 352 470 -322 95 571 100 759 674 274 83 89 86 354 149 300 188 370 186 372 264 148 152 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 105 12 75 11 11 11 20 11 106 14 46 34 46 17 46 16 14 33 17 -232 592 85 385 86 81 82 301 94 682 161 421 320 402 220 403 216 179 353 262 -241 734 153 510 161 154 159 639 200 957 425 774 608 726 484 727 479 471 706 592 -284 693 226 569 244 239 252 853 401 1052 734 1086 886 1014 769 1015 764 802 1043 934 -389 645 334 581 371 371 390 1026 656 1079 1118 1425 1215 1336 1123 1338 1120 1202 1415 1329 -381 486 326 453 365 375 421 1042 803 936 1329 1572 1359 1468 1300 1470 1299 1427 1598 1541 -1351 1139 1215 1050 1411 1234 1025 929 941 1007 1832 1739 1869 1815 1877 1812 1876 1761 1691 1702 -1761 1629 1408 1475 1592 1192 976 948 859 1256 1769 1797 1967 1926 1906 1921 1902 1645 1652 1598 -1606 1687 1145 1510 1224 981 859 1058 910 1516 1652 1871 1906 1939 1791 1935 1783 1584 1726 1620 -1046 1155 809 1042 883 840 828 934 855 1167 1475 1607 1580 1613 1523 1611 1520 1468 1558 1506 -420 371 593 349 742 973 901 401 539 372 1299 1040 1138 1058 1238 1057 1243 1282 1107 1197 -351 280 575 267 755 917 749 285 353 269 1024 747 883 788 983 787 987 986 795 885 -325 209 540 202 755 839 594 197 238 191 786 507 669 566 762 564 766 727 536 619 -255 125 466 125 672 680 385 110 124 110 493 249 414 317 489 315 491 426 258 324 -177 55 302 57 395 352 149 42 47 43 197 86 168 111 205 110 206 150 85 92 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 124 12 88 12 11 11 21 11 125 14 53 38 53 17 52 16 14 36 17 -245 639 87 412 87 83 84 321 96 737 164 447 337 426 228 427 223 183 373 274 -248 788 158 542 165 158 163 686 204 1030 443 823 642 771 507 771 502 493 749 625 -263 626 208 515 225 220 233 771 369 948 665 980 800 915 696 916 692 726 941 844 -169 271 136 241 152 151 167 409 274 430 433 553 470 518 435 519 434 466 549 515 -153 194 127 176 142 148 177 325 267 300 410 475 418 447 402 447 402 436 482 466 -279 299 247 274 281 298 399 612 579 466 962 1034 933 976 926 977 926 1017 1071 1063 -192 196 179 181 205 244 342 334 379 229 645 639 601 610 614 610 615 672 670 682 -118 116 108 108 122 125 127 122 125 120 231 229 229 228 230 228 230 232 231 232 -185 170 238 158 293 451 475 203 332 176 702 583 608 577 659 577 662 707 628 675 -160 135 221 127 277 361 335 150 208 135 463 366 402 373 440 372 442 456 391 425 -202 162 359 154 481 594 478 165 204 159 628 441 533 469 600 468 603 602 474 535 -296 187 547 182 795 890 613 179 209 176 777 466 646 532 750 530 754 712 499 591 -286 132 554 133 814 825 456 114 131 114 568 262 468 347 562 345 565 483 273 356 -82 28 139 28 184 164 71 24 25 24 86 36 73 47 90 46 90 65 36 39 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -49 99 11 71 11 10 10 19 11 101 13 44 32 44 15 43 15 13 30 15 -222 571 81 370 82 78 79 291 90 658 152 403 305 385 209 385 204 169 338 249 -217 648 139 450 147 141 146 568 183 844 378 683 538 641 429 642 425 418 624 524 -231 513 180 424 195 191 203 627 315 766 552 800 658 748 576 749 573 599 769 693 -197 327 160 292 177 177 196 508 332 534 535 689 583 644 538 645 536 577 684 641 -253 319 216 294 242 249 285 600 478 545 771 899 787 845 756 845 755 823 913 883 -200 220 177 201 201 217 296 450 426 344 693 747 671 703 666 704 666 734 774 768 -69 71 64 65 75 93 142 138 160 86 261 258 240 244 246 244 247 274 274 279 -538 534 479 489 548 728 838 604 773 548 1418 1341 1327 1315 1369 1315 1372 1443 1393 1431 -173 156 206 145 249 345 361 192 273 162 535 457 473 453 507 452 509 539 487 517 -169 143 232 134 290 379 351 158 219 143 488 388 425 394 464 394 466 482 414 449 -348 297 709 285 970 1214 968 302 352 294 1265 867 1063 927 1206 925 1212 1212 938 1068 -280 175 528 171 775 869 596 168 196 165 747 441 618 506 720 504 724 683 473 565 -292 135 566 136 833 845 468 116 134 116 582 269 480 355 576 353 579 496 280 366 -226 62 402 66 532 473 192 45 51 47 247 95 207 127 258 126 259 182 94 103 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 107 11 75 11 10 10 19 11 108 13 46 33 46 15 45 15 13 32 15 -258 690 88 439 87 83 84 343 96 797 163 472 352 450 233 451 227 184 392 283 -250 794 160 544 167 160 166 695 208 1040 448 830 647 777 511 778 506 498 756 631 -303 783 244 639 263 258 271 981 444 1211 816 1230 994 1144 857 1146 852 897 1180 1052 -404 676 348 609 387 386 405 1094 694 1148 1176 1506 1279 1410 1180 1412 1177 1266 1495 1403 -432 541 372 503 417 427 474 1148 890 1030 1466 1727 1497 1615 1433 1617 1433 1572 1755 1694 -476 504 423 463 479 505 683 1072 1013 806 1702 1830 1649 1726 1636 1727 1637 1800 1895 1881 -1312 1240 1083 1126 1234 1029 1035 1008 1005 1046 1866 1875 1932 1918 1911 1916 1910 1824 1826 1808 -1209 1243 920 1123 1017 1015 1020 967 1003 1167 1808 1871 1882 1890 1849 1888 1847 1789 1829 1799 -894 948 778 862 892 1036 1053 829 921 963 1737 1701 1709 1699 1725 1697 1726 1739 1716 1730 -555 549 745 510 930 1210 1130 555 675 564 1642 1359 1465 1377 1575 1376 1580 1624 1433 1532 -410 359 799 342 1088 1354 1089 365 415 357 1436 1004 1217 1068 1372 1066 1378 1378 1082 1223 -403 248 794 243 1179 1327 904 237 278 231 1131 653 930 754 1088 751 1094 1031 704 847 -372 163 751 166 1120 1138 622 138 162 137 764 332 623 452 755 449 759 646 348 467 -312 93 562 98 755 674 277 82 87 84 348 146 293 182 364 180 366 259 145 149 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -43 88 10 62 9 9 9 16 9 89 11 38 28 38 13 38 13 11 26 13 -243 633 88 407 88 83 85 322 97 731 163 444 334 423 226 423 221 182 371 272 -243 736 157 509 164 158 163 649 206 962 430 779 612 730 488 731 482 476 712 597 -259 524 197 437 213 208 223 633 341 765 588 827 690 777 611 778 608 634 798 724 -312 468 253 420 280 280 310 680 477 711 775 960 832 905 777 906 775 825 954 902 -670 663 608 616 697 690 658 944 833 902 1419 1513 1430 1472 1407 1473 1407 1457 1523 1501 -558 549 497 503 568 565 624 783 759 678 1281 1329 1261 1290 1256 1290 1256 1318 1354 1348 -366 371 338 342 386 440 599 587 658 418 1132 1123 1064 1079 1084 1079 1086 1174 1172 1190 -326 318 313 293 361 572 707 438 635 339 1191 1092 1073 1058 1127 1058 1131 1224 1160 1208 -199 179 237 167 285 394 413 221 314 187 619 530 548 525 586 525 589 623 564 599 -221 188 302 177 373 487 453 208 288 188 644 516 564 525 613 524 616 636 550 594 -252 208 368 195 457 551 458 211 257 210 647 500 571 521 623 520 626 626 526 573 -117 98 128 92 153 161 140 95 106 93 224 196 212 202 222 201 222 218 199 207 -45 41 44 38 51 51 47 39 41 39 81 76 79 77 81 77 81 80 76 78 -21 18 20 17 23 23 20 17 18 17 35 33 35 34 35 34 35 34 33 33 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 -27 27 23 25 26 25 25 27 26 28 47 49 48 48 48 48 48 47 48 48 -64 68 54 62 60 58 60 68 63 73 113 119 116 118 114 118 114 114 118 116 -99 108 84 98 93 91 95 112 102 118 182 193 187 191 184 191 183 185 192 189 -94 98 83 90 93 93 95 102 99 104 179 183 180 182 179 182 179 180 183 182 -113 116 101 107 112 114 117 124 121 124 219 224 220 222 219 222 219 221 224 223 -126 128 114 119 127 130 134 137 136 135 249 251 248 249 248 249 248 251 252 252 -148 148 136 138 152 158 164 162 164 157 301 301 298 298 299 298 299 304 304 304 -140 138 131 129 148 154 158 149 154 144 285 281 280 280 283 280 283 287 284 286 -115 112 108 104 122 126 127 117 121 114 227 222 223 222 225 222 225 227 224 226 -88 85 83 80 94 97 96 88 91 87 170 166 168 166 169 166 169 170 167 169 -112 102 113 96 131 139 132 104 113 101 223 207 214 209 220 209 220 220 209 215 -23 23 21 21 24 24 24 23 23 23 43 43 43 43 43 43 43 43 43 43 -30 28 28 26 32 32 30 27 28 28 54 52 53 52 54 52 54 53 52 53 -22 19 22 18 25 25 22 18 19 18 37 35 37 36 38 36 38 36 35 35 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 9 2 7 2 2 2 3 2 9 3 5 5 5 3 5 3 3 4 3 -50 104 23 72 26 24 25 62 28 120 38 79 63 76 47 76 46 41 68 54 -52 55 45 50 50 49 50 55 52 57 94 97 95 96 94 96 94 94 96 95 -90 97 77 88 85 84 87 100 93 104 166 174 170 173 167 173 167 168 173 171 -236 427 195 382 215 215 235 718 444 753 721 953 792 885 723 886 721 785 946 881 -239 301 204 277 229 236 269 596 470 537 747 877 762 820 730 821 730 800 891 861 -161 180 142 165 161 178 231 318 304 257 475 509 461 481 458 481 458 501 526 522 -166 169 154 156 177 211 307 301 344 199 573 568 531 540 544 541 545 599 598 609 -342 334 326 308 376 581 714 453 645 355 1197 1101 1082 1068 1135 1068 1138 1229 1167 1215 -144 134 179 124 220 338 358 159 255 139 513 428 445 423 482 423 484 518 461 495 -222 194 339 182 430 588 545 212 308 195 750 581 643 591 709 591 713 740 625 685 -152 123 261 116 352 438 356 126 156 121 453 318 383 337 432 336 434 435 342 386 -189 125 329 120 476 536 377 121 141 119 473 294 397 331 457 330 459 436 313 367 -225 112 422 111 623 635 361 98 112 98 445 215 369 278 440 276 442 382 224 287 -225 65 399 69 532 478 200 46 54 48 255 104 214 134 265 133 266 191 102 112 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -34 68 8 48 8 7 7 13 8 69 10 30 22 30 11 30 11 10 21 11 -243 661 83 417 82 78 79 331 90 767 147 446 329 424 214 425 209 168 369 264 -112 315 73 216 79 76 78 282 98 412 175 320 250 299 198 299 196 194 292 244 -121 215 89 179 99 96 104 256 153 305 231 320 269 301 240 301 239 248 309 282 -139 210 109 185 121 121 138 305 216 319 322 407 348 382 323 382 322 345 404 380 -243 305 208 281 234 240 273 605 478 544 757 889 772 832 740 832 740 811 904 873 -226 246 200 226 227 244 327 489 465 376 749 806 726 760 720 760 721 793 835 829 -434 435 392 399 448 484 666 653 730 463 1255 1247 1186 1202 1207 1202 1209 1299 1297 1315 -648 647 558 592 636 773 860 676 810 653 1446 1395 1384 1377 1412 1376 1414 1464 1431 1456 -693 706 643 646 753 929 956 668 803 721 1526 1435 1454 1429 1493 1428 1496 1532 1472 1508 -432 408 651 381 828 1131 1052 425 580 415 1476 1164 1280 1183 1401 1182 1407 1458 1248 1358 -324 274 636 262 873 1100 885 280 334 271 1146 788 961 839 1090 837 1096 1099 853 970 -400 255 758 249 1122 1270 879 243 289 237 1100 652 909 745 1059 742 1065 1009 701 836 -325 152 635 154 947 968 543 129 153 128 667 306 547 404 658 402 662 569 321 420 -304 78 559 85 753 676 274 52 63 55 339 124 280 165 355 163 356 247 122 134 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 2 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 -238 648 81 408 80 77 77 326 88 753 142 436 321 414 208 415 202 163 361 257 -242 803 162 538 169 163 169 715 205 1057 447 835 648 780 510 781 504 498 762 634 -315 784 254 638 274 269 284 995 463 1217 826 1237 1001 1151 865 1153 860 907 1189 1063 -409 626 353 565 394 394 412 976 654 1017 1082 1352 1164 1272 1084 1273 1082 1157 1344 1269 -446 499 393 462 446 450 468 887 728 813 1190 1348 1208 1280 1170 1280 1170 1255 1366 1330 -832 773 744 708 854 812 819 953 934 868 1617 1642 1606 1621 1603 1621 1603 1636 1655 1652 -192 196 179 180 205 243 346 340 386 230 643 638 598 608 611 608 613 672 671 682 -448 441 410 406 471 650 768 537 707 460 1283 1202 1186 1174 1230 1173 1233 1312 1259 1299 -233 215 275 200 332 476 502 257 377 224 747 639 660 632 707 632 710 754 682 724 -242 211 360 198 455 619 576 231 333 212 797 621 685 632 754 631 757 787 668 730 -154 122 230 115 302 368 307 126 159 119 402 296 347 311 385 310 387 388 315 350 -57 53 54 50 62 63 60 53 55 53 105 101 103 102 105 102 105 104 102 103 -86 52 134 49 192 196 122 48 52 49 148 86 127 102 146 102 147 131 88 105 -60 28 93 27 121 111 56 24 25 24 73 42 64 48 75 48 75 60 42 44 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 15 14 14 15 15 15 15 15 16 28 28 28 28 28 28 28 28 28 28 -34 34 30 31 33 33 33 34 34 35 61 62 62 62 61 62 61 61 62 62 -44 44 39 41 44 44 44 45 44 46 81 82 81 82 81 82 81 81 82 81 -169 269 137 240 152 152 169 416 280 434 431 553 468 517 432 517 431 465 549 515 -205 260 174 239 196 202 234 512 406 460 633 744 645 696 619 696 618 679 757 731 -558 552 497 505 567 567 654 881 848 727 1416 1485 1387 1429 1381 1429 1381 1470 1521 1514 -522 518 466 476 532 555 740 726 802 535 1376 1369 1311 1326 1330 1326 1333 1418 1416 1433 -507 502 455 461 520 679 784 577 729 517 1309 1240 1225 1215 1263 1215 1266 1333 1289 1323 -428 415 462 383 555 789 830 442 632 428 1266 1111 1141 1101 1209 1100 1213 1276 1173 1234 -447 426 628 397 791 1058 993 442 580 434 1404 1132 1231 1148 1337 1147 1343 1389 1205 1301 -364 314 709 300 976 1233 997 321 380 311 1289 890 1082 947 1226 945 1232 1237 964 1095 -339 217 651 212 973 1108 767 208 246 203 946 553 778 634 909 632 914 866 597 716 -300 141 598 143 902 925 519 121 142 121 626 281 511 374 617 372 621 533 296 391 -257 67 475 73 645 581 237 47 55 49 289 107 238 140 302 138 303 211 105 116 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 52 6 36 6 5 5 10 6 53 7 23 16 22 8 22 8 7 16 8 -149 373 59 241 61 58 58 201 68 433 100 261 197 249 135 249 132 111 220 162 -169 572 112 378 117 113 117 513 145 758 303 582 447 542 348 543 343 340 530 438 -223 565 176 457 190 187 197 726 334 888 577 881 706 817 606 818 602 638 846 753 -241 430 199 384 220 221 241 731 457 762 727 961 798 891 729 892 726 792 955 890 -207 262 176 241 198 204 237 517 411 464 638 750 650 701 623 702 623 684 763 737 -216 236 192 217 218 235 318 479 455 365 725 780 701 735 696 735 696 768 809 804 -290 295 268 271 306 352 508 500 567 334 955 948 891 906 910 906 912 995 994 1011 -344 337 327 311 378 555 675 449 616 358 1117 1033 1015 1003 1061 1003 1064 1146 1092 1134 -515 508 538 468 645 913 961 520 737 522 1474 1305 1338 1294 1412 1293 1416 1486 1373 1440 -407 381 602 356 765 1046 979 400 550 388 1364 1078 1182 1094 1294 1093 1299 1349 1155 1257 -308 260 558 247 760 955 778 266 323 257 1012 711 854 753 963 751 968 972 766 865 -172 134 217 125 278 305 241 131 148 131 347 274 315 289 340 288 341 332 282 304 -31 29 29 27 33 33 32 28 29 29 56 54 55 54 56 54 56 55 54 54 -16 15 15 14 18 17 16 14 14 14 28 26 28 27 28 27 28 27 26 27 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -19 38 5 27 5 5 5 8 5 39 6 17 13 17 7 17 7 6 12 7 -193 522 69 328 69 66 67 270 77 609 118 353 260 335 169 335 165 134 293 209 -216 736 142 487 149 143 148 664 187 978 394 755 579 703 451 704 446 442 688 569 -211 550 167 443 180 177 187 714 323 874 555 857 682 793 583 794 579 615 823 730 -285 476 238 427 264 264 286 784 507 816 809 1047 880 976 810 977 808 876 1041 975 -458 512 404 475 459 462 480 955 777 867 1260 1436 1279 1359 1236 1360 1236 1333 1457 1417 -364 379 323 347 368 382 480 683 654 541 1062 1130 1033 1074 1027 1074 1027 1115 1165 1158 -295 299 272 276 311 357 514 506 574 339 964 957 900 914 918 915 921 1005 1004 1021 -332 325 317 300 366 548 671 441 613 347 1108 1023 1004 992 1051 992 1055 1139 1084 1127 -546 542 556 498 665 923 970 547 756 556 1493 1334 1364 1323 1434 1322 1438 1504 1398 1461 -448 425 653 397 828 1130 1061 442 600 434 1481 1177 1287 1194 1406 1193 1412 1465 1260 1368 -366 316 707 301 976 1239 1005 323 386 313 1294 893 1084 948 1228 946 1235 1241 967 1099 -354 226 698 221 1058 1212 836 217 257 212 1018 585 831 673 977 671 982 932 635 765 -283 137 552 138 833 857 488 118 139 117 588 271 481 356 580 354 583 504 286 373 -245 71 445 76 604 547 231 48 58 49 285 115 236 145 296 143 297 212 113 125 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 19 3 14 4 3 3 5 4 20 5 10 8 10 5 10 5 5 8 5 -115 264 51 175 54 51 52 152 60 306 86 195 151 186 109 186 107 94 167 128 -116 273 78 195 85 82 85 252 108 355 182 298 241 281 200 281 198 197 276 238 -188 417 145 340 159 156 165 528 267 638 438 646 525 602 457 603 455 480 623 559 -305 533 257 478 284 284 306 914 575 950 918 1207 1005 1120 920 1122 917 1000 1200 1120 -437 495 384 458 436 440 462 947 766 855 1233 1414 1252 1334 1209 1335 1208 1309 1436 1394 -360 388 319 356 362 388 556 911 861 660 1387 1504 1337 1407 1326 1409 1327 1479 1565 1553 -786 767 683 701 779 742 900 883 941 730 1626 1622 1589 1597 1598 1597 1601 1649 1648 1658 -560 555 497 509 568 785 931 651 861 569 1554 1463 1442 1429 1493 1429 1497 1588 1529 1574 -459 447 506 413 615 933 992 473 733 460 1495 1291 1330 1277 1419 1276 1424 1510 1374 1455 -504 489 704 455 889 1198 1130 501 656 500 1589 1283 1394 1300 1513 1299 1519 1573 1367 1476 -383 333 749 318 1038 1323 1073 341 408 331 1375 946 1149 1004 1304 1002 1311 1319 1026 1167 -364 232 734 228 1122 1290 888 223 265 218 1072 608 871 702 1027 699 1033 980 661 802 -325 149 680 152 1050 1082 603 128 151 127 708 296 568 407 696 404 700 598 315 429 -260 80 492 84 684 621 260 70 75 72 305 127 251 149 318 147 319 225 126 130 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -172 490 57 300 56 54 55 249 62 575 89 314 224 296 137 297 133 105 257 176 -191 655 127 430 134 129 133 597 168 874 347 669 511 622 397 623 392 390 609 503 -200 465 156 377 170 167 177 597 293 723 484 725 584 673 506 674 503 532 697 624 -333 558 282 501 313 313 335 939 603 974 962 1249 1048 1163 964 1164 961 1044 1242 1163 -430 494 378 458 428 433 457 1004 802 899 1282 1484 1303 1395 1254 1396 1254 1367 1509 1463 -500 501 445 459 508 512 606 827 796 673 1307 1376 1277 1318 1270 1319 1271 1361 1412 1405 -680 669 598 613 683 676 870 855 930 658 1592 1586 1534 1547 1550 1547 1553 1629 1628 1643 -645 643 560 588 638 829 960 707 896 651 1602 1527 1509 1498 1552 1498 1555 1631 1582 1620 -531 525 554 483 667 969 1026 536 782 539 1561 1375 1409 1362 1491 1361 1496 1575 1451 1525 -419 394 630 369 805 1116 1050 413 581 401 1445 1133 1245 1150 1368 1149 1374 1430 1219 1330 -336 287 672 275 938 1204 974 295 362 285 1234 836 1024 890 1167 888 1174 1182 911 1041 -374 243 716 238 1082 1243 867 234 280 226 1059 620 868 709 1016 706 1022 972 671 804 -326 155 655 157 1002 1034 587 131 158 130 698 310 566 413 687 411 691 595 328 436 -198 58 365 62 499 454 193 41 49 43 232 94 192 116 242 115 243 173 93 102 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -124 304 51 196 54 51 52 171 60 356 84 214 162 204 111 204 109 93 181 134 -91 233 61 160 67 65 67 216 84 306 137 239 188 224 152 224 151 150 220 186 -100 186 75 151 85 83 88 230 132 274 189 270 222 252 196 252 195 205 261 236 -180 283 146 251 162 162 181 442 301 457 456 582 493 544 456 544 455 492 580 545 -144 182 122 166 139 143 167 369 293 328 432 512 440 477 421 477 421 466 522 504 -170 191 150 175 171 189 249 344 331 275 507 543 491 513 487 513 488 536 563 559 -150 155 142 143 163 198 269 266 297 189 471 467 437 445 447 445 448 492 492 501 -224 218 224 201 260 375 458 312 420 238 736 678 664 656 697 656 699 758 720 749 -490 483 497 444 593 811 853 497 676 496 1304 1168 1193 1158 1253 1157 1256 1314 1224 1278 -251 220 390 207 500 701 658 243 367 222 889 681 755 692 836 691 841 878 738 812 -241 200 487 192 684 884 714 206 263 198 887 591 730 631 837 629 842 849 647 744 -252 162 518 158 805 932 640 157 184 154 752 416 605 483 719 481 723 686 455 557 -289 134 615 137 964 997 557 117 137 116 641 262 511 363 629 360 633 541 280 386 -233 66 454 71 639 582 240 57 62 59 272 104 220 123 283 121 285 196 104 108 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -202 577 69 352 68 65 66 298 75 678 110 376 270 355 166 355 162 130 310 213 -199 720 138 464 145 140 145 663 179 963 378 735 560 682 433 684 428 427 669 553 -254 670 203 537 218 214 228 892 402 1083 683 1061 841 979 718 981 713 761 1019 905 -322 552 272 495 302 302 325 955 607 986 955 1252 1043 1162 956 1163 954 1040 1246 1164 -282 344 242 317 273 280 316 716 568 635 878 1032 893 963 857 964 856 943 1051 1016 -227 247 201 227 228 246 336 505 482 382 754 812 728 763 722 764 723 800 843 838 -238 243 221 224 253 301 445 439 502 285 826 820 765 779 783 779 785 865 864 880 -170 164 174 152 204 287 346 243 319 184 546 502 491 485 516 485 517 562 534 556 -288 272 333 252 407 620 664 314 492 282 975 830 856 819 920 818 923 986 889 947 -223 196 337 184 431 601 566 216 323 198 760 586 648 595 716 594 720 752 634 696 -288 242 538 231 746 956 780 249 313 239 988 679 823 720 935 718 940 948 737 839 -191 130 334 125 495 568 404 126 150 124 495 305 412 343 476 342 479 458 328 385 -281 135 583 136 909 942 533 117 138 116 617 262 495 356 606 354 610 524 280 379 -191 53 363 57 504 460 193 39 45 40 223 84 180 104 232 102 233 162 83 92 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -175 474 66 294 67 64 64 255 74 558 109 323 237 305 154 306 149 124 269 192 -193 629 131 415 139 134 139 585 177 841 349 655 504 609 396 610 391 391 599 499 -264 649 210 523 227 223 237 859 405 1037 677 1030 824 953 709 955 704 750 991 884 -337 582 286 523 317 318 341 1024 647 1056 1015 1335 1109 1238 1016 1239 1013 1108 1329 1241 -351 440 301 408 338 348 396 1045 810 912 1248 1492 1271 1383 1213 1385 1213 1352 1524 1468 -622 606 555 555 634 625 706 923 895 771 1476 1539 1448 1486 1442 1486 1443 1526 1573 1567 -229 234 213 216 244 290 431 425 487 274 793 787 734 748 751 748 753 831 830 846 -189 184 189 170 220 331 411 272 376 202 652 597 583 576 614 576 616 672 637 665 -271 255 317 236 389 604 649 297 477 265 945 800 825 789 890 788 893 957 860 918 -166 142 227 133 287 384 364 161 229 143 491 387 423 392 464 392 466 486 416 453 -145 116 216 109 289 358 301 120 156 114 384 280 328 293 366 293 368 371 299 334 -122 100 137 94 167 179 153 98 111 96 237 203 222 209 234 209 234 230 207 217 -97 75 114 70 142 145 112 71 76 72 169 139 158 146 168 146 168 160 140 148 -43 32 50 29 60 57 41 30 30 31 64 53 61 56 64 56 64 60 53 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -152 406 59 253 60 58 59 223 68 479 97 279 205 264 135 264 131 110 233 168 -180 605 124 395 131 126 131 566 167 814 328 625 478 580 373 581 369 369 571 474 -217 425 165 351 180 176 190 538 299 637 477 675 558 631 494 632 492 517 653 593 -176 277 143 246 159 160 178 441 301 454 448 575 485 536 448 536 447 485 573 538 -146 156 129 143 143 146 156 176 169 174 297 309 298 304 296 304 296 302 310 308 -151 156 136 144 153 158 167 175 174 170 311 316 309 312 309 312 309 315 319 319 -159 160 147 149 165 173 183 180 184 172 334 333 328 329 330 329 330 337 337 339 -123 121 114 113 128 133 135 129 132 126 244 242 241 241 242 240 243 245 244 245 -132 127 125 119 143 151 153 136 144 131 269 261 262 260 266 260 266 270 264 267 -104 99 100 93 113 119 118 103 109 101 205 198 201 198 203 198 204 205 200 203 -66 63 62 59 70 72 71 64 66 64 125 121 123 122 124 122 124 124 122 123 -61 56 58 52 67 69 65 56 59 56 113 107 110 108 112 108 112 112 108 110 -87 56 135 53 195 202 129 52 57 52 157 94 134 110 154 109 155 140 97 114 -47 21 75 21 102 94 47 19 20 19 57 32 49 36 58 35 59 46 31 34 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -70 167 31 106 33 32 32 98 37 197 46 116 87 110 60 110 58 50 98 72 -54 57 46 52 51 50 51 57 54 60 96 100 98 100 97 100 97 97 100 98 -91 99 78 90 86 85 88 103 95 108 168 178 172 176 169 176 169 170 177 174 -74 76 66 70 74 74 75 79 77 80 139 142 140 141 139 141 139 140 142 141 -117 146 99 132 113 117 137 276 224 246 314 370 319 345 306 345 306 338 377 365 -246 266 219 244 248 267 370 566 540 421 835 901 805 845 799 846 800 889 938 931 -134 137 124 126 144 172 243 240 272 164 420 417 389 396 398 396 399 440 440 448 -234 228 231 211 269 436 557 349 507 249 889 810 789 779 834 779 837 919 868 908 -380 366 420 338 511 779 837 402 627 378 1231 1060 1089 1046 1165 1045 1170 1246 1131 1201 -409 384 598 359 765 1067 1014 405 575 392 1376 1082 1185 1096 1301 1095 1307 1364 1166 1271 -224 183 409 175 568 732 601 190 250 180 752 515 624 545 710 544 714 722 560 638 -284 188 558 183 867 1010 707 183 218 178 833 474 674 544 796 543 801 764 518 627 -246 122 506 123 798 832 477 107 125 106 544 231 435 313 533 311 536 463 247 334 -176 56 341 59 482 443 190 48 52 49 212 89 171 99 220 98 220 156 89 92 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -136 388 48 233 49 48 48 210 55 461 71 250 177 235 108 235 103 84 206 141 -126 390 87 256 94 91 94 371 120 527 215 402 309 374 243 374 240 241 368 307 -246 626 196 501 212 209 221 851 396 1023 644 997 789 919 674 921 670 718 960 853 -349 591 298 532 330 331 354 1053 673 1079 1037 1362 1131 1262 1037 1263 1034 1133 1358 1269 -480 525 425 486 482 486 502 1056 859 941 1347 1545 1364 1455 1318 1456 1317 1432 1572 1528 -736 701 657 642 752 727 785 980 957 842 1590 1640 1566 1597 1562 1597 1563 1631 1668 1663 -953 918 814 838 927 834 953 933 973 830 1698 1697 1691 1693 1691 1691 1693 1702 1702 1703 -550 545 488 500 558 740 873 636 816 559 1429 1352 1332 1322 1376 1321 1379 1459 1410 1449 -391 377 428 348 520 791 851 412 641 389 1251 1079 1108 1064 1185 1064 1189 1266 1151 1221 -193 169 279 158 357 495 470 188 279 171 622 483 530 489 586 488 588 616 522 572 -226 185 411 176 573 740 609 192 254 182 759 519 629 549 716 548 720 729 565 644 -185 128 324 123 488 565 405 125 148 122 488 298 403 335 468 334 470 451 321 379 -126 75 216 73 323 336 207 69 77 69 250 136 210 165 246 165 247 220 142 173 -54 25 85 25 114 106 55 22 23 22 68 40 60 45 70 44 70 56 40 43 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -203 600 70 355 70 67 68 322 78 714 107 388 274 364 165 365 155 126 319 218 -204 768 151 488 158 153 158 732 195 1046 405 793 600 734 463 735 457 459 724 597 -277 724 223 578 241 237 252 997 457 1198 744 1162 915 1069 780 1071 775 832 1118 992 -372 626 319 563 354 355 378 1124 719 1149 1105 1450 1204 1343 1104 1344 1101 1207 1446 1351 -415 501 358 463 403 414 465 1186 932 1030 1415 1681 1436 1560 1374 1561 1374 1530 1718 1658 -464 492 412 451 469 497 704 1116 1065 807 1664 1797 1600 1683 1589 1684 1591 1773 1872 1860 -235 240 219 221 251 299 450 444 509 283 819 812 756 770 774 771 777 859 858 875 -299 292 288 269 334 500 622 414 573 315 994 916 895 884 939 885 942 1025 974 1014 -283 267 325 247 398 618 669 311 498 278 963 818 842 805 907 805 910 976 879 938 -331 304 494 284 636 899 856 327 484 309 1142 886 974 898 1076 897 1081 1133 959 1052 -306 260 580 248 817 1063 874 269 347 258 1083 735 894 779 1021 777 1027 1040 803 918 -231 156 437 151 678 792 560 151 181 148 661 384 537 437 631 436 635 608 418 502 -242 121 500 122 798 834 481 106 125 105 542 227 431 309 530 308 533 461 243 332 -205 70 397 73 563 520 228 62 66 63 250 112 202 119 258 117 259 185 112 114 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -118 300 51 187 53 50 51 176 60 355 80 211 157 199 107 199 102 89 178 131 -153 428 108 291 115 111 116 413 150 577 269 469 369 438 299 439 296 297 434 368 -201 493 158 394 172 169 180 676 323 808 505 782 618 720 528 721 525 564 754 670 -296 478 248 428 276 277 301 825 544 841 823 1067 892 990 821 991 819 895 1064 997 -544 557 486 515 555 554 553 924 793 848 1265 1393 1275 1334 1245 1335 1245 1321 1411 1383 -946 856 846 786 972 897 852 907 901 875 1583 1575 1587 1582 1587 1581 1587 1577 1570 1571 -628 620 555 568 634 636 837 824 902 618 1505 1499 1442 1456 1459 1456 1462 1546 1545 1562 -538 533 480 489 550 765 924 647 860 548 1502 1410 1385 1373 1438 1373 1441 1539 1480 1527 -457 446 490 412 596 922 995 474 749 460 1459 1260 1293 1243 1382 1242 1387 1477 1345 1425 -448 427 619 398 788 1085 1040 446 614 437 1414 1132 1229 1144 1342 1143 1347 1405 1214 1315 -261 213 480 204 674 875 723 222 298 210 896 610 740 645 845 644 850 861 666 761 -271 181 537 177 851 999 702 177 211 172 811 455 652 524 773 522 778 744 500 609 -246 124 504 125 804 842 488 108 128 106 550 233 439 316 538 314 541 469 249 339 -163 48 311 51 435 402 175 34 41 35 195 78 156 90 201 89 202 143 77 85 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -60 122 31 82 35 34 34 81 40 143 49 95 76 91 58 91 57 52 83 67 -75 167 52 116 59 57 59 163 75 222 106 176 140 165 116 165 115 116 163 140 -89 203 67 159 76 75 79 277 139 331 188 298 232 273 197 273 195 211 286 253 -333 548 283 492 314 315 339 977 636 994 960 1254 1042 1162 958 1163 955 1047 1252 1171 -270 329 230 301 259 268 313 687 554 603 826 970 836 903 803 904 803 888 991 958 -586 575 523 527 597 592 672 862 840 721 1358 1414 1330 1365 1326 1365 1327 1404 1445 1441 -746 728 650 666 740 698 791 776 808 692 1371 1370 1356 1360 1360 1359 1361 1381 1381 1385 -306 299 301 276 350 504 619 428 574 326 984 908 888 878 930 878 933 1014 965 1004 -269 250 306 232 370 536 577 304 447 262 835 718 737 708 789 707 792 846 768 815 -284 249 399 234 508 701 671 279 408 252 902 709 774 717 851 716 855 895 765 834 -212 174 335 164 454 577 486 181 237 171 620 447 525 468 589 467 592 599 481 538 -101 86 108 81 130 139 122 85 95 83 195 172 184 176 192 176 193 190 175 182 -65 54 69 50 84 85 72 51 55 51 115 100 109 104 114 104 114 111 101 105 -17 14 17 14 20 19 17 13 14 14 28 26 28 27 28 27 29 28 26 27 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 6 6 6 7 7 7 7 7 7 12 12 12 12 12 12 12 12 12 12 -24 24 22 23 24 24 24 25 24 25 45 45 45 45 45 45 45 45 45 45 -26 26 23 24 26 26 26 26 26 26 48 48 48 48 48 48 48 48 48 48 -85 88 75 81 84 84 87 93 90 94 161 165 162 164 161 164 161 162 165 164 -93 95 83 88 93 94 97 100 99 100 179 181 179 180 178 180 178 180 182 181 -84 91 73 82 85 92 128 191 184 142 254 275 243 256 241 256 242 272 288 286 -134 137 124 125 144 173 247 244 278 165 420 416 387 394 396 394 397 441 440 449 -174 169 173 156 202 311 395 259 363 186 607 554 539 532 569 532 571 628 594 621 -292 276 344 256 427 720 790 322 572 287 1116 930 959 913 1043 913 1048 1133 1010 1085 -182 161 282 151 369 535 511 180 285 164 652 492 546 499 610 498 614 647 539 597 -192 158 333 150 466 604 503 164 220 156 617 425 511 448 581 447 585 593 463 526 -241 163 493 158 799 944 663 159 189 155 748 408 595 472 710 471 715 684 451 556 -100 60 177 58 276 290 178 56 62 56 202 102 166 128 198 127 199 177 107 135 -48 23 75 23 101 94 50 20 22 20 62 37 54 41 63 41 63 52 37 40 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -162 503 56 287 56 54 54 279 63 605 76 315 217 294 125 294 113 92 258 172 -181 730 139 453 146 141 146 718 184 1017 370 751 559 691 426 692 419 425 685 562 -263 692 212 549 228 225 239 988 455 1176 709 1122 874 1028 742 1029 737 798 1081 957 -270 446 226 399 251 252 276 804 526 814 773 1016 840 939 770 940 768 846 1015 949 -347 399 302 367 342 349 385 892 717 776 1069 1254 1082 1168 1039 1169 1039 1151 1281 1241 -358 373 318 342 362 379 511 757 729 565 1118 1198 1078 1128 1072 1128 1073 1185 1245 1238 -516 513 461 471 527 552 767 755 841 531 1374 1366 1299 1316 1320 1316 1323 1422 1421 1441 -849 852 700 778 788 902 992 819 951 833 1652 1623 1614 1610 1632 1609 1633 1665 1646 1662 -493 484 517 446 629 979 1062 506 806 498 1545 1339 1370 1319 1464 1318 1469 1566 1428 1512 -382 357 588 334 768 1117 1071 381 585 363 1396 1071 1181 1083 1312 1082 1319 1388 1167 1285 -348 300 667 286 956 1259 1042 311 407 298 1266 851 1038 901 1190 899 1197 1217 934 1072 -313 210 636 206 1030 1219 860 205 248 198 977 537 778 620 928 618 934 895 594 729 -250 125 528 127 864 910 529 109 131 107 580 232 456 322 565 320 569 492 250 349 -186 68 363 70 518 483 217 63 66 64 229 110 184 111 236 111 237 171 109 111 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 18 16 17 17 17 17 18 17 18 32 32 32 32 32 32 32 32 32 32 -22 22 20 21 22 22 22 22 22 23 41 41 41 41 41 41 41 41 41 41 -118 208 88 170 98 96 105 268 162 310 228 318 263 297 235 297 234 247 309 282 -207 329 169 293 188 189 213 564 382 571 552 717 597 664 550 664 549 602 716 671 -127 156 108 141 123 127 152 303 249 267 342 402 346 374 332 374 332 369 411 398 -123 135 108 122 125 136 187 268 259 203 364 392 349 367 347 367 347 388 409 407 -408 410 370 377 424 471 719 708 811 445 1302 1293 1209 1231 1236 1231 1240 1362 1360 1385 -272 266 265 245 308 504 655 411 601 289 1022 931 904 893 957 893 960 1060 1001 1048 -262 247 309 229 385 648 714 293 520 258 995 828 854 812 929 812 933 1012 901 969 -210 187 332 176 437 644 617 209 338 191 780 585 650 592 728 591 732 775 642 713 -222 182 397 174 562 736 614 191 260 180 746 507 614 535 702 534 706 718 555 634 -189 132 348 127 550 649 466 129 154 126 536 312 434 354 511 353 514 495 341 410 -174 94 351 93 573 604 357 84 97 84 391 166 310 223 381 222 383 334 177 241 -177 64 347 66 497 464 209 59 62 60 217 103 174 105 224 105 225 162 103 105 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -158 491 57 276 57 55 56 280 65 593 79 311 214 289 125 290 112 94 255 172 -182 719 140 445 147 143 148 718 188 1010 368 745 554 685 423 686 416 423 681 560 -238 590 190 470 205 203 216 846 406 999 614 959 750 879 640 880 636 689 926 822 -351 590 300 531 333 334 359 1122 721 1129 1056 1401 1150 1290 1051 1292 1049 1161 1401 1308 -487 519 431 479 491 494 511 1121 916 979 1383 1594 1396 1495 1348 1496 1347 1478 1627 1581 -438 466 390 427 443 473 696 1102 1059 778 1595 1726 1525 1609 1517 1610 1519 1707 1804 1794 -991 953 845 870 960 855 989 968 1013 850 1758 1757 1750 1752 1751 1751 1752 1762 1762 1764 -352 346 333 319 385 599 765 497 706 369 1201 1103 1075 1063 1131 1063 1135 1241 1179 1229 -433 420 466 388 570 913 998 454 750 434 1427 1222 1253 1202 1346 1201 1351 1449 1312 1396 -352 326 500 305 645 914 881 351 516 333 1158 908 991 917 1092 916 1097 1153 982 1074 -236 198 434 188 622 820 683 206 280 196 817 549 669 581 767 579 772 786 603 693 -185 130 342 125 545 645 464 127 152 124 530 307 428 348 504 347 507 489 336 404 -80 53 124 50 187 196 128 50 54 50 149 87 126 102 146 102 147 133 90 108 -140 48 275 50 392 367 165 42 46 43 171 78 135 82 176 82 176 126 78 81 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -51 106 27 70 31 29 30 73 35 127 42 83 65 78 50 78 48 45 72 58 -68 152 47 104 54 52 54 154 70 207 95 160 126 149 103 149 102 104 148 127 -67 70 58 64 65 65 66 72 69 75 124 128 125 127 124 127 124 125 128 126 -75 77 67 71 74 75 76 80 78 81 141 144 142 143 141 143 141 142 144 143 -93 95 83 87 93 94 96 100 98 100 178 180 178 179 177 179 177 179 181 180 -148 153 134 142 150 156 166 175 174 168 307 313 305 308 304 308 304 312 316 315 -107 107 97 99 109 112 114 113 114 111 209 208 207 207 207 207 208 210 210 210 -91 90 83 84 94 96 97 94 95 93 176 175 174 174 175 174 175 176 175 176 -127 119 145 109 180 276 302 147 229 124 400 336 345 329 374 329 376 407 364 390 -126 118 125 110 145 157 155 126 138 120 262 246 251 247 257 247 258 261 251 256 -107 97 108 91 127 136 130 100 110 96 214 197 205 199 211 199 211 212 201 206 -87 76 91 71 108 114 103 75 83 74 167 150 159 153 165 153 165 164 152 158 -58 49 62 46 75 76 65 46 50 46 104 91 99 94 103 94 103 101 92 96 -20 16 22 15 26 25 20 15 16 15 32 28 31 30 32 29 32 31 28 29 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -97 288 38 162 40 38 39 172 45 350 52 183 126 170 76 170 68 59 151 104 -105 304 75 197 82 80 83 308 110 424 174 321 245 297 194 297 192 195 296 248 -125 283 97 223 107 105 113 403 206 472 284 441 345 404 295 404 293 318 427 379 -119 213 97 187 109 110 124 420 268 421 351 485 386 441 348 441 347 392 485 449 -390 432 341 397 387 394 427 991 804 854 1178 1377 1188 1282 1144 1283 1143 1268 1410 1366 -589 579 525 531 599 595 711 947 924 756 1450 1520 1412 1457 1408 1457 1409 1511 1563 1558 -783 763 680 698 774 728 861 844 891 719 1498 1495 1472 1478 1479 1477 1480 1515 1514 1521 -784 785 656 717 741 864 964 786 923 774 1582 1544 1532 1527 1554 1526 1556 1599 1575 1595 -575 572 565 526 679 1005 1086 572 856 586 1587 1408 1434 1389 1516 1388 1521 1608 1488 1562 -426 404 618 377 806 1166 1127 427 640 412 1462 1138 1246 1149 1377 1147 1384 1457 1236 1356 -337 290 652 277 951 1271 1058 302 409 288 1254 829 1018 879 1174 877 1181 1206 917 1059 -295 201 611 197 1021 1223 868 197 240 190 956 511 752 593 905 591 911 876 571 709 -248 124 550 126 937 995 580 108 131 105 606 221 466 318 588 316 592 511 240 351 -145 55 284 57 407 383 177 50 53 51 180 90 143 92 185 92 185 135 90 91 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -156 514 55 278 55 53 54 300 63 627 75 318 213 294 119 294 102 87 259 172 -178 705 137 430 144 140 145 725 190 1010 357 735 541 673 410 675 403 414 673 551 -257 668 208 528 224 222 237 997 471 1170 691 1102 851 1005 720 1006 715 782 1065 942 -348 580 297 523 331 332 358 1138 736 1135 1050 1398 1142 1285 1043 1286 1040 1158 1400 1307 -413 451 362 415 411 418 448 1059 858 908 1253 1465 1262 1363 1215 1364 1214 1349 1500 1454 -576 569 513 521 586 584 720 988 963 769 1494 1573 1449 1500 1444 1501 1446 1563 1623 1617 -687 675 604 619 689 682 908 891 979 661 1599 1591 1530 1546 1550 1546 1553 1642 1641 1659 -730 729 621 667 704 872 1006 777 956 726 1628 1567 1548 1540 1584 1540 1587 1656 1616 1648 -548 543 547 499 661 1002 1089 551 850 557 1575 1385 1411 1365 1499 1364 1504 1597 1470 1548 -417 394 608 368 796 1159 1122 418 635 403 1445 1120 1227 1130 1360 1129 1366 1441 1219 1339 -360 312 697 298 1020 1367 1141 325 441 310 1346 890 1092 942 1260 940 1268 1295 985 1138 -313 213 653 209 1102 1324 940 209 256 200 1029 545 806 634 972 631 979 942 611 761 -259 128 584 131 1005 1070 624 111 136 108 643 227 491 331 623 329 628 541 248 367 -124 49 240 50 342 323 151 44 47 45 155 80 125 82 159 82 160 118 80 82 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 135 24 79 26 25 25 87 30 165 33 91 66 85 43 85 40 36 77 56 -74 250 53 152 59 58 59 259 79 359 118 247 179 225 135 225 133 137 225 183 -95 207 72 161 81 80 86 298 156 347 199 313 243 286 207 286 206 224 303 269 -277 443 233 397 259 261 287 830 553 827 780 1025 844 944 775 945 773 857 1027 961 -404 440 354 404 402 409 440 996 814 856 1185 1379 1193 1285 1150 1286 1150 1274 1412 1370 -361 376 321 345 366 384 547 827 800 592 1184 1273 1133 1190 1128 1191 1130 1263 1329 1323 -379 381 345 350 395 450 718 705 818 421 1273 1262 1172 1195 1202 1196 1206 1338 1336 1363 -401 395 372 363 429 637 802 542 747 417 1247 1154 1124 1113 1178 1113 1182 1287 1227 1276 -302 288 348 266 433 744 827 336 609 300 1134 945 971 925 1057 924 1062 1156 1029 1107 -328 302 477 283 625 910 882 329 507 308 1126 870 953 877 1058 876 1063 1124 948 1043 -294 250 546 238 797 1065 893 262 359 248 1052 700 855 740 985 738 991 1013 774 892 -236 165 410 159 647 768 564 162 201 156 654 393 532 440 622 438 626 607 428 508 -213 109 473 111 818 872 512 96 116 95 525 190 402 273 508 271 512 443 206 302 -95 35 169 37 233 220 108 24 31 25 122 61 100 70 124 69 125 95 61 68 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -108 383 35 197 36 36 35 226 40 473 39 221 140 202 69 202 56 46 177 111 -144 529 106 324 113 110 114 554 157 766 269 553 405 505 308 506 302 312 506 415 -223 530 177 421 193 190 204 789 394 916 560 874 680 798 581 799 577 630 846 753 -275 424 230 379 257 259 285 770 525 765 740 958 796 886 734 887 733 808 961 902 -391 426 343 391 389 396 428 932 768 803 1115 1291 1121 1205 1083 1206 1082 1196 1322 1284 -499 500 445 458 507 513 642 872 851 677 1300 1371 1259 1305 1255 1305 1257 1363 1416 1412 -642 632 566 579 646 647 858 842 925 627 1495 1488 1429 1444 1448 1444 1451 1537 1536 1553 -572 568 505 521 576 750 891 664 841 579 1411 1339 1316 1307 1358 1307 1361 1443 1396 1434 -357 343 397 317 492 830 922 389 687 356 1272 1069 1096 1047 1189 1047 1194 1295 1160 1244 -277 252 450 237 604 926 897 279 478 257 1102 817 910 825 1026 824 1032 1100 905 1011 -256 216 475 206 697 936 786 227 316 215 915 605 741 640 856 638 861 882 670 775 -229 161 443 156 741 891 642 158 193 153 704 387 557 444 666 443 670 648 431 529 -92 54 187 53 325 347 209 51 56 51 208 82 161 112 202 111 203 177 87 123 -29 21 34 19 44 42 29 22 21 22 42 34 39 36 42 36 42 39 34 35 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 14 12 13 14 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 -26 26 23 24 25 25 25 26 26 26 47 47 47 47 47 47 47 47 47 47 -52 53 46 49 51 51 52 54 53 55 95 97 96 97 95 97 95 96 97 96 -107 114 93 105 103 104 109 125 118 126 206 215 208 212 206 212 206 209 215 213 -128 135 114 125 127 130 138 152 147 150 258 266 258 262 256 262 256 261 267 266 -144 148 130 137 145 151 161 169 168 162 297 302 294 297 294 297 294 301 305 304 -66 68 61 62 72 93 153 150 177 85 246 243 221 226 228 227 229 262 262 269 -152 149 143 139 163 175 184 169 179 158 323 316 314 313 318 313 318 326 322 326 -62 61 56 57 63 64 64 62 63 62 116 116 116 116 116 115 116 116 116 116 -161 144 269 135 368 573 555 162 292 147 655 474 532 478 606 478 610 654 530 597 -225 190 436 181 650 882 739 200 285 189 842 544 674 577 784 575 790 810 607 707 -208 146 433 142 753 913 652 145 174 140 689 356 534 416 648 414 653 630 403 506 -36 32 36 30 42 42 39 31 33 31 65 61 63 62 65 62 65 64 61 62 -99 42 187 42 267 253 123 38 40 38 125 69 100 71 127 71 128 96 69 70 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -118 420 41 214 42 42 42 257 48 522 52 249 159 227 82 228 67 58 201 129 -167 666 129 398 136 133 138 713 190 981 332 701 509 638 382 639 375 389 642 524 -92 168 71 134 80 79 85 234 138 267 174 253 203 234 178 234 178 191 247 223 -73 75 65 69 72 73 74 78 76 79 137 140 138 139 137 139 137 138 140 139 -90 92 81 85 90 91 94 97 96 97 173 175 173 174 172 174 172 174 176 175 -117 119 106 111 119 122 127 130 130 128 233 235 232 233 231 233 232 235 237 237 -138 139 127 129 143 150 157 155 159 149 285 284 280 281 281 281 282 288 287 289 -129 126 128 116 151 228 290 196 270 140 414 376 364 360 386 360 387 430 406 425 -182 170 210 158 261 419 465 214 353 179 622 520 533 509 580 508 583 634 566 608 -223 199 341 187 454 682 664 226 375 202 817 614 678 618 762 618 766 816 677 752 -218 180 381 171 554 740 627 190 270 178 734 493 597 519 687 518 691 708 544 625 -161 117 279 112 454 543 401 116 141 113 449 265 362 297 426 296 429 416 291 347 -108 62 230 61 408 437 263 58 65 58 258 99 197 134 249 133 251 218 104 149 -81 32 155 33 221 210 101 28 30 29 101 53 80 56 103 56 103 76 53 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -101 344 38 176 39 38 39 216 45 427 50 209 136 191 74 192 62 55 171 113 -157 613 120 366 128 125 130 664 182 909 308 648 470 590 353 591 347 361 594 486 -235 597 189 470 205 203 218 936 456 1081 623 1003 766 910 646 911 642 710 972 860 -341 560 291 505 324 326 354 1160 758 1139 1034 1386 1121 1267 1022 1268 1020 1147 1392 1299 -472 492 416 452 474 479 501 1158 954 984 1365 1584 1369 1474 1322 1476 1322 1468 1624 1578 -718 689 640 632 731 708 824 1055 1037 853 1624 1687 1584 1626 1582 1626 1583 1681 1728 1724 -952 918 815 840 924 835 1000 978 1036 825 1749 1748 1728 1733 1734 1732 1735 1764 1763 1769 -920 924 749 843 838 952 1057 873 1017 889 1740 1713 1704 1700 1721 1699 1722 1754 1736 1751 -670 676 623 619 741 1065 1150 644 936 688 1677 1516 1537 1497 1612 1496 1616 1699 1591 1658 -457 437 645 407 851 1256 1227 460 703 447 1547 1204 1314 1212 1457 1210 1464 1549 1313 1442 -349 301 673 287 1010 1376 1160 316 446 299 1325 860 1061 910 1234 908 1242 1276 961 1117 -263 184 553 180 978 1192 855 182 223 174 898 459 692 537 843 535 850 821 522 658 -234 118 542 121 975 1048 621 103 128 100 609 211 455 298 587 296 591 510 223 337 -95 54 177 52 256 245 125 63 58 64 124 87 103 82 126 82 126 99 87 83 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -126 456 46 226 46 45 45 287 53 569 60 273 174 249 90 250 74 65 222 144 -164 656 127 388 135 131 136 719 195 982 325 694 500 630 373 632 367 384 637 519 -246 633 199 498 216 213 229 1009 490 1162 662 1072 815 971 686 972 682 757 1040 919 -336 551 287 498 319 322 350 1156 757 1132 1022 1373 1108 1254 1010 1255 1008 1136 1380 1288 -459 480 405 441 461 466 492 1155 951 976 1346 1567 1350 1456 1302 1458 1302 1452 1609 1562 -530 529 472 485 539 542 713 998 977 743 1455 1541 1400 1458 1397 1458 1399 1535 1599 1595 -676 665 595 610 678 679 921 901 997 653 1589 1581 1514 1531 1536 1531 1539 1638 1636 1655 -665 662 576 606 654 856 1023 758 968 667 1609 1529 1501 1492 1549 1492 1552 1645 1593 1636 -513 506 519 466 632 1005 1110 525 861 520 1549 1343 1368 1318 1464 1317 1469 1576 1438 1524 -451 430 639 401 846 1256 1229 454 702 440 1538 1193 1303 1200 1447 1199 1454 1541 1303 1433 -311 266 604 254 913 1250 1055 280 402 265 1192 767 950 812 1108 810 1116 1148 859 1003 -276 193 588 189 1053 1288 924 190 235 182 961 484 736 568 901 566 908 879 553 702 -217 110 514 113 941 1013 600 97 120 94 577 194 427 275 555 272 559 482 204 313 -88 45 167 44 239 229 115 47 46 47 113 73 92 71 115 71 115 89 73 72 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -103 366 39 181 41 39 40 235 47 458 53 221 142 202 75 202 63 56 181 119 -142 510 105 307 112 109 114 563 170 765 262 545 395 495 298 496 294 307 501 410 -159 349 125 276 137 136 147 534 283 609 371 574 446 523 382 523 380 418 558 498 -124 137 106 125 118 119 128 157 144 158 245 261 249 255 244 255 244 250 261 257 -155 169 136 155 151 157 173 206 195 198 328 345 328 336 324 336 324 336 349 345 -102 103 92 96 104 106 109 110 110 109 199 200 198 199 198 199 198 200 201 201 -128 128 117 119 132 137 143 141 144 136 259 259 255 256 256 256 257 261 261 262 -138 134 139 123 166 246 311 216 291 152 444 404 390 386 414 386 415 461 436 457 -164 154 190 142 237 393 440 194 332 162 573 475 487 464 532 463 534 585 520 561 -230 204 329 191 435 640 627 234 374 208 776 593 650 597 725 596 729 776 651 719 -248 210 455 200 682 929 789 222 318 209 892 583 715 615 831 614 836 861 650 755 -242 172 493 167 876 1071 775 170 210 163 809 419 624 487 759 485 765 742 475 597 -152 82 353 83 652 703 420 75 88 74 399 139 296 192 383 190 386 334 145 218 -72 30 139 31 198 190 93 27 29 28 90 51 71 52 92 52 92 69 51 52 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -36 106 17 56 19 18 18 73 22 133 24 69 47 64 29 64 26 25 58 41 -109 373 80 224 87 85 89 416 132 561 191 396 286 359 216 360 213 224 364 299 -88 190 68 147 77 76 82 293 157 333 184 294 224 266 190 266 189 209 285 253 -178 303 148 270 165 167 188 655 428 636 542 745 590 675 534 676 533 608 750 697 -394 424 345 387 392 400 436 1075 881 895 1213 1427 1214 1318 1169 1319 1168 1316 1469 1424 -655 637 584 584 666 653 803 1058 1041 822 1582 1655 1533 1582 1531 1583 1533 1651 1706 1702 -676 665 595 610 678 679 920 898 995 653 1575 1566 1500 1517 1523 1517 1526 1623 1621 1641 -525 521 471 478 539 768 959 669 901 537 1468 1369 1336 1325 1394 1325 1398 1512 1449 1501 -336 322 368 297 457 773 867 372 656 335 1163 977 998 954 1085 954 1090 1187 1063 1141 -323 297 478 278 643 978 959 327 541 304 1166 882 971 887 1089 886 1095 1169 973 1080 -268 228 501 217 758 1039 882 241 348 227 989 640 789 676 919 674 926 954 716 835 -257 182 533 177 962 1182 855 180 224 172 882 448 676 523 827 521 833 809 512 647 -186 98 442 99 826 893 533 87 106 84 502 171 369 235 482 233 485 419 177 270 -57 23 96 24 131 125 66 15 20 15 75 41 62 47 76 47 76 61 41 46 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -98 378 36 178 37 37 37 248 43 479 45 220 135 199 65 199 52 47 178 113 -128 547 99 312 105 103 107 624 167 847 252 574 402 516 291 517 287 304 525 423 -236 580 191 456 207 205 221 945 475 1075 618 994 755 899 638 899 634 707 966 856 -295 485 251 437 279 282 310 1058 697 1024 907 1228 981 1116 893 1118 891 1013 1237 1153 -378 410 331 373 376 384 423 1071 876 884 1190 1407 1191 1295 1145 1297 1145 1296 1450 1405 -516 516 460 473 525 530 714 998 981 731 1433 1519 1374 1433 1372 1433 1374 1515 1580 1576 -362 365 331 335 379 439 691 674 785 406 1168 1156 1070 1092 1100 1092 1103 1231 1228 1254 -310 304 296 280 345 549 720 469 670 329 1062 968 936 926 991 926 995 1104 1044 1093 -252 239 285 221 356 603 680 291 513 250 895 745 762 726 831 726 835 915 814 877 -283 259 424 242 573 880 865 288 486 264 1038 779 859 783 967 782 973 1041 862 960 -284 241 515 230 778 1064 908 255 367 240 1021 667 817 703 950 701 956 986 745 865 -240 171 507 167 936 1154 835 170 210 162 847 419 643 493 791 491 798 774 483 616 -182 96 436 98 823 892 533 85 105 83 497 168 362 229 476 227 480 414 173 265 -28 0 80 2 120 115 45 0 0 0 25 0 11 0 26 0 26 10 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -97 371 37 174 38 37 38 248 45 471 49 219 136 198 67 199 55 51 178 115 -156 592 116 347 123 120 126 680 203 915 295 638 453 576 336 577 332 351 586 477 -241 607 195 477 212 210 227 1012 504 1149 644 1050 791 947 665 947 661 741 1021 902 -288 474 245 428 273 275 304 1053 694 1015 892 1212 965 1100 878 1101 875 998 1222 1138 -375 407 328 370 373 381 421 1073 879 883 1185 1402 1184 1289 1139 1291 1138 1291 1446 1402 -700 675 624 619 713 691 827 1056 1043 837 1594 1658 1550 1594 1549 1594 1550 1656 1703 1701 -1001 962 852 880 965 855 995 971 1019 848 1732 1733 1725 1727 1727 1726 1728 1738 1737 1739 -1011 1019 806 928 892 924 971 872 948 959 1640 1654 1658 1659 1651 1658 1651 1636 1645 1637 -500 492 498 453 605 946 1047 513 826 507 1446 1259 1280 1235 1367 1235 1372 1472 1347 1425 -351 326 479 304 635 937 923 357 552 334 1141 887 966 891 1072 890 1077 1145 970 1066 -282 240 510 228 773 1060 907 254 367 238 1014 660 809 696 942 694 948 979 739 859 -243 174 486 169 882 1085 793 173 216 164 815 419 625 487 763 485 769 749 478 602 -165 89 387 90 733 795 479 80 97 78 446 157 326 208 427 206 430 373 162 240 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -51 176 22 85 23 23 23 122 28 223 29 107 68 97 37 97 32 30 88 59 -74 233 54 139 60 59 61 269 94 357 117 244 174 220 131 220 130 137 225 184 -124 290 99 226 109 108 117 478 247 540 297 482 363 434 306 434 304 341 469 415 -262 406 221 365 247 249 278 843 575 813 743 986 798 900 732 902 730 824 994 931 -310 346 269 314 306 315 360 850 704 703 942 1109 940 1022 905 1023 905 1024 1144 1110 -388 400 346 366 395 412 578 813 801 585 1136 1211 1083 1134 1082 1135 1084 1208 1265 1262 -380 382 346 351 396 466 788 766 907 423 1326 1310 1203 1230 1240 1230 1244 1404 1399 1432 -228 223 223 205 262 446 600 376 557 246 859 774 744 736 794 736 798 897 843 888 -191 180 225 166 288 532 609 227 448 189 768 623 638 604 706 604 710 788 691 752 -160 144 242 134 332 517 509 164 287 147 588 432 480 434 544 434 548 590 483 541 -124 103 179 96 257 338 296 110 152 102 339 239 281 249 318 248 320 329 261 295 -146 114 205 108 316 374 293 114 136 111 347 237 293 255 332 254 334 329 253 287 -158 88 333 88 612 664 409 79 97 76 396 161 298 202 380 200 383 337 166 229 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -38 133 17 63 18 18 18 93 21 169 23 81 52 73 28 73 25 23 67 45 -92 333 69 192 75 74 77 392 125 523 159 352 247 316 181 316 179 191 323 262 -141 314 112 246 123 123 133 512 273 576 332 527 401 476 341 476 339 379 514 457 -68 103 56 89 64 65 74 206 143 199 162 219 174 198 159 198 158 181 221 206 -128 151 110 135 126 131 161 379 313 310 386 463 384 422 369 423 369 424 479 464 -241 259 215 236 246 268 414 610 601 417 812 876 766 810 765 810 767 875 923 921 -120 124 112 113 131 173 295 286 343 155 462 456 411 422 427 422 428 495 493 507 -131 129 130 118 154 236 306 206 286 143 421 381 367 363 390 363 392 438 413 434 -101 95 112 87 143 237 268 121 204 100 318 261 266 253 293 253 295 326 287 312 -129 114 172 106 229 331 328 134 207 116 388 298 325 299 362 298 364 389 327 361 -58 50 94 46 148 203 175 53 75 51 175 110 137 117 161 116 163 169 125 147 -97 75 141 71 228 273 211 76 91 74 232 148 191 162 220 161 222 218 160 186 -61 43 95 41 159 171 115 41 46 42 123 72 101 80 119 80 120 110 73 87 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -26 90 12 43 13 12 12 64 15 115 16 55 35 50 19 50 17 17 46 31 -109 432 84 244 90 88 92 518 157 689 203 463 321 414 233 415 230 247 425 343 -212 536 172 418 187 186 201 931 468 1046 568 940 699 843 585 843 581 658 915 807 -319 511 273 462 304 307 338 1175 783 1120 983 1335 1060 1209 965 1211 962 1103 1348 1258 -215 251 185 226 210 220 267 649 536 528 685 818 682 747 655 748 655 752 847 820 -379 391 338 358 385 404 602 873 861 601 1191 1276 1128 1187 1128 1188 1130 1275 1340 1337 -655 645 578 592 659 671 935 909 1019 638 1569 1559 1484 1503 1511 1503 1514 1624 1621 1644 -792 791 666 724 750 927 1085 839 1037 779 1701 1637 1614 1607 1652 1606 1655 1730 1690 1724 -583 580 563 533 681 1079 1200 580 951 594 1643 1437 1458 1409 1555 1408 1561 1674 1535 1623 -424 401 607 374 823 1275 1262 431 714 410 1500 1140 1250 1143 1403 1142 1411 1511 1260 1399 -323 277 621 264 976 1368 1171 294 439 275 1262 792 988 837 1166 835 1174 1219 899 1060 -256 184 539 179 1033 1289 941 183 232 172 928 447 696 528 863 526 871 850 521 672 -184 98 430 100 836 912 556 86 110 83 506 180 365 229 482 227 486 423 186 269 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -82 346 32 152 34 34 34 245 40 448 42 199 118 178 53 178 45 43 161 101 -131 528 102 297 109 107 111 643 197 852 252 574 398 514 289 515 284 307 528 426 -167 396 134 310 147 146 159 682 354 762 422 687 514 617 433 617 430 486 670 593 -250 405 211 365 236 238 268 945 630 897 773 1057 833 954 757 956 755 870 1069 996 -330 364 288 330 327 337 389 943 783 767 1023 1208 1017 1108 979 1110 979 1116 1249 1212 -260 281 232 257 265 293 517 817 806 513 1051 1145 979 1045 979 1046 981 1146 1218 1215 -160 164 149 150 173 227 396 383 461 202 628 618 558 572 579 573 581 672 669 688 -194 189 198 175 234 347 443 308 416 215 635 579 558 553 591 553 594 660 624 654 -240 224 276 208 343 556 628 294 485 237 825 689 702 671 765 671 769 843 753 810 -170 152 236 142 319 481 477 176 288 155 560 423 464 424 521 424 524 562 468 520 -121 102 197 96 303 416 360 109 157 103 385 251 306 264 357 263 359 372 281 327 -115 88 187 83 324 395 300 89 108 86 315 184 251 205 297 204 299 293 204 245 -105 62 236 62 465 508 313 58 68 57 280 105 203 129 267 128 269 235 108 152 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -57 253 22 107 23 24 23 181 27 330 25 140 80 124 32 125 27 26 113 68 -100 406 77 225 83 82 85 502 157 664 184 436 297 388 213 389 209 228 400 321 -178 433 144 338 158 157 170 763 392 851 462 761 565 681 473 681 470 535 742 655 -273 444 233 401 259 262 293 1068 710 1009 863 1186 930 1068 844 1070 842 974 1200 1117 -80 93 68 82 79 82 102 225 188 184 215 258 213 235 205 235 205 237 268 259 -144 160 128 145 147 168 245 335 332 243 434 466 410 432 410 432 411 467 491 491 -184 188 171 172 198 250 392 380 447 228 620 611 559 572 578 572 580 658 656 672 -306 301 293 277 342 557 742 478 692 326 1059 960 924 914 982 914 986 1103 1041 1093 -254 241 288 223 365 668 768 296 575 254 967 791 808 767 890 767 895 992 875 949 -217 195 324 183 445 700 695 226 396 199 802 593 655 594 743 594 748 807 662 742 -209 175 378 166 591 827 714 188 284 174 766 486 602 512 707 511 713 741 550 646 -170 127 319 122 600 746 555 127 158 122 552 284 420 328 514 326 519 508 325 409 -129 74 290 74 570 624 386 67 82 65 348 132 252 161 331 159 334 292 137 189 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -79 369 31 153 32 33 32 268 38 482 38 206 117 182 46 183 40 39 165 100 -145 576 113 321 121 119 124 721 233 947 279 637 439 569 319 570 314 342 588 475 -228 570 185 444 201 200 217 1032 525 1147 614 1022 754 913 629 912 625 715 998 880 -315 496 269 449 300 304 336 1190 799 1121 973 1326 1046 1197 951 1199 949 1096 1343 1253 -431 455 379 414 432 440 494 1199 1000 968 1306 1534 1296 1410 1250 1411 1250 1423 1587 1542 -620 608 553 558 631 622 820 1095 1088 804 1567 1646 1503 1560 1504 1560 1506 1648 1709 1707 -809 790 703 724 799 768 1011 981 1077 741 1695 1687 1631 1645 1652 1645 1654 1737 1734 1751 -775 774 655 708 738 929 1101 839 1051 763 1701 1629 1602 1595 1645 1594 1649 1733 1688 1726 -561 557 546 511 664 1087 1219 564 962 571 1632 1414 1434 1383 1538 1382 1545 1667 1520 1613 -412 388 592 362 812 1282 1275 420 719 397 1481 1114 1224 1116 1381 1115 1389 1496 1239 1382 -314 269 602 257 966 1368 1179 287 435 267 1242 768 963 812 1142 810 1151 1201 878 1041 -244 177 513 173 1022 1286 946 178 227 166 908 425 672 505 841 502 848 831 500 653 -173 93 423 95 867 951 583 82 105 78 503 169 353 209 477 207 481 417 176 254 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -71 345 28 141 30 30 30 254 35 453 34 191 106 168 41 167 36 36 154 92 -137 518 106 292 114 112 117 657 220 857 257 580 401 518 293 519 287 315 536 435 -217 525 176 410 192 191 208 953 494 1054 572 944 699 844 585 843 581 665 923 816 -301 465 257 421 287 290 323 1108 752 1041 910 1234 976 1114 889 1116 887 1024 1251 1169 -418 444 368 404 419 427 488 1192 995 957 1284 1513 1273 1387 1227 1389 1227 1403 1567 1522 -578 572 516 524 588 586 802 1090 1084 780 1532 1617 1463 1524 1464 1524 1466 1620 1685 1684 -750 735 656 674 746 737 1002 970 1079 704 1665 1655 1587 1604 1612 1604 1614 1715 1712 1733 -725 723 621 662 701 914 1103 819 1049 719 1679 1595 1564 1555 1614 1555 1617 1717 1664 1708 -543 537 532 494 649 1084 1222 551 960 552 1618 1393 1413 1361 1520 1360 1527 1654 1502 1599 -403 379 582 354 802 1276 1271 413 715 388 1464 1096 1206 1097 1363 1096 1371 1479 1222 1365 -309 264 593 253 958 1363 1177 283 433 263 1229 755 950 799 1129 797 1138 1188 866 1029 -237 173 499 169 1004 1268 934 174 222 162 888 410 654 490 821 487 829 813 486 638 -166 89 405 92 842 927 570 79 102 75 486 164 336 198 457 196 464 402 170 243 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -24 103 11 44 12 11 12 79 14 136 14 60 35 53 16 53 15 15 49 31 -68 175 50 108 56 55 57 216 93 276 102 196 143 178 112 178 110 119 183 154 -99 194 79 152 88 88 95 325 186 356 210 324 248 292 213 292 212 238 318 284 -116 166 94 145 106 109 129 312 230 296 273 353 288 323 268 323 267 301 357 337 -167 197 144 177 163 172 220 468 396 379 489 578 484 529 467 529 467 536 600 582 -256 277 229 253 262 292 419 566 564 408 758 808 717 753 718 753 719 811 849 849 -285 289 263 265 303 369 586 564 665 334 929 916 840 858 868 859 871 985 980 1005 -205 201 203 185 240 379 498 331 467 224 692 626 602 595 640 595 643 722 680 715 -250 235 284 218 358 641 738 301 560 249 925 758 773 735 851 735 856 949 838 909 -185 166 267 155 369 580 579 193 337 170 657 485 535 486 607 485 611 661 543 609 -120 101 171 94 253 338 300 109 152 101 333 232 272 241 311 240 313 324 255 289 -99 79 142 74 235 285 223 80 96 78 243 155 199 169 230 168 231 229 169 196 -53 36 102 34 205 225 145 34 39 34 126 55 92 62 119 61 121 107 56 72 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 5 4 4 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 -35 37 31 34 34 34 35 37 36 39 64 66 65 65 64 65 64 64 65 65 -39 40 35 37 39 39 40 40 40 41 72 73 72 73 72 73 72 72 73 73 -48 49 43 45 49 49 49 50 49 50 90 91 90 90 90 90 90 90 91 91 -60 61 54 56 61 61 62 63 62 63 114 114 114 114 113 114 113 114 114 114 -66 67 60 62 67 68 69 69 69 69 126 126 125 126 125 126 125 126 126 126 -65 64 59 60 66 66 67 66 66 66 122 122 121 122 122 122 122 122 122 122 -100 98 96 89 116 189 253 164 236 108 318 284 271 268 292 268 293 334 312 330 -98 93 107 85 139 237 272 120 208 98 310 252 256 243 284 243 286 319 280 305 -220 200 333 187 470 766 766 230 427 205 847 613 681 613 780 612 785 855 693 783 -216 184 396 175 643 917 797 197 304 184 820 505 632 533 752 531 758 794 579 688 -189 141 394 137 814 1033 765 143 180 135 710 319 518 385 654 383 661 650 384 507 -136 76 323 77 689 762 472 68 86 65 396 138 269 160 368 159 377 328 143 198 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -54 282 24 110 26 26 26 219 31 377 29 156 82 137 31 131 31 30 126 75 -136 539 107 297 115 112 118 720 241 930 252 611 412 541 294 542 282 322 565 455 -202 486 165 380 180 180 196 932 486 1018 537 898 656 798 547 798 543 630 880 777 -273 417 232 377 259 263 297 1036 709 961 827 1129 884 1014 806 1016 804 935 1147 1071 -387 416 340 378 387 397 472 1138 956 900 1199 1416 1184 1293 1142 1295 1142 1315 1471 1430 -520 520 464 477 529 535 766 1050 1050 728 1438 1523 1364 1426 1367 1427 1369 1530 1595 1595 -488 486 438 446 501 563 882 847 991 513 1414 1396 1295 1319 1332 1320 1336 1488 1482 1514 -321 316 305 291 356 610 833 521 778 341 1151 1036 993 982 1061 982 1066 1203 1131 1192 -302 289 325 267 407 726 834 347 640 303 1045 866 880 840 965 839 970 1073 953 1029 -313 289 454 270 633 1019 1021 325 580 296 1149 849 935 848 1064 847 1070 1161 952 1069 -163 137 249 129 379 521 460 148 215 136 501 338 403 352 465 351 468 487 376 432 -114 91 159 86 262 318 252 92 111 90 279 183 230 198 264 197 266 264 198 228 -62 46 93 44 161 175 121 45 50 45 131 82 107 87 126 87 127 118 84 95 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -34 158 17 64 18 18 18 126 22 212 22 92 50 81 23 77 23 23 75 47 -91 277 68 162 75 74 77 364 143 464 148 317 222 283 167 283 161 181 296 243 -118 240 94 188 105 105 114 428 242 464 267 421 317 378 271 378 270 307 414 370 -149 224 125 198 140 143 166 516 362 479 413 558 440 502 402 503 402 465 567 530 -163 182 142 166 159 168 194 247 231 227 363 389 362 374 357 374 357 377 395 390 -145 151 132 140 148 157 172 184 184 171 311 317 306 310 306 310 306 317 322 322 -122 124 113 114 133 180 315 300 365 156 462 453 405 416 423 417 424 497 494 510 -168 164 166 151 196 327 441 283 412 183 590 529 505 500 542 500 544 618 579 612 -138 128 155 119 196 317 361 175 283 137 442 366 372 355 408 355 410 454 403 435 -135 122 189 113 266 421 422 142 248 125 460 337 371 336 424 336 426 464 379 426 -199 167 354 159 574 820 717 181 282 167 737 457 569 481 676 480 681 714 524 620 -169 128 327 123 663 842 631 129 164 122 591 278 437 331 546 329 551 544 331 430 -86 53 179 53 374 415 264 49 60 48 228 94 159 104 211 103 217 192 98 124 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -42 232 20 88 22 23 22 187 27 315 25 129 65 112 26 105 26 26 104 62 -120 471 94 258 101 100 104 652 222 835 215 540 359 475 254 476 240 282 500 401 -197 479 161 374 176 175 192 953 499 1034 528 898 648 794 537 794 533 625 882 776 -304 443 259 401 291 295 331 1079 754 996 881 1184 936 1068 858 1069 856 992 1204 1129 -415 438 366 399 417 426 493 1015 874 822 1127 1298 1113 1200 1081 1201 1081 1220 1343 1311 -610 598 544 549 621 611 783 990 993 745 1420 1479 1365 1410 1368 1410 1370 1486 1532 1532 -552 547 492 502 562 618 959 918 1071 564 1526 1507 1403 1428 1442 1429 1446 1604 1596 1630 -536 531 480 488 550 837 1093 730 1029 548 1553 1429 1381 1370 1455 1370 1461 1610 1532 1598 -442 431 450 397 557 1032 1189 475 915 447 1488 1240 1259 1203 1377 1202 1384 1528 1362 1469 -393 369 551 344 766 1230 1238 406 710 378 1393 1039 1140 1037 1292 1036 1300 1408 1162 1300 -260 221 484 211 803 1162 1015 239 378 221 1022 617 779 651 934 650 941 990 715 855 -205 151 361 145 686 864 658 152 200 142 650 338 494 389 604 388 609 603 391 489 -120 73 227 72 449 498 323 67 84 64 300 142 219 155 280 155 288 259 147 180 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -20 48 13 26 14 14 14 42 18 62 20 37 27 34 21 34 21 21 33 26 -90 173 67 120 74 73 77 213 116 260 143 222 177 206 151 206 149 158 212 188 -129 213 102 173 114 114 126 335 216 357 264 367 296 337 266 337 265 290 362 332 -53 53 47 49 53 53 54 55 55 56 99 100 99 99 99 99 99 99 100 100 -29 28 26 26 29 29 29 28 28 29 53 53 53 53 53 53 53 53 53 53 -126 130 114 120 129 134 144 150 150 143 260 264 257 259 257 259 257 264 267 267 -68 68 62 63 69 70 71 70 70 70 129 129 128 128 128 128 128 129 129 129 -61 60 55 56 62 63 63 62 62 62 114 114 114 114 114 114 114 114 114 114 -68 67 63 62 71 73 73 70 71 69 130 129 129 129 130 129 130 131 130 130 -28 28 25 26 28 28 28 28 28 28 52 52 52 52 52 52 52 52 52 52 -42 41 39 38 44 45 45 42 43 42 79 78 78 78 79 78 79 79 78 79 -22 22 20 20 23 23 23 22 22 22 41 41 41 41 41 41 41 41 41 41 -27 24 28 22 34 35 31 23 25 23 50 45 47 46 49 46 49 48 45 46 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 3 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -40 93 29 58 34 33 35 122 58 152 55 106 76 95 60 95 58 65 99 84 -71 77 61 70 68 68 72 83 78 85 133 140 135 138 133 138 133 135 140 138 -96 102 83 94 93 94 100 115 109 114 186 194 187 191 185 191 185 189 195 193 -44 44 39 40 44 44 45 44 44 45 81 82 81 81 81 81 81 81 82 82 -116 124 103 112 119 134 208 287 290 194 343 368 318 337 319 338 320 372 392 393 -203 206 188 189 218 291 521 494 604 249 780 764 685 703 715 704 718 839 832 859 -120 117 117 107 140 226 302 198 283 131 384 343 328 324 352 324 353 403 377 399 -154 145 171 134 218 396 460 191 351 154 542 439 447 424 495 424 498 558 490 534 -261 240 382 224 543 895 904 275 512 246 982 712 787 709 902 708 909 993 806 911 -245 208 455 198 770 1125 986 226 363 208 973 578 735 611 886 610 893 943 675 811 -181 137 369 132 793 1021 766 139 179 130 685 295 491 361 627 359 634 628 364 487 -26 18 60 17 151 169 106 17 19 18 75 23 44 25 66 24 70 60 23 32 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 143 14 52 15 16 15 121 18 197 17 80 38 69 18 62 18 17 65 39 -83 251 63 145 69 68 72 353 141 443 130 294 201 260 149 261 141 165 275 225 -142 250 112 201 125 125 139 428 264 455 304 445 348 404 307 403 305 341 439 399 -124 178 103 156 117 119 140 408 293 374 321 430 339 386 311 387 311 361 438 411 -137 164 117 146 133 143 192 363 316 292 374 438 368 400 356 400 357 409 456 444 -200 215 179 196 205 230 383 544 550 348 676 727 626 664 629 665 630 735 775 776 -216 220 200 201 232 313 582 549 678 263 867 848 757 779 792 779 795 935 927 958 -219 215 213 197 252 484 692 408 643 238 896 791 750 740 813 740 817 945 879 935 -383 371 393 342 486 902 1044 425 807 386 1283 1065 1080 1031 1184 1031 1190 1319 1173 1268 -299 276 446 259 642 1079 1093 314 607 284 1170 839 930 835 1073 834 1080 1185 955 1084 -228 194 411 184 692 1008 887 211 336 194 877 526 664 555 798 554 805 850 612 734 -146 112 285 108 615 793 598 114 145 108 531 232 382 282 486 281 492 488 285 379 -75 47 153 46 343 385 247 43 53 42 203 84 135 92 183 91 193 171 87 108 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -21 122 12 43 13 12 13 105 16 169 15 69 33 60 16 53 16 16 56 34 -77 293 59 158 65 65 67 436 155 549 123 339 217 294 149 295 136 170 314 250 -86 185 69 142 78 78 85 377 208 401 193 331 236 291 195 290 194 230 326 287 -258 380 219 343 246 250 286 1037 723 937 787 1084 836 966 761 968 759 899 1108 1035 -350 380 307 345 349 361 461 1070 913 825 1087 1286 1064 1167 1029 1169 1029 1199 1343 1307 -217 234 194 213 222 251 388 526 532 356 668 714 623 658 626 658 628 722 757 758 -60 62 56 56 66 92 165 156 192 78 225 219 194 200 203 200 204 244 242 250 -97 95 93 86 113 188 256 164 239 105 308 272 259 256 280 256 281 324 302 321 -127 120 140 111 180 348 408 158 309 127 461 367 374 353 418 353 420 476 414 454 -137 124 203 116 298 503 511 146 286 128 522 365 407 363 474 363 478 527 419 480 -161 137 276 130 462 670 593 149 236 138 587 358 447 377 535 376 539 569 414 494 -135 104 222 99 428 542 419 106 135 101 406 217 310 247 377 246 381 379 250 310 -68 43 154 42 378 426 270 40 48 39 205 74 126 80 180 80 193 169 77 97 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8 31 5 13 6 6 6 27 8 42 8 20 12 18 8 17 8 8 17 12 -52 109 38 70 44 43 45 147 74 179 70 127 93 115 75 115 73 81 121 103 -107 175 84 141 94 94 106 288 187 304 212 301 239 274 213 274 213 236 298 273 -187 271 157 241 176 180 213 674 482 610 530 715 560 641 513 642 513 600 731 686 -298 330 260 298 296 309 403 901 772 694 911 1077 891 977 862 979 862 1005 1125 1096 -506 508 452 465 516 524 786 1061 1075 707 1405 1487 1321 1385 1328 1386 1330 1502 1566 1569 -616 609 546 558 622 663 975 929 1071 610 1527 1508 1418 1439 1453 1439 1456 1595 1587 1617 -584 580 517 532 589 853 1095 754 1036 591 1543 1430 1386 1375 1453 1375 1458 1595 1524 1585 -461 451 455 415 557 1037 1200 493 935 467 1476 1234 1250 1195 1365 1195 1371 1516 1355 1460 -353 328 504 306 721 1202 1222 370 693 337 1314 953 1050 948 1206 946 1214 1330 1080 1221 -281 237 507 226 866 1272 1124 261 422 236 1099 652 827 688 998 687 1007 1066 764 919 -197 145 396 142 872 1133 857 149 198 136 748 312 530 385 682 383 691 688 392 530 -112 63 261 64 645 730 462 56 76 51 349 121 210 134 303 133 327 286 127 161 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 89 10 32 11 11 11 80 14 124 14 53 26 46 15 40 15 15 44 28 -83 266 63 150 70 69 72 399 157 495 128 317 209 277 150 278 138 171 296 240 -181 404 148 318 162 162 180 869 477 917 467 792 566 696 470 696 467 556 782 692 -224 327 190 295 213 217 252 919 644 823 681 943 722 837 657 839 655 782 965 902 -276 308 241 278 274 286 391 945 804 711 914 1096 891 986 859 987 859 1019 1151 1119 -308 322 276 294 315 341 548 756 768 488 957 1022 889 940 895 940 897 1035 1086 1088 -146 147 135 136 154 168 184 180 188 163 319 317 309 311 312 311 312 325 324 327 -143 140 144 128 174 273 361 243 339 160 466 418 400 395 428 395 430 488 458 484 -141 131 156 121 198 330 380 181 299 141 451 371 376 359 414 359 416 464 411 445 -119 110 122 103 144 166 167 124 143 113 259 237 243 237 252 237 253 259 245 253 -96 86 100 80 121 137 131 92 106 86 199 178 186 179 194 179 194 197 183 190 -37 35 36 32 41 43 41 35 37 35 69 66 68 66 69 66 69 69 67 68 -38 27 58 26 114 127 87 26 30 26 82 47 62 50 76 50 79 73 48 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 21 4 9 5 5 5 20 6 29 6 15 9 13 7 12 7 7 13 9 -62 177 47 102 53 52 55 265 111 326 88 209 139 183 102 183 95 115 196 160 -47 48 41 44 46 46 47 50 49 51 86 88 87 88 86 88 86 87 88 88 -91 125 76 107 87 89 105 276 205 251 209 278 220 250 203 250 202 236 285 268 -111 128 95 114 110 116 158 311 271 243 295 349 288 316 279 317 279 327 366 356 -283 297 253 271 289 317 558 798 814 483 976 1049 897 955 904 956 906 1066 1123 1127 -156 159 145 145 169 226 377 355 431 194 538 525 472 484 493 485 495 577 572 591 -308 304 294 279 345 611 853 524 798 330 1109 989 941 930 1013 931 1018 1166 1090 1155 -359 347 371 320 463 941 1109 409 846 363 1302 1057 1072 1017 1189 1017 1195 1344 1181 1287 -322 298 473 279 690 1181 1206 340 672 306 1259 893 991 887 1148 886 1157 1276 1024 1166 -267 226 503 216 890 1333 1179 249 420 226 1111 632 819 671 1002 669 1011 1077 754 920 -189 140 393 137 913 1198 906 144 192 132 759 292 523 369 687 367 697 695 378 526 -100 81 213 78 597 676 437 79 85 77 320 135 190 137 269 137 299 265 136 152 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -12 68 8 24 9 9 9 63 11 96 11 40 19 35 12 29 12 12 34 21 -95 329 75 183 82 81 85 522 200 643 154 407 263 353 185 354 166 214 381 307 -104 238 85 184 95 95 104 545 297 571 263 468 324 406 264 406 262 320 463 406 -190 277 161 249 181 185 217 816 574 724 584 816 618 721 560 722 559 675 838 782 -295 326 258 295 293 307 419 979 841 734 950 1134 924 1020 893 1022 893 1058 1191 1159 -462 468 413 429 472 488 815 1138 1162 701 1437 1532 1331 1407 1340 1408 1343 1555 1629 1635 -415 416 377 382 432 528 903 847 1027 455 1342 1314 1195 1222 1242 1223 1246 1431 1419 1461 -569 565 507 518 579 895 1188 783 1120 579 1618 1482 1427 1415 1509 1415 1515 1682 1596 1669 -454 444 449 409 553 1111 1303 493 1004 460 1546 1270 1286 1225 1419 1224 1425 1594 1410 1529 -352 327 515 306 753 1297 1327 371 738 336 1378 975 1082 968 1255 967 1264 1397 1119 1277 -267 226 502 216 896 1348 1195 250 424 226 1116 630 819 669 1005 667 1014 1082 755 923 -187 139 389 135 915 1205 913 143 191 130 756 286 517 363 682 361 693 693 373 522 -96 79 201 77 586 664 431 77 83 76 310 132 180 134 257 134 290 256 133 146 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -20 78 14 31 15 15 15 74 19 109 20 51 29 45 21 40 21 21 44 31 -101 380 80 206 87 86 91 626 232 770 162 472 297 407 201 408 177 238 441 351 -200 438 166 349 182 182 201 1012 560 1054 526 901 636 787 526 787 523 632 893 789 -275 393 235 357 264 269 309 1210 852 1067 867 1213 917 1070 832 1072 830 1004 1247 1165 -366 395 322 358 366 379 516 1233 1059 915 1190 1420 1154 1276 1115 1278 1116 1325 1493 1454 -474 479 424 439 484 499 821 1133 1159 702 1434 1525 1330 1403 1339 1405 1342 1550 1621 1627 -568 563 506 517 578 652 1043 981 1165 578 1574 1546 1429 1456 1476 1457 1480 1661 1649 1690 -538 534 483 490 553 882 1187 768 1117 551 1592 1449 1392 1379 1478 1379 1484 1659 1570 1646 -438 427 435 393 536 1101 1297 481 996 443 1521 1241 1257 1195 1391 1195 1398 1569 1383 1504 -341 316 501 296 737 1279 1312 361 729 325 1349 949 1053 941 1225 940 1235 1367 1092 1248 -255 215 464 205 826 1241 1104 238 402 215 1032 588 759 623 929 621 938 1002 703 857 -177 131 355 127 829 1093 832 135 182 123 691 269 474 336 624 334 634 635 346 480 -91 52 210 53 580 665 424 46 64 42 299 102 165 112 247 112 277 242 107 130 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -20 20 17 18 19 19 20 20 20 20 36 36 36 36 36 36 36 36 36 36 -58 61 50 56 56 56 58 65 62 66 107 111 108 110 107 110 107 108 111 110 -100 109 87 99 97 99 107 128 120 126 198 209 200 205 197 205 197 203 210 208 -74 75 66 69 74 75 78 80 79 79 141 142 140 141 140 141 140 142 143 143 -130 135 118 125 133 141 155 163 164 152 275 280 270 274 271 274 271 281 284 285 -137 139 128 129 145 157 172 168 175 153 297 295 288 290 291 290 291 302 302 304 -150 147 145 137 167 192 211 184 205 161 344 331 326 325 334 325 334 350 342 349 -60 59 55 55 62 63 64 61 62 61 114 112 113 112 113 112 113 114 113 113 -44 43 40 40 45 46 46 44 45 44 82 81 81 81 82 81 82 82 81 82 -37 36 34 33 39 40 39 37 38 36 69 68 68 68 69 68 69 69 68 69 -28 24 46 22 109 142 110 24 29 24 85 34 58 42 76 42 78 78 43 59 -8 7 7 7 8 9 8 7 8 7 15 14 14 14 15 14 15 14 14 14 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 52 6 18 7 7 7 51 10 75 9 32 15 27 10 22 10 10 27 17 -99 365 79 199 86 85 89 629 238 766 155 465 288 398 193 399 168 233 435 346 -174 381 144 304 159 159 175 927 515 956 459 802 557 696 458 697 455 558 797 702 -275 386 235 351 264 270 311 1233 874 1077 869 1219 916 1072 831 1074 829 1010 1255 1173 -368 396 324 359 368 382 530 1254 1083 922 1195 1428 1156 1280 1118 1282 1119 1335 1504 1465 -476 481 426 440 486 501 838 1150 1180 702 1440 1531 1331 1406 1342 1407 1345 1558 1630 1637 -566 561 505 515 576 656 1059 992 1184 577 1578 1548 1427 1454 1476 1455 1480 1668 1655 1697 -545 540 488 496 559 896 1210 781 1140 557 1605 1459 1399 1386 1488 1386 1493 1674 1582 1661 -366 354 374 326 467 1026 1224 422 928 370 1385 1106 1121 1060 1255 1059 1261 1433 1248 1369 -290 267 424 250 630 1101 1133 310 633 275 1147 800 889 792 1038 791 1046 1163 925 1060 -222 189 404 180 738 1121 1001 209 359 189 912 508 663 540 818 538 826 886 614 754 -109 86 189 82 425 557 431 88 112 84 368 165 262 195 335 194 340 341 201 266 -49 31 99 30 275 317 205 29 37 27 146 57 84 62 121 62 136 120 59 69 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8 41 5 14 6 6 6 41 8 60 8 25 12 22 8 18 8 8 21 14 -92 327 73 180 80 79 83 573 221 694 141 421 261 360 176 361 152 212 395 315 -199 423 165 340 182 183 202 1037 582 1064 521 901 629 783 519 783 516 631 896 792 -243 343 208 310 233 239 278 1128 800 979 777 1098 819 962 741 964 740 907 1133 1057 -313 343 275 311 313 327 476 1156 998 837 1069 1288 1030 1147 994 1149 995 1202 1361 1325 -189 202 170 184 195 222 395 549 566 330 647 694 589 628 595 629 597 710 747 751 -142 145 134 133 157 212 328 308 369 184 455 444 401 410 418 410 420 487 482 498 -143 140 144 128 174 279 374 248 351 160 467 417 397 392 427 392 429 491 459 487 -110 105 117 96 152 276 325 141 252 111 352 282 286 271 319 271 321 364 317 348 -102 92 130 85 187 294 302 112 190 95 309 226 246 224 282 223 284 312 255 287 -85 74 117 68 193 273 248 81 119 75 239 154 186 160 218 160 220 233 176 205 -58 48 82 44 162 207 165 49 60 48 148 82 112 91 137 90 139 139 93 114 -29 21 44 20 98 111 76 20 24 20 67 38 48 40 59 40 64 59 39 43 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 7 0 2 0 0 0 7 1 11 0 4 1 3 0 2 0 0 3 1 -66 235 52 127 58 57 60 421 164 509 94 298 180 253 118 254 101 145 279 221 -107 227 88 178 98 99 109 564 318 577 263 468 320 403 261 403 259 322 466 409 -218 300 186 270 209 215 253 906 655 788 649 897 680 791 620 792 620 750 925 867 -283 313 248 283 283 297 430 988 859 720 924 1106 890 988 862 989 862 1035 1168 1138 -325 337 291 308 333 362 656 915 945 534 1094 1171 998 1062 1009 1064 1011 1198 1259 1266 -280 283 258 259 299 404 741 683 852 330 1036 1007 897 922 942 923 946 1119 1106 1145 -331 326 313 300 367 610 835 534 785 353 1069 959 914 904 980 904 985 1122 1052 1112 -268 253 291 235 369 767 915 342 699 270 1029 818 828 782 929 782 933 1065 925 1017 -203 183 286 171 422 720 744 222 433 189 758 535 590 529 686 529 691 768 615 702 -169 144 287 136 519 785 705 160 268 145 647 370 475 391 581 390 587 629 443 539 -75 61 115 57 248 322 254 62 78 60 220 109 161 125 201 124 204 206 129 164 -28 20 49 19 140 161 107 19 22 18 76 33 45 35 62 35 70 63 34 38 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -51 100 38 66 44 44 46 150 80 177 70 127 92 114 75 113 72 83 122 104 -88 154 71 122 81 81 90 327 201 333 183 290 212 256 182 256 181 214 290 260 -108 144 89 124 101 105 130 319 246 284 254 330 263 297 245 297 245 285 339 321 -127 137 113 125 126 133 149 173 167 162 269 281 266 273 264 273 264 276 285 283 -135 140 122 129 138 148 165 175 176 160 290 295 283 288 284 288 284 297 301 301 -229 232 212 213 246 335 591 546 677 277 817 794 708 728 744 728 747 882 871 902 -180 176 179 164 210 270 320 253 306 198 474 444 432 429 449 429 451 488 469 485 -142 134 155 123 198 343 402 188 316 144 458 374 378 360 418 360 420 473 417 453 -113 104 115 97 138 160 162 118 138 107 247 224 230 224 239 224 240 247 232 241 -55 52 53 48 61 64 63 54 57 52 106 101 103 101 104 101 105 105 102 104 -32 30 30 27 36 37 36 30 32 29 59 56 58 57 59 57 59 59 57 58 -10 9 10 9 12 13 12 9 10 9 19 18 18 18 19 18 19 19 18 18 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -98 357 78 195 85 85 89 680 265 813 146 479 285 404 185 405 155 233 450 356 -159 336 131 268 145 145 163 873 496 884 412 729 498 628 407 628 405 506 728 641 -233 317 199 286 224 229 270 1049 758 901 720 1012 754 885 685 887 684 842 1046 979 -300 329 263 298 300 315 460 1039 909 751 967 1154 929 1030 900 1032 901 1084 1221 1191 -295 308 264 281 303 333 639 898 933 503 1045 1121 945 1010 956 1011 959 1151 1212 1220 -272 274 251 252 290 399 740 679 851 322 1016 986 875 899 921 900 925 1099 1086 1126 -181 177 177 163 212 396 566 342 529 199 679 595 561 553 611 554 615 720 666 712 -119 112 129 103 167 295 347 158 272 121 383 309 312 296 347 296 349 395 346 378 -206 189 294 176 443 780 809 224 460 195 795 548 608 541 714 540 720 806 637 734 -89 78 120 72 198 282 258 85 126 78 249 163 194 169 228 168 230 244 185 215 -73 60 112 56 244 319 253 61 77 59 216 108 157 121 197 121 200 202 126 161 -46 28 93 27 299 350 227 25 35 23 150 55 78 60 116 60 137 121 58 67 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -48 115 36 68 42 42 44 196 92 231 61 144 94 125 69 124 63 81 137 112 -40 69 32 54 37 37 41 156 96 158 78 129 91 112 77 112 76 93 129 114 -132 178 112 157 127 131 157 517 382 446 365 500 379 441 348 441 347 421 517 486 -159 182 139 163 158 169 257 556 488 403 503 603 482 536 467 537 467 566 639 623 -78 83 69 75 81 94 199 287 300 153 294 320 259 281 263 282 264 331 352 354 -133 134 123 124 140 153 168 164 172 148 287 285 278 280 281 280 281 293 292 295 -118 115 114 105 139 234 322 206 302 129 375 331 313 309 339 309 341 397 368 393 -154 145 168 134 213 370 434 204 342 155 495 404 408 389 451 389 453 511 450 490 -223 205 334 192 517 947 986 243 542 212 939 628 704 619 837 618 845 953 741 863 -191 163 336 155 639 990 893 182 321 164 779 421 556 448 694 447 701 758 518 643 -120 93 240 90 656 890 686 96 129 89 504 170 320 209 444 208 456 463 224 332 -54 52 96 49 412 481 316 52 52 52 192 86 95 85 139 85 175 155 86 85 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -73 211 57 122 63 63 67 392 170 462 105 284 177 242 124 243 109 151 269 218 -173 346 142 279 157 158 179 904 526 906 439 760 524 656 433 656 431 536 761 674 -219 290 186 260 210 216 258 889 657 762 633 869 658 765 603 766 602 733 899 845 -251 288 219 259 249 269 407 867 766 628 810 964 776 860 753 861 754 908 1020 997 -271 289 244 264 280 321 558 748 778 452 891 950 811 862 821 863 824 975 1022 1029 -260 264 243 243 283 382 621 574 700 322 861 836 753 772 788 772 791 923 912 943 -345 341 326 313 381 660 920 575 864 367 1142 1016 964 954 1040 954 1045 1202 1123 1191 -273 258 293 239 372 780 935 356 718 276 1031 817 825 780 928 779 932 1069 927 1020 -226 203 310 190 457 775 806 251 480 210 819 581 637 573 739 573 745 829 667 759 -181 153 293 144 536 816 741 172 292 153 672 386 492 407 603 406 608 655 463 563 -106 83 175 79 411 547 430 86 113 80 353 161 245 182 317 181 324 328 191 253 -36 22 67 22 221 261 171 20 28 18 112 44 60 48 87 48 103 92 46 53 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 11 10 11 11 11 12 11 11 12 21 21 21 21 21 21 21 21 21 21 -55 58 48 53 54 54 56 63 60 64 103 107 104 106 103 106 103 104 107 106 -23 23 21 21 24 24 24 23 23 23 43 43 43 43 43 43 43 43 43 43 -21 21 19 19 21 21 21 21 21 21 39 39 39 39 39 39 39 39 39 39 -43 42 38 39 43 44 44 43 43 44 79 79 79 79 79 79 79 79 80 80 -43 43 39 40 44 44 44 44 44 44 80 80 80 80 80 80 80 81 80 81 -24 24 21 22 24 24 24 24 24 24 44 44 44 44 44 44 44 44 44 44 -24 24 21 22 24 24 24 24 24 24 44 44 44 44 44 44 44 44 44 44 -27 27 25 25 28 28 28 28 28 28 51 51 51 51 51 51 51 51 51 51 -53 50 51 46 59 62 61 52 56 50 102 97 99 97 100 97 101 101 98 100 -17 16 16 15 18 18 18 17 17 16 31 31 31 31 31 31 31 31 31 31 -9 8 9 7 11 12 11 8 8 8 16 15 15 15 16 15 16 16 15 15 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -87 309 70 171 77 77 81 652 263 766 124 438 251 365 157 366 129 208 413 325 -154 311 127 250 141 142 160 872 506 865 396 707 475 603 388 604 386 491 709 625 -221 294 189 264 214 220 262 1043 763 878 688 974 716 846 650 848 649 812 1012 948 -290 318 254 287 290 306 489 1153 1013 799 1007 1219 956 1073 926 1075 927 1144 1300 1268 -253 265 227 242 261 292 548 748 783 423 858 917 773 825 784 826 786 946 993 1002 -154 156 143 143 167 235 403 368 458 192 527 510 453 465 477 466 479 570 562 584 -138 135 134 124 162 300 429 261 402 152 492 429 403 397 441 398 443 523 483 517 -112 106 120 97 156 283 335 151 263 114 358 287 289 274 323 274 325 371 323 355 -98 89 122 82 180 291 303 109 190 92 298 214 233 211 269 211 271 301 244 277 -86 76 114 70 193 278 256 83 124 77 242 156 187 162 220 162 222 237 179 209 -88 70 158 67 432 587 458 73 96 68 334 125 213 143 293 142 302 308 155 224 -35 31 59 30 297 352 231 31 33 30 131 54 60 55 89 55 117 103 55 56 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -76 267 61 147 67 67 71 581 236 679 103 381 215 316 132 317 108 178 360 282 -157 313 131 255 146 147 164 914 531 902 408 733 490 624 399 626 396 509 736 649 -249 327 214 296 241 248 294 1228 898 1026 795 1133 826 980 748 982 748 942 1180 1104 -280 308 246 278 280 296 484 1145 1008 787 987 1197 934 1051 904 1053 906 1124 1279 1248 -326 338 293 309 335 367 723 995 1046 539 1134 1213 1017 1088 1033 1090 1037 1253 1317 1328 -327 329 300 302 347 470 858 780 980 376 1149 1111 988 1014 1040 1015 1045 1242 1225 1271 -362 357 340 328 398 751 1085 648 1017 384 1293 1135 1070 1056 1165 1056 1171 1369 1270 1355 -288 276 294 255 369 869 1056 363 803 292 1114 868 876 824 995 824 999 1159 996 1104 -259 238 378 223 588 1086 1139 285 635 246 1069 712 795 699 948 699 957 1085 843 982 -196 166 343 158 685 1084 986 188 346 166 825 424 574 455 728 453 736 804 537 677 -134 98 258 95 728 999 778 104 149 92 556 194 343 221 483 220 500 511 243 363 -1 0 32 1 346 420 261 0 0 0 95 0 3 0 38 0 77 59 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -73 255 59 141 65 65 69 571 233 664 99 370 206 305 126 306 102 171 350 274 -174 338 145 277 161 162 181 1003 587 986 450 804 538 685 439 687 436 561 809 715 -245 319 210 288 236 244 290 1218 894 1013 780 1115 810 963 733 965 733 928 1162 1088 -280 307 246 277 280 296 488 1140 1008 780 979 1186 925 1040 896 1042 897 1116 1269 1239 -335 347 301 317 345 376 767 1060 1118 559 1193 1277 1065 1142 1083 1143 1086 1322 1390 1403 -403 403 366 370 421 556 1009 916 1149 446 1355 1311 1170 1200 1231 1202 1236 1461 1441 1494 -436 430 402 395 468 866 1246 749 1169 456 1491 1314 1240 1225 1347 1225 1353 1576 1465 1560 -369 357 367 329 453 1105 1347 452 1024 375 1417 1105 1114 1048 1265 1048 1270 1473 1268 1404 -292 268 431 251 677 1269 1334 320 737 277 1236 814 911 798 1092 797 1103 1255 970 1134 -217 182 391 174 799 1280 1165 209 397 182 955 475 654 512 839 510 848 931 612 779 -136 99 266 97 772 1065 830 106 154 93 581 198 352 222 502 220 520 534 246 374 -0 0 25 0 327 398 248 0 0 0 87 0 1 0 33 0 70 54 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -79 272 64 152 71 70 74 625 258 723 108 403 224 332 136 333 111 187 382 299 -172 330 144 272 159 161 180 1002 589 981 443 796 530 677 432 678 429 555 802 708 -243 314 208 284 235 243 289 1224 902 1013 776 1112 804 958 728 960 728 925 1160 1086 -314 341 276 309 315 332 529 1180 1050 815 1038 1245 982 1098 954 1100 955 1176 1329 1299 -390 399 349 365 400 428 813 1094 1152 602 1262 1343 1137 1211 1154 1212 1158 1388 1453 1467 -388 389 353 357 407 547 1009 913 1151 433 1339 1293 1149 1180 1211 1181 1217 1447 1426 1481 -375 370 351 340 412 797 1166 688 1092 398 1364 1191 1119 1104 1223 1105 1230 1447 1339 1432 -329 316 330 292 410 1021 1250 414 948 334 1295 1001 1009 947 1151 947 1156 1348 1155 1283 -288 264 426 248 672 1269 1337 318 739 273 1228 804 901 787 1083 786 1093 1247 961 1126 -207 174 375 166 782 1263 1151 200 386 175 927 450 628 487 811 485 820 903 588 753 -109 82 200 79 570 785 616 87 123 78 435 160 268 175 377 173 391 401 193 285 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -25 53 19 33 22 22 23 100 51 115 32 72 47 62 35 62 32 42 69 57 -68 104 55 83 63 64 72 228 151 224 126 194 142 170 124 170 124 147 195 177 -82 103 69 88 80 82 101 273 212 232 185 249 189 219 175 219 175 213 259 244 -117 135 101 120 116 128 191 346 314 255 318 372 303 333 296 334 297 355 395 387 -155 164 139 149 160 186 339 449 473 260 498 531 446 476 454 477 455 550 577 583 -135 138 127 126 150 210 334 306 374 175 430 416 372 381 391 381 393 464 457 474 -136 133 135 122 165 276 378 246 355 153 441 389 367 363 399 363 401 467 434 462 -130 123 139 113 180 326 388 178 306 133 418 336 338 321 377 321 379 433 378 414 -154 141 209 131 321 570 600 173 353 146 568 388 428 381 505 381 510 576 454 524 -122 106 183 99 348 537 494 119 200 107 428 243 310 256 382 255 386 419 295 360 -85 67 140 63 379 518 410 70 96 65 300 125 192 133 262 133 271 278 145 204 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -78 264 63 149 70 70 74 645 270 739 104 406 220 331 130 332 107 185 385 301 -172 323 144 267 160 161 181 1025 608 993 442 801 527 677 428 679 426 558 808 714 -245 311 210 281 237 245 294 1255 932 1029 783 1124 808 965 731 967 731 937 1176 1102 -289 316 254 286 290 307 489 1039 932 719 920 1097 870 969 847 971 848 1040 1171 1146 -143 154 129 140 149 178 296 377 397 236 432 458 391 415 397 415 398 474 495 499 -153 156 144 143 170 237 375 343 420 198 489 472 424 434 445 434 447 526 519 538 -154 150 153 138 186 309 423 277 398 172 500 442 418 413 452 413 455 528 491 523 -93 89 95 81 126 249 301 126 233 95 294 229 230 217 262 217 263 306 263 292 -68 65 65 60 75 80 81 70 75 67 135 129 130 129 133 129 133 135 131 133 -83 74 107 68 187 274 255 81 123 75 234 149 179 155 212 154 214 230 173 202 -36 31 48 28 116 155 126 32 39 31 94 47 64 49 83 49 86 88 52 68 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -43 106 34 64 39 39 41 233 109 265 52 151 88 126 59 126 53 78 144 116 -117 201 96 163 108 110 126 549 342 532 267 447 309 384 260 385 259 325 452 404 -191 243 164 218 186 192 232 1011 752 823 611 887 630 757 569 759 569 737 930 870 -199 227 174 204 198 215 329 614 558 442 582 678 553 608 541 608 542 648 720 707 -237 247 213 225 244 277 622 862 920 424 915 983 801 866 818 867 821 1027 1083 1096 -309 311 284 285 329 452 812 731 921 358 1051 1013 899 923 949 924 953 1138 1120 1164 -176 172 176 159 212 350 478 314 450 197 570 505 478 472 517 473 519 601 560 596 -284 273 288 251 359 840 1027 371 787 289 1060 824 829 780 942 780 946 1103 948 1051 -194 176 265 164 407 727 768 220 453 182 728 496 547 487 646 486 652 737 582 672 -84 76 90 71 115 137 132 83 100 77 181 156 165 158 175 157 175 180 163 172 -44 39 46 36 59 67 61 40 45 39 86 74 79 75 83 75 84 84 76 80 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 79 27 49 32 32 34 171 83 192 43 112 67 94 47 94 44 60 108 88 -84 143 69 115 79 80 90 406 253 392 182 315 212 268 176 268 175 225 318 283 -186 234 159 209 180 186 228 935 701 760 575 824 590 706 535 707 535 689 864 810 -316 343 278 310 317 336 573 1283 1152 858 1080 1304 1011 1139 983 1141 985 1235 1401 1371 -348 358 312 327 358 391 814 1100 1173 564 1210 1291 1072 1149 1093 1151 1097 1346 1412 1428 -337 338 309 310 357 481 843 760 952 386 1096 1057 942 966 993 967 997 1183 1164 1209 -207 203 200 187 240 509 767 439 716 226 836 714 663 653 736 653 741 895 819 885 -211 200 223 185 284 646 792 293 607 215 809 625 628 590 717 590 720 843 721 802 -189 171 257 160 399 720 763 214 448 177 713 482 532 472 631 472 637 723 568 658 -163 138 265 131 546 878 810 159 295 139 654 332 448 353 573 352 580 639 425 538 -110 80 192 77 571 796 631 86 129 75 431 163 257 172 367 172 385 399 188 279 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -71 232 58 133 64 64 68 626 268 707 93 378 194 303 111 299 95 166 360 280 -165 301 139 251 155 156 176 1023 615 977 424 777 503 652 402 654 400 540 788 696 -238 295 204 265 231 239 289 1256 942 1014 761 1098 780 937 706 939 706 917 1154 1082 -316 343 279 310 318 336 580 1293 1164 860 1081 1306 1010 1138 982 1141 984 1238 1404 1375 -393 402 353 368 404 435 894 1197 1277 615 1324 1409 1174 1257 1198 1259 1202 1469 1539 1557 -440 439 398 403 458 615 1134 1015 1288 480 1459 1404 1246 1279 1316 1280 1322 1578 1553 1614 -419 414 389 380 454 885 1304 771 1223 442 1480 1288 1206 1190 1323 1191 1330 1573 1453 1557 -351 338 349 311 430 1127 1394 458 1059 357 1391 1061 1066 998 1226 998 1231 1452 1236 1380 -276 252 406 236 659 1284 1368 309 757 261 1202 764 859 743 1047 742 1058 1222 928 1099 -201 167 353 159 775 1280 1179 196 394 167 907 419 596 451 784 449 795 886 563 733 -118 85 220 82 725 1024 809 92 141 79 518 173 286 182 430 181 457 476 198 317 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -68 220 56 126 62 62 65 611 264 687 89 364 182 289 103 284 90 157 347 269 -111 200 92 163 104 105 119 669 406 637 269 497 319 415 253 416 252 344 504 445 -231 284 198 255 224 232 282 1233 928 990 738 1068 755 909 684 911 683 892 1124 1054 -308 335 272 303 310 329 577 1282 1157 847 1061 1283 988 1116 962 1118 964 1218 1382 1354 -382 391 343 357 392 425 888 1188 1271 602 1301 1385 1149 1232 1173 1234 1178 1446 1516 1534 -425 425 386 390 445 606 1130 1008 1284 468 1436 1380 1220 1253 1291 1254 1297 1557 1530 1593 -407 402 379 369 444 877 1299 764 1218 430 1459 1265 1182 1166 1300 1167 1307 1553 1431 1536 -344 331 343 305 423 1122 1391 454 1056 350 1375 1044 1049 981 1209 981 1214 1436 1220 1365 -260 237 368 221 588 1120 1193 293 677 246 1065 691 771 672 932 671 941 1082 832 978 -193 160 321 152 682 1113 1030 189 366 160 811 395 544 419 705 418 714 794 517 663 -112 80 198 78 615 866 689 87 135 74 456 168 261 177 380 177 403 421 189 288 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -37 101 29 59 34 34 36 268 122 300 43 158 80 126 48 123 44 71 151 118 -97 155 80 127 90 91 105 433 278 412 213 349 242 299 203 300 202 258 354 318 -119 147 102 129 116 120 150 510 393 415 325 452 331 390 304 391 304 384 474 447 -253 278 222 250 254 272 471 1005 912 669 839 1009 782 880 762 881 763 960 1086 1065 -295 306 265 279 304 340 705 937 1004 480 1015 1080 894 959 913 960 917 1130 1184 1200 -277 279 255 256 297 418 747 668 846 327 938 901 796 817 843 818 847 1018 1000 1042 -168 165 165 151 200 362 518 321 486 186 577 502 470 464 515 464 518 614 567 608 -243 233 249 215 314 780 966 334 737 248 951 723 726 679 836 679 840 993 844 944 -182 168 260 156 425 826 883 206 496 174 762 483 542 468 662 468 669 775 588 697 -99 91 109 84 153 198 189 98 127 92 226 183 197 184 214 184 215 224 194 210 -64 52 90 48 217 295 240 54 73 51 189 100 130 104 166 104 173 178 108 138 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -55 164 45 96 50 50 53 477 212 532 70 278 135 218 77 211 71 119 266 207 -155 274 131 230 146 147 167 995 606 936 394 734 466 610 364 612 362 509 747 659 -225 274 193 245 219 227 278 1231 932 979 723 1049 736 889 666 891 666 877 1107 1039 -254 279 224 251 255 273 494 1080 979 706 876 1061 811 919 790 921 792 1009 1146 1123 -301 312 271 285 311 347 753 1007 1083 498 1072 1142 938 1009 960 1011 964 1199 1258 1275 -235 237 217 217 253 375 707 626 807 283 860 822 717 738 764 739 768 940 922 964 -174 171 171 157 206 406 597 356 560 193 647 556 517 510 572 510 576 692 635 684 -183 174 192 161 246 595 739 261 564 187 720 545 547 512 631 512 635 753 638 715 -194 178 272 166 443 856 916 220 519 184 794 507 568 492 691 491 698 808 616 728 -165 139 277 132 621 1032 959 163 326 140 721 332 469 350 620 349 630 706 446 583 -99 72 179 69 619 884 704 78 121 67 434 147 229 154 350 154 379 399 161 259 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -61 188 50 110 56 55 59 580 256 643 78 331 154 256 84 245 79 136 317 245 -154 269 130 226 145 147 166 998 611 935 390 730 461 606 357 608 355 506 744 657 -222 268 190 239 216 224 275 1227 932 970 712 1037 724 876 655 878 655 867 1095 1028 -298 323 263 292 300 319 584 1281 1165 830 1033 1251 954 1082 930 1084 932 1192 1354 1328 -365 375 328 342 376 411 894 1188 1281 582 1269 1350 1110 1194 1137 1196 1142 1418 1486 1507 -402 402 366 369 422 595 1135 1003 1292 448 1399 1339 1174 1208 1249 1209 1255 1524 1495 1560 -385 380 361 349 424 869 1305 757 1223 409 1421 1222 1136 1120 1257 1120 1264 1518 1394 1502 -326 314 327 289 406 1111 1390 446 1054 333 1334 1000 1002 934 1164 934 1170 1397 1178 1325 -255 232 374 218 622 1247 1340 290 743 242 1133 701 792 676 977 675 988 1154 866 1034 -182 151 314 144 723 1217 1131 179 373 152 832 366 529 387 710 385 723 815 504 667 -101 72 184 70 654 938 748 80 126 67 453 150 233 158 361 158 394 416 165 266 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -27 48 21 33 25 24 26 102 57 112 35 71 45 60 36 59 35 43 69 58 -75 85 63 76 71 72 79 107 94 106 144 158 147 153 143 152 143 148 158 155 -136 168 116 146 132 137 176 413 335 344 327 415 329 370 311 371 311 369 432 413 -145 164 127 147 145 160 245 424 393 304 395 456 373 408 367 409 367 440 486 479 -104 107 94 98 107 114 124 129 130 119 215 218 211 213 212 213 212 220 221 222 -140 142 131 131 151 176 207 198 215 164 328 323 310 313 316 313 317 339 336 342 -123 121 118 112 137 159 177 153 171 132 277 266 261 261 268 260 269 283 276 282 -87 84 83 78 96 105 109 95 103 88 179 172 172 170 175 170 175 180 175 179 -86 80 86 75 103 119 121 91 105 83 183 168 171 167 177 167 178 184 174 179 -49 46 49 43 58 63 62 49 54 47 98 91 93 91 96 91 96 98 93 95 -21 20 21 18 25 27 26 20 22 20 41 38 39 38 40 38 40 40 38 39 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 13 12 12 13 13 13 13 13 14 24 24 24 24 24 24 24 24 24 24 -47 50 41 46 46 47 49 55 52 55 89 92 89 91 88 91 88 90 92 91 -79 84 69 77 77 80 86 100 95 97 155 162 155 158 154 158 154 158 163 162 -66 68 60 62 67 69 71 74 73 73 128 130 127 128 127 128 127 129 130 130 -92 94 83 86 94 99 106 108 109 102 185 187 182 184 183 184 183 188 189 190 -90 90 83 83 94 99 105 102 105 97 182 181 178 178 179 178 179 184 183 184 -108 106 102 99 118 132 143 128 139 115 232 225 222 221 226 221 226 235 231 235 -92 89 89 83 103 115 121 102 113 94 193 185 185 183 189 183 189 195 189 193 -75 71 74 66 87 98 100 79 89 74 156 146 148 145 152 145 152 156 149 153 -75 67 102 62 209 332 312 75 127 68 246 133 171 137 215 137 219 242 166 206 -28 25 29 23 36 40 37 26 29 25 54 48 51 49 53 49 53 53 49 51 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 14 12 13 13 13 14 14 14 14 25 25 25 25 25 25 25 25 25 25 -47 50 41 46 46 47 49 55 52 55 89 92 89 91 88 91 88 90 92 91 -79 84 69 77 77 80 86 100 96 97 155 162 155 158 153 158 153 158 163 162 -102 108 91 99 102 108 120 135 133 125 211 218 208 212 207 212 208 216 222 221 -68 69 62 63 70 71 74 74 74 73 131 132 130 131 131 131 131 132 133 133 -72 72 66 67 75 77 80 78 80 76 141 140 139 139 140 139 140 142 142 142 -138 135 132 124 162 380 595 328 555 152 583 485 442 435 502 435 506 632 570 624 -262 251 266 232 336 924 1164 375 884 268 1085 804 804 748 941 747 946 1139 955 1079 -207 189 297 177 502 1017 1101 238 615 197 906 554 626 530 777 530 787 925 690 828 -140 119 232 113 558 951 891 139 291 121 631 268 390 279 532 278 544 619 374 503 -82 59 139 57 501 724 583 65 103 55 347 123 177 129 271 129 300 319 135 204 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -19 20 16 18 19 18 19 20 20 21 35 36 35 35 35 35 35 35 35 35 -72 102 59 83 68 69 81 240 168 226 138 204 150 178 131 178 131 160 207 190 -60 72 51 61 60 62 78 226 180 182 133 184 134 158 123 158 123 158 195 184 -219 240 193 216 220 238 473 1036 950 649 786 962 716 820 698 822 700 919 1050 1030 -163 171 146 155 169 199 451 595 648 285 591 631 507 549 521 550 524 669 703 715 -143 144 132 132 156 246 474 415 542 179 533 506 433 448 467 448 469 589 576 605 -197 194 193 178 234 482 725 423 679 219 758 644 596 587 664 587 668 814 743 805 -198 190 204 175 261 670 842 288 643 203 783 584 583 544 681 544 685 822 692 780 -183 168 254 157 423 839 908 212 518 175 756 472 529 452 651 451 659 771 581 693 -141 119 219 112 492 821 772 141 277 119 573 270 370 278 489 277 499 563 358 465 -71 52 112 49 356 510 415 57 89 48 265 110 148 115 213 115 232 246 120 167 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 13 11 12 13 13 13 13 13 14 24 24 24 24 24 24 24 24 24 24 -48 51 41 46 46 47 50 56 53 56 89 93 90 92 89 92 89 91 93 93 -76 81 67 74 75 77 83 96 92 93 149 156 149 152 148 152 148 152 157 156 -117 126 104 115 117 126 147 175 171 156 254 266 249 256 248 256 248 263 273 271 -127 133 116 122 132 146 172 184 190 158 286 291 275 281 277 281 278 296 300 302 -119 120 111 111 127 142 161 154 165 135 262 259 251 253 255 253 255 269 267 270 -106 104 100 96 115 130 141 125 137 112 227 220 217 216 221 216 221 231 226 230 -68 66 64 61 73 78 80 72 76 69 135 131 131 130 133 130 133 135 133 134 -51 50 48 46 56 59 59 53 56 51 100 97 97 96 99 96 99 100 98 99 -52 48 53 45 64 72 71 52 59 49 106 97 100 97 103 97 104 106 99 103 -42 37 50 34 114 153 129 38 47 37 107 68 78 69 94 69 99 102 71 83 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 -27 27 24 25 27 27 27 28 28 28 50 50 50 50 50 50 50 50 50 50 -118 141 101 122 116 121 153 663 514 510 353 521 353 434 319 435 319 437 556 522 -121 137 106 122 122 135 215 369 345 258 326 378 305 336 300 336 301 366 406 400 -150 159 136 145 157 190 329 406 437 241 446 469 397 421 406 422 407 492 511 519 -167 169 155 154 182 302 628 543 724 206 689 649 548 569 595 569 599 767 747 789 -144 141 142 131 167 215 257 204 247 159 363 339 329 327 343 327 344 374 359 372 -134 128 137 118 168 226 255 170 220 137 335 298 298 291 316 291 317 343 318 335 -111 104 118 96 152 201 210 124 164 108 265 227 234 224 251 224 252 268 241 257 -80 73 85 68 118 151 146 80 102 75 177 146 156 147 168 147 169 176 154 166 -30 27 32 25 44 52 47 28 33 28 60 51 54 51 58 51 58 59 52 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 10 9 9 10 10 10 10 10 10 18 18 18 18 18 18 18 18 18 18 -41 43 36 39 40 41 42 46 45 47 76 79 77 78 76 78 76 77 79 78 -70 74 62 68 69 71 77 87 83 84 137 142 137 140 136 139 136 140 143 142 -99 112 86 99 100 111 180 314 295 217 262 307 243 270 239 270 240 297 331 326 -97 101 86 91 101 120 225 282 306 156 278 294 241 259 248 259 249 311 325 330 -102 103 94 94 112 164 282 249 317 127 311 295 257 265 275 265 276 340 333 349 -103 101 101 92 125 223 318 201 299 116 326 280 261 257 288 257 290 349 320 345 -91 87 93 79 124 249 306 132 241 94 284 218 218 205 249 205 251 297 254 283 -96 89 99 83 123 153 159 105 130 93 217 192 196 190 207 190 208 218 201 211 -45 42 45 39 53 59 58 45 50 43 90 83 85 83 88 83 88 90 85 88 -15 14 14 13 17 18 18 14 15 14 28 26 27 26 28 26 28 28 27 27 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 29 13 20 15 15 17 78 42 83 22 48 27 39 22 36 22 26 47 39 -56 77 46 62 53 54 63 208 144 192 100 157 109 134 93 134 92 120 161 146 -126 150 108 130 123 129 168 624 492 481 354 505 352 425 322 426 322 430 538 508 -159 176 140 157 161 176 334 671 624 426 514 620 467 531 458 532 459 597 677 666 -138 145 124 131 144 172 344 436 475 228 441 467 382 411 393 411 395 495 517 526 -146 147 135 134 160 242 433 380 489 182 491 467 405 417 434 418 436 539 527 553 -185 182 180 167 219 469 716 412 672 205 720 607 557 549 626 549 631 777 706 768 -56 55 52 51 59 62 63 58 61 57 108 106 106 106 107 106 107 108 107 108 -98 91 113 84 174 298 321 113 207 94 292 206 222 200 259 200 262 297 239 274 -55 50 67 45 134 211 201 56 90 51 157 89 110 91 137 90 139 155 108 132 -36 30 48 28 147 210 174 32 44 30 114 57 68 59 92 58 101 107 61 77 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 19 8 13 9 9 10 63 32 67 12 35 16 27 12 24 12 16 34 27 -30 48 25 39 29 29 34 216 137 194 64 134 76 107 53 107 53 90 139 122 -38 44 32 37 37 39 51 177 140 137 91 133 90 110 82 111 82 112 142 134 -128 141 112 126 129 141 270 537 501 340 401 485 364 414 357 415 358 468 531 523 -43 44 38 40 45 54 127 165 182 76 144 155 120 132 124 132 125 167 176 179 -75 76 68 68 82 124 223 195 252 93 227 214 183 189 198 189 199 252 245 259 -71 70 66 63 83 163 243 144 227 78 221 185 170 167 191 167 193 240 217 237 -105 100 108 92 143 281 345 152 273 108 329 256 255 241 290 241 292 344 295 328 -90 84 104 77 162 281 303 105 194 87 269 188 203 182 238 181 240 274 219 252 -58 53 60 49 76 91 89 58 69 54 122 107 112 107 118 107 118 121 111 117 -30 25 38 23 95 132 111 27 36 25 82 47 55 48 69 48 74 78 50 60 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -30 73 24 45 28 28 30 317 152 335 34 155 55 109 35 92 34 52 151 114 -95 146 80 121 90 92 108 587 381 528 215 401 246 327 184 328 183 282 414 368 -202 238 173 209 197 207 272 1239 970 931 649 962 641 794 579 796 580 809 1032 970 -271 294 239 265 273 296 616 1299 1210 791 959 1171 862 991 844 994 847 1129 1287 1266 -259 269 234 245 269 309 772 1007 1112 439 975 1038 822 895 851 896 855 1112 1166 1190 -307 308 282 283 329 525 1078 928 1234 360 1190 1122 953 987 1033 988 1039 1319 1285 1355 -295 291 282 267 337 785 1234 685 1157 321 1205 1005 915 900 1038 900 1046 1307 1181 1291 -229 219 234 202 299 849 1086 349 830 235 955 692 688 637 817 637 824 1009 837 954 -201 183 288 171 513 1108 1219 237 680 191 929 536 610 499 781 499 792 954 692 848 -95 83 142 78 360 626 597 97 199 84 398 165 235 167 327 166 338 392 230 314 -55 48 78 45 412 615 503 51 66 47 247 85 100 87 167 86 205 226 88 124 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 90 29 55 34 34 35 433 205 455 40 205 66 141 41 115 40 63 200 150 -114 181 96 151 108 110 130 831 532 740 274 544 319 437 225 438 224 374 565 498 -115 138 98 119 112 118 157 449 365 351 290 389 287 335 268 336 268 341 412 393 -144 160 127 143 145 161 279 503 474 332 415 488 381 425 376 426 377 474 529 522 -153 161 138 146 160 193 378 472 516 250 482 508 418 448 430 448 432 540 562 572 -108 110 101 100 121 179 301 265 336 139 334 317 277 285 296 285 298 365 357 374 -118 115 115 106 142 253 360 229 340 133 372 321 299 295 330 295 332 398 366 394 -101 97 100 90 118 141 153 119 139 103 226 210 210 206 217 206 218 229 219 226 -62 59 60 55 71 79 80 66 73 61 127 119 121 119 124 119 124 127 122 125 -40 37 39 35 47 52 51 40 45 38 79 74 76 74 78 74 78 79 75 78 -12 11 12 10 14 15 15 12 13 11 23 21 22 22 23 22 23 23 22 22 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 22 10 15 12 12 13 67 37 70 16 39 20 30 16 27 16 20 38 31 -40 55 33 44 39 40 46 170 117 154 71 119 78 99 64 99 63 88 123 111 -111 130 95 112 109 114 154 658 519 491 328 491 323 402 291 403 291 412 529 497 -101 111 89 98 103 112 208 396 372 252 293 352 265 301 260 301 261 341 386 380 -95 99 85 89 99 119 227 282 308 152 270 284 232 249 239 250 240 303 316 323 -100 100 91 91 109 163 282 247 317 124 301 285 247 254 264 254 266 331 323 339 -97 96 95 87 118 215 310 194 292 110 306 261 241 238 268 238 270 328 300 325 -110 105 113 96 149 292 360 160 287 113 343 267 266 252 302 251 305 359 309 343 -93 87 107 80 166 288 313 109 202 91 278 195 210 188 246 188 248 284 227 261 -51 46 62 42 126 200 193 52 85 48 146 82 101 83 126 83 129 145 100 123 -27 22 36 21 125 182 152 24 34 22 89 41 49 42 68 42 77 83 44 56 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -35 88 29 54 34 34 35 477 228 497 40 217 63 145 40 113 40 61 213 158 -126 192 107 165 121 123 142 970 624 856 306 621 356 494 242 496 241 424 646 569 -195 230 168 202 191 201 277 1239 979 918 628 937 615 767 555 770 556 790 1010 950 -263 286 232 257 266 289 625 1304 1222 780 937 1146 834 963 818 966 821 1109 1265 1247 -321 331 289 302 333 377 948 1222 1356 525 1176 1248 988 1075 1024 1077 1030 1342 1405 1435 -347 349 319 320 371 587 1199 1029 1370 402 1304 1228 1043 1079 1131 1081 1138 1447 1409 1486 -330 325 314 299 375 871 1371 765 1288 359 1319 1099 998 982 1134 982 1143 1433 1294 1416 -280 268 285 247 362 1114 1440 439 1100 288 1224 871 863 794 1037 794 1046 1298 1067 1225 -215 195 309 182 558 1228 1362 259 764 204 1013 574 654 528 846 527 858 1043 750 925 -143 117 234 111 642 1153 1106 147 345 118 699 254 383 257 559 256 584 690 378 539 -73 74 77 68 416 617 513 74 77 75 257 118 118 117 172 117 215 237 116 139 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -33 79 27 49 32 32 33 446 215 463 37 201 56 132 37 101 37 56 197 146 -123 185 104 158 117 119 138 953 615 837 295 603 342 478 230 480 230 411 629 554 -192 226 165 198 188 198 276 1230 974 906 616 921 602 752 543 755 543 777 995 936 -257 280 227 252 260 283 622 1292 1214 768 919 1125 815 943 801 946 803 1090 1245 1227 -311 321 280 293 322 367 936 1204 1340 511 1148 1218 959 1046 996 1048 1002 1311 1373 1404 -336 338 309 309 360 577 1187 1016 1356 391 1276 1200 1015 1051 1103 1053 1110 1418 1380 1458 -324 319 309 293 369 862 1361 759 1279 353 1298 1079 979 963 1114 963 1123 1412 1274 1395 -276 264 281 243 358 1100 1424 436 1089 284 1203 854 845 778 1018 778 1027 1277 1049 1205 -215 194 306 181 554 1220 1356 260 764 203 1003 568 647 521 837 521 849 1035 744 917 -139 113 226 108 625 1126 1083 144 338 115 679 246 369 249 540 248 566 670 365 522 -70 73 69 68 384 571 477 73 71 75 237 114 111 113 157 113 198 219 112 129 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -30 64 25 41 29 29 31 333 165 344 35 154 49 104 35 81 35 49 152 114 -95 135 79 112 90 92 111 452 311 403 206 337 225 283 183 283 183 255 349 316 -140 166 121 145 138 145 195 510 422 397 352 458 346 398 326 399 326 408 485 464 -162 180 143 161 164 182 294 486 464 332 437 500 405 444 401 444 402 490 538 532 -188 197 171 180 197 239 418 505 551 294 550 574 485 514 498 515 500 607 628 639 -207 209 193 192 227 340 589 515 661 259 675 642 561 577 599 577 603 738 721 756 -191 188 187 173 227 391 553 356 523 213 595 520 486 481 532 481 535 634 587 629 -156 150 160 138 208 446 559 230 442 160 524 403 400 377 459 377 463 550 470 525 -178 162 242 151 429 919 1022 216 589 170 770 450 506 415 647 415 655 793 579 707 -86 75 110 70 229 374 362 89 156 76 280 156 191 157 240 157 247 278 190 236 -31 27 34 25 83 114 99 29 35 26 78 52 57 53 67 53 71 75 54 61 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 -36 37 31 34 35 36 37 41 39 41 67 69 67 68 66 68 66 67 69 68 -57 60 51 55 57 58 62 68 66 66 110 114 110 112 110 112 110 112 115 114 -90 94 80 86 91 96 107 120 118 110 185 191 182 186 182 186 182 190 194 194 -104 107 94 98 107 117 134 139 143 123 222 225 215 218 217 218 217 228 231 232 -92 93 86 86 98 106 116 112 117 102 193 191 187 188 189 187 189 196 195 197 -106 104 101 96 118 138 154 133 150 114 236 227 222 221 228 221 228 241 235 241 -95 91 93 84 110 132 143 112 130 97 210 196 195 193 202 192 203 213 204 210 -70 66 69 61 83 98 101 75 88 68 148 136 138 135 143 135 144 149 141 146 -47 43 48 40 60 71 70 47 56 44 97 86 89 86 94 86 94 97 89 93 -16 15 17 14 24 29 26 16 18 16 32 27 29 27 31 27 31 32 28 30 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -33 34 29 31 32 33 34 36 35 37 61 63 61 62 61 62 61 62 63 62 -36 36 32 34 36 37 37 38 38 38 67 68 67 68 67 68 67 68 68 68 -43 43 39 40 44 44 45 45 45 45 81 82 81 81 81 81 81 82 82 82 -43 43 39 40 44 45 45 45 45 45 81 81 81 81 81 81 81 82 82 82 -80 80 74 74 84 89 95 92 96 87 162 161 158 159 159 159 160 164 163 165 -94 93 89 86 103 116 127 113 123 100 201 195 192 191 196 191 196 205 200 204 -78 76 77 69 105 225 283 117 224 81 239 178 176 165 206 165 208 252 212 240 -56 53 54 50 64 71 72 59 65 55 113 107 108 107 111 106 111 114 110 112 -57 53 66 48 129 203 198 59 93 54 159 97 113 98 138 97 142 157 113 136 -21 17 25 16 69 98 84 18 26 17 59 34 39 35 48 35 52 56 36 43 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -22 45 19 29 22 22 23 279 140 284 25 121 33 77 25 55 25 34 120 89 -92 131 78 111 89 90 105 688 453 596 208 424 238 334 161 335 160 292 445 393 -73 87 62 74 72 76 106 265 221 205 161 216 157 184 148 184 148 190 230 219 -92 102 80 90 93 104 180 305 292 202 239 280 217 242 215 243 216 274 305 302 -108 114 97 102 113 140 260 315 346 174 311 326 269 288 277 288 279 349 362 370 -113 115 106 105 126 190 321 281 358 145 347 329 286 294 306 295 308 381 372 390 -120 119 115 108 142 293 446 263 421 134 417 349 318 313 359 313 362 452 409 447 -82 79 83 72 111 233 292 124 232 85 252 190 188 177 218 177 220 266 225 253 -172 157 235 146 435 979 1098 210 627 164 785 437 496 395 650 395 659 812 579 719 -64 57 80 53 181 306 298 66 119 58 211 109 135 109 176 109 183 209 135 173 -17 14 20 13 60 87 74 15 21 14 49 27 31 28 39 28 43 46 29 34 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 5 4 5 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 -34 35 29 32 33 34 35 38 37 38 63 65 63 64 63 64 63 63 65 64 -61 65 54 59 61 63 68 76 74 73 120 124 119 122 119 122 119 122 125 124 -49 52 42 46 50 54 106 198 188 122 130 158 114 132 113 132 113 154 176 173 -94 97 83 87 98 118 232 283 313 149 263 277 224 241 231 241 233 298 310 317 -103 104 96 95 115 174 298 260 333 132 314 297 257 264 276 265 278 346 337 355 -127 125 122 114 150 306 464 276 438 141 436 366 334 329 376 329 379 473 429 468 -172 165 176 152 229 648 842 278 653 178 694 494 487 450 586 450 592 739 608 698 -75 70 84 64 134 243 269 89 173 73 220 149 160 142 192 141 194 226 177 207 -50 45 65 42 189 340 332 52 108 47 194 73 102 74 151 74 160 192 103 148 -13 11 16 10 78 120 101 12 17 11 48 20 23 20 32 20 39 44 21 26 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 30 13 20 16 16 17 193 99 195 20 83 24 53 20 38 20 25 83 62 -68 93 57 77 66 67 79 441 297 381 138 271 155 215 110 215 110 190 285 253 -74 87 63 74 73 77 108 267 223 205 162 216 158 185 148 185 149 191 231 221 -87 91 78 84 88 93 105 117 116 107 179 185 176 180 176 180 176 184 189 188 -137 144 124 131 144 177 322 387 425 217 398 416 346 369 357 369 358 443 459 468 -179 181 167 165 197 315 587 506 664 226 623 586 500 517 541 517 545 690 671 708 -186 183 179 168 218 544 880 483 829 206 777 632 564 554 653 554 660 854 762 843 -191 182 195 168 253 739 965 312 748 197 787 556 547 504 662 504 669 839 687 792 -127 117 159 109 280 592 663 155 395 123 498 298 331 275 419 275 425 514 380 461 -72 64 94 60 232 404 396 76 146 65 265 127 159 127 215 127 225 263 161 212 -26 17 38 17 183 283 238 21 36 16 114 43 52 45 73 45 91 104 48 60 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 31 14 21 17 17 18 210 108 211 21 89 24 56 20 38 20 25 89 66 -106 148 90 127 102 104 121 908 598 774 243 530 280 409 177 410 176 357 560 492 -175 204 151 179 172 182 292 1206 972 860 558 848 532 679 479 681 479 717 927 873 -236 257 209 231 239 263 630 1281 1221 731 852 1050 738 865 728 868 731 1026 1176 1162 -284 294 256 267 296 344 943 1198 1350 476 1074 1138 875 962 916 964 922 1242 1301 1335 -283 285 261 261 306 521 1105 936 1266 338 1110 1034 858 892 943 893 950 1246 1208 1284 -269 265 259 244 313 777 1256 692 1184 297 1119 914 817 803 944 802 953 1229 1100 1215 -245 234 251 216 323 1067 1410 417 1085 254 1111 763 749 684 922 684 932 1189 962 1119 -186 168 258 157 495 1160 1313 232 747 177 899 479 549 425 735 424 746 935 654 823 -115 93 179 88 558 1045 1024 122 306 94 586 200 285 201 442 201 474 581 290 436 -0 0 3 0 244 403 334 0 2 0 89 0 0 0 21 0 55 75 0 7 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 24 12 17 14 14 15 161 84 162 17 69 20 44 17 30 17 21 69 52 -91 125 78 107 88 90 106 737 490 627 203 433 232 335 151 336 151 295 458 403 -155 181 133 158 152 161 259 1003 813 716 473 710 450 570 407 572 408 604 775 731 -231 251 204 226 234 258 626 1268 1211 720 834 1030 721 846 711 849 714 1008 1155 1142 -277 287 250 261 289 337 935 1186 1339 466 1053 1117 855 941 896 943 902 1221 1279 1313 -297 299 274 274 321 552 1183 1000 1356 354 1175 1094 904 941 996 942 1003 1323 1281 1363 -267 263 256 241 310 771 1247 689 1177 295 1105 902 804 791 931 790 940 1215 1086 1200 -218 208 223 192 289 902 1189 367 920 226 944 655 642 589 786 589 795 1009 820 951 -139 128 177 119 319 695 784 172 465 134 571 333 371 303 477 303 483 592 432 528 -97 81 143 76 418 774 760 104 241 82 449 172 230 172 344 172 367 445 235 340 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 17 8 12 10 10 11 107 57 107 13 46 15 30 13 21 13 15 47 35 -77 104 64 87 74 75 91 524 356 447 160 318 179 250 126 250 126 222 335 298 -138 163 119 142 136 144 226 742 609 538 385 553 369 453 339 455 339 478 599 569 -178 194 157 174 180 200 424 801 768 476 565 682 497 572 492 573 494 669 757 750 -251 260 226 237 262 308 812 1021 1151 418 915 968 747 820 782 821 787 1058 1106 1135 -187 189 174 173 206 341 668 571 760 235 682 638 537 556 586 557 589 761 739 783 -219 216 211 198 257 597 949 538 897 244 852 702 630 620 723 619 730 934 839 923 -202 193 207 178 269 816 1074 339 835 209 853 595 583 535 712 535 720 912 743 861 -118 109 142 101 244 500 562 145 345 114 430 267 293 248 365 248 370 445 335 401 -72 63 92 59 227 398 392 76 147 65 260 128 156 129 210 128 221 259 158 209 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 7 4 5 5 5 5 27 15 26 6 14 7 10 6 9 6 7 14 12 -28 29 25 27 28 29 30 32 31 32 53 54 53 54 53 54 53 54 55 54 -17 17 15 15 17 17 17 17 17 17 31 31 31 31 31 31 31 31 31 31 -53 54 48 50 54 56 58 60 59 58 103 104 102 103 102 103 102 104 104 104 -55 55 50 51 56 58 60 60 60 59 106 106 105 105 105 105 105 107 107 107 -59 59 54 54 61 63 66 64 65 62 114 114 113 113 113 113 113 115 115 115 -57 56 52 52 60 62 64 61 63 59 111 109 109 109 110 109 110 111 111 111 -48 47 45 44 52 54 55 51 54 49 94 92 92 92 93 92 93 95 93 94 -84 79 97 73 167 338 380 102 236 83 286 178 195 165 243 165 246 296 223 267 -86 72 123 68 381 715 706 92 218 74 401 149 197 149 301 149 324 398 203 300 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 -42 54 35 44 41 42 50 239 166 204 72 140 79 110 58 110 58 99 148 132 -96 110 83 96 95 100 162 553 454 395 259 384 245 309 223 310 223 329 420 397 -125 135 110 121 128 141 342 681 653 383 425 527 363 429 359 430 360 518 596 589 -243 252 220 229 254 300 849 1072 1215 414 926 982 744 821 782 823 788 1080 1131 1163 -281 283 260 259 305 536 1168 985 1341 338 1127 1045 855 892 947 893 954 1274 1233 1314 -266 262 256 241 310 805 1323 723 1251 295 1133 916 809 795 946 795 956 1252 1115 1238 -179 172 183 158 239 715 945 304 737 186 742 517 505 464 617 464 625 794 647 749 -126 116 154 108 273 587 665 157 404 122 488 291 321 266 409 266 414 506 373 454 -51 47 57 43 114 184 182 53 85 48 140 87 98 87 120 87 124 140 100 120 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -45 57 38 47 44 45 54 243 170 208 77 145 84 115 64 114 64 104 153 137 -85 98 73 84 85 89 142 451 373 324 216 316 205 255 188 256 188 272 345 327 -196 213 174 192 199 221 536 1053 1013 594 682 839 585 687 579 689 581 826 945 936 -100 105 90 95 106 131 251 301 334 160 284 297 241 259 250 260 252 320 333 340 -142 143 132 131 156 260 514 438 584 178 504 470 392 407 430 407 432 565 548 582 -155 153 150 140 184 431 688 391 652 174 601 492 439 432 507 432 512 661 592 654 -95 92 95 84 127 261 330 145 266 99 289 221 218 206 251 206 254 305 260 292 -76 72 83 66 133 245 274 91 180 75 222 151 162 143 193 143 195 229 181 210 -58 52 73 48 195 352 349 62 124 53 215 100 120 100 168 100 179 214 124 169 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -47 59 39 48 45 46 56 252 177 214 80 151 87 119 67 118 67 109 160 143 -110 127 95 110 109 115 194 673 554 475 308 461 290 368 263 369 264 395 506 478 -98 105 86 94 99 110 222 400 387 241 275 330 241 276 239 277 240 325 367 364 -133 138 120 125 139 170 409 506 571 221 445 469 363 398 380 398 383 513 536 551 -143 144 132 132 157 263 521 444 592 179 507 473 394 409 432 409 435 570 552 587 -195 192 188 176 229 567 923 515 874 218 788 639 565 556 658 556 665 870 776 860 -170 163 172 150 226 706 940 295 734 176 717 491 478 437 591 437 599 770 623 726 -157 142 210 133 416 1018 1171 201 678 151 759 388 443 338 609 338 621 795 547 698 -97 78 145 74 495 962 957 106 281 80 507 171 224 172 365 171 400 505 237 370 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 1 0 0 0 0 0 16 8 16 0 5 0 3 0 1 0 1 5 4 -88 116 75 99 86 87 103 843 566 699 187 452 213 333 136 329 136 298 484 423 -167 188 144 166 165 174 300 1126 925 785 498 759 465 600 420 603 421 648 837 790 -214 233 190 209 218 242 628 1253 1208 689 777 966 657 781 650 784 654 952 1095 1085 -257 267 232 243 269 319 938 1181 1344 441 993 1053 788 874 831 876 838 1164 1220 1257 -275 277 255 254 300 537 1187 998 1364 333 1114 1030 836 873 930 874 937 1266 1223 1307 -261 257 251 236 305 811 1346 735 1276 291 1123 902 791 778 931 777 941 1246 1106 1232 -221 210 227 194 295 1029 1385 404 1077 230 1024 683 662 599 834 600 845 1105 883 1038 -159 143 211 134 418 1021 1176 206 686 153 763 391 445 341 612 341 624 799 551 702 -91 74 134 70 446 865 863 100 261 76 461 163 207 163 333 163 365 460 221 339 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 1 0 0 0 0 0 9 5 9 0 3 0 2 0 1 0 0 3 2 -80 107 67 89 77 79 98 657 449 545 165 366 184 275 130 271 130 250 391 345 -118 138 102 121 117 124 204 620 517 443 319 454 302 371 279 372 280 396 495 471 -149 163 131 146 151 170 370 682 661 398 467 563 406 469 403 470 405 557 630 625 -159 166 144 151 167 207 468 572 644 263 521 547 431 468 450 469 453 597 621 638 -169 171 157 156 187 306 586 502 664 214 584 546 460 476 501 477 505 653 634 672 -149 147 144 135 178 388 610 357 579 168 540 447 400 395 458 395 463 592 533 586 -120 116 121 107 159 315 399 182 325 125 363 283 278 264 318 264 320 382 330 367 -130 120 161 111 296 673 772 166 467 126 536 302 336 273 440 273 447 558 402 498 -49 44 58 40 142 253 253 52 99 45 162 84 96 84 129 84 136 162 100 131 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 9 8 9 9 9 9 9 9 9 17 17 17 17 17 17 17 17 17 17 -32 33 29 30 32 33 34 34 34 34 60 61 60 61 60 61 60 61 61 61 -49 50 44 46 50 51 54 55 55 54 95 96 94 95 94 95 94 96 96 96 -56 57 51 52 58 60 62 62 63 60 109 109 108 108 108 108 108 110 110 111 -60 60 55 56 63 66 69 67 69 64 118 118 116 116 117 116 117 119 119 120 -68 67 63 62 73 79 84 78 82 72 138 135 134 134 136 133 136 140 138 140 -42 41 38 38 44 46 47 44 45 42 80 79 79 78 79 78 79 81 80 80 -42 41 40 38 47 52 54 45 49 42 85 80 81 80 83 80 83 85 82 84 -17 16 16 15 19 20 20 17 18 17 33 31 32 31 32 31 32 33 32 32 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -19 20 17 18 19 19 20 20 20 21 36 36 36 36 36 36 36 36 36 36 -49 51 43 46 49 50 53 59 57 57 94 97 94 95 93 95 93 96 98 97 -69 73 60 64 70 77 147 251 244 154 165 197 144 165 144 165 144 195 220 218 -92 96 82 86 97 121 237 283 316 147 256 268 215 232 224 232 225 291 302 310 -84 85 77 77 93 146 260 225 292 108 245 230 194 201 211 201 213 274 266 282 -91 90 87 83 102 120 135 117 132 99 202 194 189 189 195 189 195 207 202 206 -51 50 48 46 55 59 62 56 59 52 102 99 99 98 100 98 100 102 100 102 -59 56 63 51 105 203 230 72 150 59 171 111 119 104 146 104 148 177 136 162 -31 29 31 27 39 47 47 32 38 30 63 57 58 57 61 56 61 63 59 61 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -44 55 37 45 43 44 53 294 206 244 74 160 80 119 61 117 61 110 171 151 -148 172 128 150 146 156 300 1126 930 768 457 719 420 556 376 558 377 610 800 754 -204 221 180 199 207 232 620 1222 1185 661 732 914 612 733 607 735 611 905 1042 1034 -169 175 152 159 177 215 570 706 803 285 592 625 473 522 498 523 502 692 723 745 -181 183 168 167 198 345 720 610 825 225 670 621 507 529 562 530 567 760 735 784 -222 219 214 201 262 677 1123 624 1069 249 922 740 647 636 762 636 770 1025 910 1014 -170 163 174 150 229 700 940 309 742 178 704 483 467 426 579 427 586 759 614 717 -81 77 91 70 158 330 377 102 240 80 275 169 183 157 230 156 234 286 215 258 -40 38 40 35 56 73 73 42 53 39 85 72 75 72 80 71 81 85 76 81 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 18 12 15 14 15 18 99 70 82 23 52 26 39 19 38 19 36 56 50 -51 57 43 49 51 54 82 212 180 154 103 145 97 118 91 119 91 127 158 151 -86 93 75 83 87 99 179 295 288 186 216 252 192 216 191 216 192 250 279 277 -189 197 171 178 198 241 663 823 938 322 681 721 540 598 571 600 575 799 836 862 -152 153 140 140 166 292 612 518 701 190 564 522 425 444 472 444 475 640 619 661 -132 130 126 119 156 355 569 330 543 148 481 393 348 343 403 343 407 531 475 525 -89 86 89 79 118 248 318 140 259 93 269 204 199 188 232 188 234 285 242 273 -82 77 95 71 175 401 463 102 285 81 309 173 190 156 252 156 257 324 232 289 -58 50 75 46 245 479 484 64 159 51 254 101 117 101 183 101 201 255 128 192 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -74 94 64 80 73 74 88 792 540 642 143 392 160 274 110 262 109 252 425 370 -153 172 133 152 152 160 300 1102 915 749 449 701 411 543 369 546 370 598 781 738 -199 216 176 194 203 227 628 1238 1204 661 722 906 597 720 593 723 597 898 1037 1029 -240 249 217 226 251 302 939 1177 1348 419 937 994 726 812 772 815 778 1111 1165 1204 -259 261 240 239 283 525 1191 1000 1375 318 1062 977 777 815 873 817 881 1217 1174 1259 -244 240 236 221 288 794 1343 736 1281 275 1068 846 731 719 871 719 882 1194 1054 1181 -205 195 211 180 277 1006 1377 407 1081 215 967 631 604 542 776 543 787 1052 832 988 -148 133 193 124 403 1057 1239 197 731 142 748 352 403 302 580 302 596 789 528 689 -81 64 117 61 424 858 869 92 267 66 428 148 174 148 293 147 329 430 194 313 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -58 72 49 61 57 58 69 510 353 415 106 262 116 187 87 179 87 174 283 248 -54 61 47 52 55 57 88 221 189 160 110 153 104 126 97 126 97 135 167 160 -81 88 71 77 82 93 171 282 276 176 201 235 177 200 177 200 177 234 261 259 -86 89 77 80 90 113 227 270 303 137 236 247 196 212 204 212 206 269 280 287 -232 234 215 214 254 461 1017 857 1171 287 914 842 675 707 755 708 762 1044 1008 1080 -203 200 196 183 240 619 1030 577 984 229 831 665 579 570 683 570 691 926 822 917 -183 174 191 160 253 754 1017 347 808 193 765 527 508 465 628 465 636 825 670 780 -119 109 141 101 256 578 670 156 420 116 465 268 292 244 380 244 388 486 354 435 -42 38 49 35 124 226 229 46 92 39 141 74 82 74 110 74 117 142 87 115 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -54 67 46 57 53 54 65 617 422 496 95 289 107 195 73 184 73 181 316 273 -105 117 91 103 104 110 214 787 654 530 301 480 273 367 244 369 244 408 538 508 -150 162 132 145 153 170 465 907 884 484 518 651 427 516 425 518 427 647 748 742 -221 229 199 208 231 280 870 1089 1249 387 854 907 658 738 701 740 707 1015 1065 1101 -219 220 203 202 239 445 1005 845 1161 271 883 812 644 676 725 677 731 1015 978 1050 -194 191 187 175 229 610 1028 571 982 219 812 645 557 549 663 549 671 908 803 899 -153 147 155 135 204 678 925 294 733 160 655 435 417 377 529 377 536 712 568 670 -136 123 175 115 366 973 1146 182 682 132 681 317 362 272 525 273 541 721 480 629 -70 64 83 60 304 615 626 75 192 66 303 117 126 117 205 116 233 305 141 223 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -59 73 51 62 58 59 70 686 470 550 104 320 117 214 83 201 82 201 350 303 -137 154 119 136 136 144 286 1066 887 714 405 648 365 494 325 496 327 551 728 687 -193 209 171 188 196 221 629 1237 1207 651 698 881 571 694 568 697 572 876 1014 1007 -232 241 210 219 244 294 940 1177 1352 410 911 968 698 785 744 787 751 1087 1141 1181 -248 250 230 229 271 514 1188 997 1375 306 1029 944 742 781 839 783 847 1187 1143 1229 -235 232 227 213 278 786 1344 736 1286 266 1040 818 700 689 841 689 852 1168 1029 1156 -177 170 181 156 237 891 1233 366 973 186 838 537 511 455 665 456 675 915 719 859 -141 127 182 118 387 1046 1236 191 737 136 725 331 377 282 554 283 572 768 508 669 -92 85 104 79 362 725 739 96 232 87 364 152 158 151 248 151 282 366 176 271 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -64 79 55 67 63 65 77 741 510 592 114 346 126 231 93 215 93 218 379 328 -141 158 123 140 140 148 293 1067 891 715 410 652 370 497 330 500 331 555 731 691 -188 204 167 183 191 216 621 1219 1190 639 680 860 554 675 552 678 556 855 992 985 -227 236 206 215 239 289 932 1166 1341 403 894 951 682 768 728 770 735 1069 1122 1162 -242 244 225 223 265 506 1174 986 1361 300 1008 924 724 763 820 764 828 1164 1122 1207 -186 184 178 168 219 626 1077 589 1032 209 817 640 545 536 658 536 666 920 809 911 -150 144 152 132 201 666 914 295 727 158 640 424 405 365 515 366 522 697 555 656 -82 77 91 71 157 337 391 105 253 81 278 169 181 157 230 157 235 290 217 262 -29 27 32 24 72 128 131 32 58 28 84 48 52 48 67 48 71 84 55 70 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -14 14 12 13 14 14 14 15 14 15 26 26 26 26 26 26 26 26 26 26 -34 35 31 32 34 35 37 38 38 38 65 66 65 66 65 65 65 66 67 66 -63 65 56 60 64 67 74 79 79 74 125 128 124 125 123 125 124 128 130 130 -76 78 70 72 79 86 97 99 102 89 159 160 154 156 155 156 155 163 164 165 -87 87 81 81 93 106 122 116 125 99 188 186 179 180 182 180 183 194 192 195 -73 72 68 66 79 89 98 88 96 78 153 148 146 146 149 145 149 156 153 155 -67 65 64 60 76 90 97 79 90 69 143 135 134 132 138 132 138 145 140 144 -43 41 42 38 50 58 61 48 54 43 90 83 84 83 87 83 87 90 86 89 -16 15 16 14 19 21 21 17 18 16 32 30 31 30 31 30 32 32 31 32 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -29 35 24 28 29 29 36 187 134 152 43 95 45 69 38 65 38 66 103 91 -41 46 35 39 41 43 70 183 156 129 82 118 76 95 71 95 71 104 130 124 -61 64 53 56 62 69 137 233 229 139 141 170 121 140 121 140 121 170 192 191 -102 105 91 95 106 131 310 376 426 166 307 323 247 271 260 271 262 358 373 385 -182 184 169 168 200 364 806 681 930 228 699 643 510 535 573 536 578 803 774 831 -142 140 136 128 168 409 677 390 650 161 542 436 379 374 446 374 451 604 537 598 -95 92 94 85 126 319 427 167 346 100 324 232 223 207 270 207 273 349 288 332 -65 61 71 56 140 352 415 82 258 65 246 123 136 109 192 109 198 261 179 230 -24 22 26 20 62 112 114 26 50 23 69 38 41 38 54 38 57 69 44 57 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -58 70 50 60 57 58 69 715 494 566 96 319 106 205 82 185 82 197 352 303 -136 152 118 134 135 143 293 1061 888 703 390 629 348 475 309 477 311 536 710 670 -183 199 162 178 186 211 625 1224 1198 634 662 841 533 654 531 657 535 839 975 969 -221 230 200 209 233 283 934 1170 1347 397 873 929 658 745 705 747 712 1050 1103 1143 -236 239 219 218 260 502 1183 994 1374 295 991 906 702 742 800 744 808 1150 1107 1194 -222 219 215 201 264 766 1328 731 1277 253 995 777 656 646 796 646 806 1124 987 1113 -185 177 191 163 252 967 1353 410 1076 196 894 566 534 472 702 474 714 982 768 922 -130 117 164 109 356 1007 1203 180 728 126 678 295 336 251 508 252 527 722 470 628 -82 76 89 70 323 666 686 86 225 78 321 135 139 135 212 135 244 325 152 241 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -53 64 46 54 53 54 64 682 472 538 85 297 93 187 73 167 73 181 329 283 -141 157 122 139 140 148 299 1055 886 700 395 631 353 478 315 480 317 539 711 672 -184 200 163 180 187 213 597 1145 1122 602 639 803 519 631 518 634 522 802 927 922 -202 210 183 191 212 259 848 1061 1221 363 786 837 592 670 635 672 641 946 994 1031 -217 220 202 201 239 443 999 846 1157 273 856 786 618 651 698 652 705 987 952 1023 -205 202 199 186 245 658 1121 632 1079 235 861 681 581 573 696 574 705 967 855 959 -136 130 137 120 182 580 799 272 642 143 560 375 357 323 451 324 458 610 489 577 -83 78 92 72 158 343 400 109 263 82 283 173 184 161 234 161 239 296 222 269 -37 32 44 30 134 267 275 42 105 33 143 65 71 65 102 65 112 144 77 112 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -17 20 14 16 17 17 21 100 73 81 24 52 26 37 23 35 23 36 56 50 -36 37 32 34 36 37 39 41 40 40 68 69 68 68 67 68 67 69 70 70 -68 72 59 63 69 77 151 253 248 151 160 191 139 159 138 159 139 191 215 214 -87 91 78 81 92 115 233 276 310 139 237 248 196 212 205 212 206 271 282 290 -84 85 78 78 90 103 118 113 122 96 183 180 173 175 176 175 177 188 186 189 -81 80 77 74 90 107 122 105 119 89 179 172 167 167 172 167 172 184 179 183 -69 67 67 62 80 97 107 84 98 72 151 141 140 138 145 138 145 154 147 152 -48 46 48 43 59 71 76 54 65 48 103 94 95 93 99 93 99 104 98 102 -22 21 22 19 29 35 36 23 28 22 46 40 42 40 44 40 44 46 42 44 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 -35 36 31 33 35 36 38 40 40 40 67 68 67 67 66 67 66 68 69 69 -54 56 48 51 55 57 62 65 65 62 106 108 105 106 105 106 105 108 110 110 -77 79 70 73 80 88 100 103 107 91 162 163 156 158 157 158 158 166 168 169 -82 83 76 76 88 100 115 109 118 94 178 175 169 170 172 170 172 182 181 184 -79 78 75 72 88 103 117 101 114 86 173 166 162 162 166 162 167 177 173 177 -67 65 65 60 77 93 102 81 94 70 146 136 135 133 140 133 140 148 142 147 -40 38 38 35 46 53 55 43 49 40 81 76 76 75 79 75 79 82 78 81 -21 20 21 18 26 32 33 22 26 20 43 38 39 38 41 38 41 43 39 41 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 -29 29 26 27 29 30 31 32 31 31 54 55 54 55 54 55 54 55 55 55 -33 33 30 31 34 34 35 35 35 35 63 63 62 62 62 62 62 63 63 63 -37 37 34 34 38 39 40 39 40 39 71 71 70 70 70 70 70 71 71 71 -34 34 31 32 35 36 36 36 36 36 65 65 64 64 64 64 64 65 65 65 -20 20 18 18 20 20 20 20 20 20 37 37 37 37 37 37 37 37 37 37 -31 30 29 28 33 34 34 32 33 32 59 58 58 58 59 58 59 59 59 59 -17 17 16 15 18 18 18 18 18 17 32 32 32 32 32 32 32 32 32 32 -8 8 8 7 9 9 9 8 9 8 16 15 15 15 15 15 15 16 15 15 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -12 13 11 12 12 12 13 13 13 13 23 23 23 23 23 23 23 23 23 23 -35 37 31 34 36 37 39 41 41 40 68 69 68 68 67 68 67 69 70 70 -34 34 31 32 35 35 36 37 37 36 64 65 64 64 64 64 64 65 65 65 -29 29 26 26 29 30 30 30 30 30 54 54 54 54 54 54 54 54 54 54 -53 53 49 49 55 58 61 60 61 57 104 104 102 103 103 103 103 106 105 106 -37 36 33 33 38 39 40 39 39 38 70 69 69 69 69 69 69 70 70 70 -18 18 17 17 19 19 19 19 19 19 34 34 34 34 34 34 34 34 34 34 -14 14 13 13 15 15 15 15 15 15 27 27 27 27 27 27 27 27 27 27 -7 7 6 6 7 8 8 7 7 7 13 13 13 13 13 13 13 13 13 13 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 11 10 10 11 11 11 11 11 11 20 20 20 20 20 20 20 20 20 20 -33 34 29 31 33 34 35 37 37 37 62 63 62 63 62 62 62 63 64 64 -63 66 57 61 64 69 77 85 85 77 129 133 126 129 126 129 127 133 135 135 -56 57 51 53 58 61 66 66 68 63 112 112 110 111 110 111 110 113 114 114 -74 75 69 69 79 88 99 95 101 83 156 155 150 151 152 151 152 160 159 161 -72 71 68 66 79 91 102 90 100 78 154 149 146 146 149 146 149 158 154 157 -71 69 69 64 84 105 118 89 107 74 159 147 145 143 151 143 152 163 154 160 -53 51 52 47 66 86 93 61 78 53 116 103 104 101 110 101 111 118 109 115 -26 25 25 23 36 48 49 27 35 26 54 45 47 45 51 45 51 54 48 51 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -33 38 28 31 33 33 40 390 274 304 43 158 46 93 41 79 41 94 177 151 -122 135 106 119 121 128 283 1012 853 658 336 562 292 413 257 415 258 477 642 606 -169 184 149 164 172 196 613 1196 1176 606 603 777 473 592 473 595 477 778 911 906 -207 216 187 196 218 269 923 1159 1336 383 815 871 600 686 647 688 654 993 1046 1086 -221 223 205 204 243 480 1166 987 1365 280 930 848 642 683 738 685 746 1090 1049 1135 -208 205 202 188 249 742 1314 733 1275 240 939 726 601 593 739 594 749 1070 937 1063 -171 163 177 150 234 930 1327 422 1070 183 835 518 479 420 644 422 655 926 719 870 -115 104 139 96 311 945 1150 165 717 113 611 250 280 217 442 217 464 656 419 569 -70 65 70 60 262 565 590 73 217 67 260 116 117 116 163 115 192 265 121 199 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 37 27 30 31 32 39 328 233 256 43 137 45 83 41 71 41 84 153 132 -84 95 72 82 84 89 183 595 504 392 213 341 188 256 168 257 169 293 387 366 -113 122 100 109 115 131 299 528 520 296 323 393 272 319 272 320 274 394 447 445 -107 111 96 100 112 139 275 326 365 168 290 303 243 262 253 262 255 330 342 352 -150 152 140 139 167 283 572 495 658 196 512 476 386 404 428 405 431 582 565 603 -149 147 144 135 179 429 716 425 696 172 561 453 390 386 459 386 464 628 560 624 -120 116 122 106 162 437 601 238 494 128 439 309 293 271 360 271 365 477 392 454 -67 64 68 59 107 212 247 84 173 67 189 129 134 123 161 123 164 197 156 182 -20 19 21 17 69 144 151 23 62 19 70 32 34 32 47 32 53 72 36 56 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -12 14 10 11 12 12 14 78 57 62 16 37 16 25 15 23 15 25 40 36 -44 49 38 42 45 47 77 190 164 133 84 120 77 95 72 96 72 106 133 127 -39 40 33 35 40 44 99 175 172 98 92 114 75 90 75 91 76 115 132 132 -50 51 45 47 52 54 57 57 58 55 98 98 97 97 97 97 97 99 100 100 -56 56 52 52 59 63 67 65 68 61 112 112 110 110 111 110 111 114 114 114 -44 44 41 41 47 49 51 49 51 47 87 86 85 85 86 85 86 88 87 88 -33 32 30 30 35 36 37 35 36 34 63 62 62 62 63 62 63 64 63 63 -23 22 22 21 25 26 27 24 25 23 45 43 43 43 44 43 44 45 44 44 -9 8 8 8 9 10 10 9 9 8 17 16 16 16 16 16 16 17 16 16 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -20 23 17 19 20 20 25 248 175 192 25 96 26 54 24 44 24 56 109 93 -67 74 58 65 67 71 147 476 404 312 160 262 140 194 125 195 125 224 299 283 -71 76 62 67 72 82 158 260 257 156 168 199 145 166 145 166 146 200 224 223 -113 116 101 105 118 145 441 549 630 199 382 408 285 324 306 325 309 464 488 507 -146 148 135 135 160 297 685 586 800 186 550 504 387 410 441 411 445 641 619 667 -86 85 81 77 100 193 300 193 292 98 251 211 188 186 213 186 215 276 251 275 -74 72 72 66 95 210 281 128 235 78 217 162 155 146 183 146 185 233 197 224 -41 40 41 36 71 159 189 53 129 42 121 71 75 67 97 67 100 127 94 115 -19 18 20 16 48 92 96 21 46 18 56 32 34 32 43 32 46 57 36 48 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 9 8 9 9 9 9 9 9 10 17 17 17 17 17 17 17 17 17 17 -29 30 26 27 29 30 31 33 33 32 55 56 55 56 55 56 55 56 57 56 -34 34 30 32 34 35 37 37 37 36 64 65 64 64 64 64 64 65 65 65 -72 74 65 68 75 82 94 98 101 85 151 152 146 148 147 148 147 155 157 158 -67 68 62 62 71 78 87 84 89 75 139 138 134 135 136 135 136 142 142 143 -74 73 70 67 82 97 111 96 108 81 162 155 151 151 156 151 156 166 162 166 -40 39 37 36 43 46 48 43 46 41 79 76 76 76 77 76 77 79 78 79 -23 22 21 20 24 26 26 24 25 23 44 42 42 42 43 42 43 44 43 43 -16 15 15 14 20 24 25 17 20 15 32 28 29 28 31 28 31 32 30 31 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -34 39 30 32 35 35 41 558 392 427 44 203 44 105 42 79 42 111 232 195 -110 122 96 107 110 116 271 981 828 629 297 516 252 370 219 372 220 435 595 560 -107 115 95 102 109 123 352 667 657 345 334 427 263 327 263 328 266 429 500 498 -94 97 84 87 98 122 248 295 331 148 250 262 207 224 216 224 218 287 298 307 -121 122 112 112 133 219 435 379 500 156 386 360 293 306 323 307 326 439 426 454 -117 115 111 105 138 293 474 295 463 134 386 319 279 277 321 277 325 428 386 426 -99 95 98 88 130 329 452 191 375 105 334 240 227 211 275 212 279 362 300 346 -73 69 79 63 145 372 451 99 300 73 275 148 157 139 214 138 221 293 208 262 -38 30 49 28 174 385 407 48 172 31 183 77 84 75 117 75 135 189 89 145 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 17 13 13 16 16 18 228 161 175 17 80 17 40 16 30 16 43 92 77 -33 36 28 31 34 35 61 161 138 110 63 94 57 73 53 73 53 83 106 101 -56 58 48 51 57 63 131 222 219 129 124 152 104 123 105 123 105 152 174 173 -50 51 44 45 52 63 154 188 214 81 128 136 98 110 105 110 105 154 161 167 -71 71 63 64 76 136 307 265 359 89 226 207 156 166 179 167 181 267 257 278 -33 33 30 30 38 97 168 98 164 37 109 84 68 68 84 68 86 125 109 124 -58 56 55 52 66 78 86 69 80 60 124 116 115 114 119 114 119 126 121 125 -40 39 40 35 68 154 185 51 127 41 117 69 72 65 93 65 96 123 91 112 -19 18 20 16 47 91 96 22 48 18 57 34 36 34 44 34 47 58 38 49 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 9 6 7 7 8 9 92 65 71 10 35 10 19 9 15 9 20 39 34 -62 69 53 60 62 66 134 423 360 278 141 231 123 171 110 171 110 198 264 249 -93 99 82 88 95 105 346 681 670 337 306 404 231 299 231 300 234 406 481 479 -73 74 64 66 76 92 303 381 438 131 235 254 167 195 182 195 184 293 310 323 -71 71 64 64 77 123 239 209 274 90 196 183 148 155 163 155 165 225 218 233 -69 68 63 61 80 160 254 162 249 78 196 162 141 140 163 140 164 218 197 217 -57 55 55 51 65 77 85 68 79 59 122 115 114 112 117 112 117 124 119 123 -38 36 37 33 44 53 57 42 50 38 79 73 73 72 76 72 76 80 76 78 -15 14 14 13 19 23 24 16 19 14 30 27 27 26 29 26 29 30 28 29 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 5 5 5 5 6 6 5 5 6 10 10 10 10 10 10 10 10 10 10 -31 32 27 29 31 32 34 36 36 35 59 60 59 60 59 59 59 60 61 61 -65 69 56 61 66 75 147 243 240 145 150 179 128 148 128 148 129 179 202 202 -78 81 70 73 82 102 215 258 290 126 205 216 167 182 175 182 176 238 248 256 -84 85 77 77 92 143 267 236 305 107 236 221 183 190 200 191 201 267 260 276 -160 158 153 145 190 543 970 559 953 185 675 523 428 425 527 425 535 773 679 770 -114 110 114 101 152 520 747 273 616 122 473 304 279 250 368 251 374 525 415 496 -75 70 82 65 184 615 764 104 494 75 375 141 156 130 259 130 276 407 254 352 -20 19 20 17 88 205 219 22 91 19 85 33 35 33 48 33 59 88 36 66 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 6 5 6 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 -15 15 13 14 15 15 16 15 15 16 28 28 28 28 28 28 28 28 28 28 -19 19 17 18 20 20 20 20 20 20 36 36 36 36 36 36 36 36 36 36 -33 33 29 30 33 34 35 35 35 34 62 62 61 61 61 61 61 62 62 62 -30 29 27 27 30 31 31 31 31 31 56 56 55 56 56 56 56 56 56 56 -61 60 55 54 70 145 235 148 230 68 171 139 119 119 139 119 141 192 172 191 -33 32 30 29 41 120 169 67 140 35 102 66 61 55 79 55 80 113 89 107 -17 17 16 15 34 99 122 22 81 18 59 24 26 23 42 23 44 64 41 56 -13 12 13 11 16 20 21 14 17 13 27 24 24 24 26 24 26 27 25 26 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 -29 30 26 27 29 30 32 34 33 33 55 56 55 56 55 56 55 56 57 57 -52 54 47 49 53 56 62 67 67 62 104 106 102 104 102 104 102 106 108 108 -51 52 47 48 53 56 60 61 62 57 102 102 100 101 100 101 100 104 104 104 -65 65 60 60 69 76 85 82 86 72 134 133 129 130 131 130 131 137 137 138 -36 36 33 33 37 39 40 38 39 37 69 68 68 68 68 68 68 69 69 69 -51 50 49 46 58 67 73 61 68 54 108 103 102 101 105 101 105 110 106 109 -36 35 35 32 43 51 54 41 48 36 76 70 70 69 73 69 73 77 73 75 -13 12 14 11 35 71 75 15 37 13 39 22 23 22 29 22 31 40 24 34 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -5 5 5 5 5 6 6 5 6 6 10 10 10 10 10 10 10 10 10 10 -28 29 25 27 29 29 31 33 32 32 54 55 54 55 54 55 54 55 56 56 -49 50 44 46 49 52 57 61 61 57 96 98 95 96 95 96 95 98 100 100 -20 20 18 19 21 21 21 21 21 21 38 38 38 38 38 38 38 38 38 38 -57 58 53 53 60 65 71 69 72 63 116 116 113 113 114 113 114 119 118 119 -45 44 41 41 47 50 53 50 52 47 88 87 86 86 87 86 87 89 88 89 -27 27 25 25 29 30 30 29 30 28 52 51 51 51 52 51 52 52 52 52 -18 17 17 16 19 20 20 19 20 18 34 34 34 34 34 34 34 35 34 34 -6 6 6 6 7 8 8 7 7 6 13 12 12 12 12 12 12 13 12 13 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -18 18 16 17 18 19 19 19 19 19 34 34 34 34 34 34 34 34 34 34 -30 31 27 28 31 32 33 33 33 33 58 58 57 58 57 57 57 58 58 58 -39 39 34 35 40 49 129 160 181 65 102 109 76 87 82 87 82 124 131 136 -45 45 39 40 48 80 170 149 198 56 124 114 87 93 99 93 100 146 141 152 -159 157 152 144 189 546 990 576 978 185 675 522 422 420 523 420 531 777 682 775 -130 125 131 115 174 704 1039 360 859 140 611 371 331 290 459 292 467 687 531 647 -92 84 105 77 235 824 1036 138 679 92 501 185 203 173 342 173 364 547 339 473 -39 35 38 33 164 395 424 42 182 37 160 67 69 67 88 67 109 167 70 125 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3 3 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -18 18 16 16 18 18 18 19 18 19 33 33 33 33 33 33 33 33 33 33 -30 31 27 28 31 32 33 33 33 33 58 58 57 58 57 57 57 58 58 58 -122 127 110 115 128 162 414 512 580 214 381 405 296 331 314 331 317 453 475 491 -158 160 146 146 174 334 832 722 986 205 625 572 421 452 487 454 493 741 716 776 -133 132 126 120 155 475 878 506 869 153 574 437 346 345 437 345 444 665 581 664 -127 122 129 112 172 641 941 340 781 138 569 356 320 284 433 285 441 638 499 603 -71 66 75 61 133 354 435 99 299 71 262 142 149 136 201 136 209 280 200 251 -25 22 28 20 72 150 160 31 81 23 89 50 53 49 66 49 71 91 57 76 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 15 11 13 13 14 17 167 120 128 18 60 18 30 17 24 17 33 68 58 -60 66 52 58 61 64 153 544 460 346 143 263 115 182 99 183 100 220 307 289 -113 122 100 109 116 131 414 806 794 405 363 479 276 355 276 357 279 481 570 567 -147 152 132 138 154 190 693 886 1017 289 552 598 388 456 424 457 429 690 733 763 -164 166 152 151 180 353 903 784 1074 213 666 609 442 477 515 478 522 794 767 833 -141 139 134 128 165 489 897 523 890 163 597 459 366 365 458 365 465 690 605 689 -119 114 120 105 159 564 826 306 688 128 507 322 291 260 389 261 395 567 446 537 -76 70 83 65 162 489 610 112 411 76 329 153 162 145 239 145 251 355 238 314 -26 20 32 19 114 266 287 34 131 22 122 52 57 51 76 51 87 127 61 99 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 -12 12 11 11 12 13 13 13 13 13 23 23 23 23 23 23 23 23 23 23 -22 22 20 20 22 22 23 23 23 23 41 41 41 41 41 41 41 41 41 41 -15 15 13 13 15 15 15 15 14 15 27 27 27 27 27 27 27 27 27 27 -44 44 40 41 46 48 51 50 51 47 87 86 85 85 86 85 86 88 87 88 -39 38 35 35 40 43 44 42 44 40 75 74 74 74 74 73 74 76 75 76 -21 20 19 19 22 22 22 21 22 21 39 39 39 39 39 39 39 39 39 39 -15 15 14 13 16 16 16 15 16 15 28 28 28 28 28 28 28 28 28 28 -3 3 2 2 3 3 3 3 3 3 5 5 5 5 5 5 5 5 5 5 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 5 4 4 4 5 6 25 18 19 7 12 7 8 6 8 6 9 13 12 -30 32 25 28 30 32 66 212 180 138 58 102 47 72 42 72 42 86 119 112 -87 93 76 83 89 100 269 501 494 264 243 312 192 239 192 240 194 314 367 365 -154 160 138 145 161 201 735 943 1083 308 582 632 408 480 445 482 451 729 775 808 -153 155 141 141 167 333 881 768 1054 197 631 576 410 445 482 447 489 759 733 798 -111 110 104 100 129 368 674 397 670 128 444 342 272 272 340 272 345 513 450 513 -70 68 66 62 88 296 434 165 363 74 256 162 145 130 195 131 199 287 226 272 -56 53 57 49 120 421 533 78 356 57 252 95 103 91 171 91 182 276 172 240 -13 13 14 12 83 219 238 15 101 13 78 25 26 25 37 25 48 82 27 59 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -6 7 5 6 6 6 8 33 25 26 9 16 9 12 9 11 9 12 18 16 -35 38 30 32 35 37 63 160 139 110 62 92 55 71 51 71 51 81 103 99 -59 62 52 55 60 67 138 234 231 136 134 163 113 132 113 132 114 163 185 185 -92 95 82 86 96 118 244 294 329 147 241 253 198 216 207 216 209 278 290 298 -100 101 92 92 109 165 306 275 352 128 280 265 221 230 239 230 241 315 308 326 -79 78 74 71 91 176 282 186 279 90 226 190 166 166 189 166 191 251 229 251 -80 78 77 71 99 214 293 142 251 85 228 174 165 157 193 157 195 247 211 238 -80 74 88 68 183 632 801 124 539 81 394 159 169 151 273 151 289 431 274 377 -17 15 19 14 57 127 138 21 67 15 63 31 34 31 42 31 47 66 36 53 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 12 9 10 11 11 13 117 85 90 14 42 14 22 14 18 14 24 48 41 -67 73 58 64 67 71 176 640 541 404 159 301 124 205 107 205 108 250 354 332 -130 141 114 126 132 151 519 1032 1014 509 438 589 324 428 324 430 328 592 707 704 -172 180 156 163 182 227 870 1124 1290 359 677 739 468 555 513 557 519 854 911 949 -187 191 174 174 207 418 1122 982 1346 247 803 734 519 564 611 567 620 967 935 1017 -177 176 172 161 213 673 1268 740 1266 211 820 624 486 485 618 487 629 955 835 955 -123 119 123 109 162 730 1105 382 922 133 611 356 308 267 445 268 455 695 530 655 -98 93 99 86 194 702 891 129 604 99 430 170 180 166 294 166 314 471 299 411 -41 39 39 36 150 367 398 43 181 41 150 71 71 70 84 70 103 158 72 120 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -9 10 8 8 9 9 12 89 65 68 13 33 13 18 12 16 12 20 38 32 -51 55 44 48 51 53 132 480 406 303 114 220 87 148 75 148 75 181 259 242 -85 91 75 81 87 97 281 537 528 277 243 319 187 238 187 239 189 320 378 376 -91 94 82 85 95 118 297 370 418 158 263 281 204 229 217 229 218 315 331 342 -103 104 94 94 112 184 388 347 455 133 321 301 237 250 264 251 266 371 361 386 -100 99 93 90 114 212 335 225 333 113 285 244 216 216 242 216 245 314 288 314 -81 80 77 74 97 140 171 113 153 86 189 167 163 160 174 160 175 197 182 193 -60 57 59 53 89 189 229 78 168 61 167 114 116 110 139 110 142 176 139 163 -8 8 8 7 10 12 12 9 10 8 17 16 16 16 17 16 17 17 16 17 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 3 4 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 -10 10 9 9 10 10 10 10 10 10 18 18 18 18 18 18 18 18 18 18 -37 38 33 35 37 39 41 43 43 41 71 72 70 71 70 71 70 72 73 73 -40 40 36 37 41 43 45 45 46 43 77 78 76 77 77 77 77 78 78 79 -43 43 38 38 46 75 166 148 195 54 118 109 82 88 93 88 94 139 135 146 -34 34 31 31 36 37 38 37 38 36 66 65 65 65 65 65 65 66 66 66 -55 53 52 49 62 76 85 67 79 57 118 110 109 108 113 108 113 120 116 119 -78 72 85 66 173 606 773 126 526 79 379 155 163 148 262 148 277 416 266 364 -17 15 19 14 42 83 90 21 49 16 53 33 35 32 41 32 44 55 37 47 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 -16 17 15 15 17 17 17 17 17 18 31 31 31 31 31 31 31 31 31 31 -38 39 34 35 38 40 42 44 44 42 73 74 72 73 72 73 72 74 75 75 -111 115 99 104 116 144 437 556 633 209 358 388 263 303 283 304 286 441 468 485 -68 68 63 63 72 82 95 91 98 78 145 143 137 139 140 139 140 149 148 150 -98 97 92 89 112 208 328 222 327 112 280 240 212 212 238 212 240 308 283 309 -76 75 74 68 97 262 376 163 320 82 254 178 164 152 204 153 207 280 230 268 -54 52 53 48 80 174 211 71 155 55 150 101 103 98 125 98 127 159 125 147 -14 13 15 12 50 117 128 17 62 13 54 26 27 25 34 25 39 57 29 45 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 5 4 4 4 5 6 20 16 16 7 11 7 8 6 8 6 8 12 11 -39 43 34 37 39 41 69 167 145 116 72 103 65 82 62 82 62 91 114 109 -70 75 62 66 71 80 154 255 251 153 162 192 140 160 140 160 141 193 216 216 -88 90 78 81 91 113 284 354 400 152 249 267 193 216 205 217 206 298 315 325 -107 108 98 98 116 172 319 290 368 137 295 281 234 244 253 245 255 332 326 344 -105 104 98 95 119 219 344 235 344 119 297 256 227 227 254 227 256 327 301 327 -66 64 63 59 82 182 253 122 218 70 187 140 131 124 155 124 157 203 172 196 -54 52 53 47 79 171 208 71 153 54 148 100 102 97 123 97 126 157 124 145 -26 24 27 22 106 268 294 30 136 25 108 48 49 47 59 47 73 114 50 86 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 1 1 1 1 1 25 17 18 1 7 1 2 1 2 1 3 8 7 -51 57 44 49 51 54 98 267 230 180 105 158 92 122 87 122 87 138 178 169 -62 66 54 58 63 71 141 236 233 140 140 169 120 139 120 139 120 169 192 191 -119 125 108 113 125 158 411 517 584 218 368 395 284 320 302 320 304 442 466 481 -139 140 128 128 150 219 397 363 457 177 383 366 309 321 332 321 334 428 420 442 -97 96 91 88 109 150 199 155 197 109 230 213 201 201 212 201 213 242 232 242 -85 84 80 77 100 148 184 119 165 89 196 172 168 165 180 165 181 205 189 201 -46 44 44 41 57 77 86 55 72 46 100 88 88 86 94 86 94 102 94 99 -16 17 15 16 18 22 22 16 19 17 39 37 37 37 38 37 38 39 37 38 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -36 38 32 35 36 38 42 50 48 46 71 74 70 72 70 72 70 73 76 75 -38 39 34 35 38 40 43 45 44 43 73 74 72 73 72 73 72 74 75 75 -55 56 50 52 57 61 68 70 72 64 112 113 109 110 109 110 109 114 115 116 -62 62 57 57 66 73 83 80 85 70 130 128 124 125 126 125 126 133 132 134 -61 60 57 55 66 77 86 77 85 66 129 125 122 122 125 122 125 132 130 132 -23 23 21 21 24 25 25 24 25 24 44 44 44 44 44 43 44 44 44 44 -25 25 24 23 29 32 33 28 31 26 51 49 49 48 50 48 50 52 50 51 -4 4 3 3 4 4 4 4 4 4 8 7 7 7 7 7 7 8 7 7 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -2 2 2 2 2 2 2 2 2 2 4 4 4 4 4 4 4 4 4 4 -7 7 6 7 7 7 7 7 7 7 13 13 13 13 13 13 13 13 13 13 -57 61 51 55 58 63 74 86 85 74 119 123 115 119 115 119 116 123 127 127 -61 63 56 58 64 70 81 84 87 74 128 130 124 126 125 126 125 132 133 134 -57 57 52 53 60 66 73 71 74 63 117 116 112 113 114 113 114 119 119 120 -77 76 72 70 86 108 131 110 130 86 174 165 159 159 164 159 165 181 175 181 -62 60 59 55 72 92 107 80 98 65 138 127 124 123 130 123 131 142 134 140 -43 41 41 38 53 70 77 51 65 43 93 83 83 81 88 81 88 95 88 92 -12 12 12 11 16 22 23 13 17 12 25 22 22 22 24 21 24 26 23 24 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7 8 6 6 7 7 9 90 65 69 9 29 9 13 9 11 9 15 34 28 -75 82 66 73 75 79 216 846 710 530 177 369 128 240 116 238 116 299 439 409 -140 149 124 134 143 158 528 1065 1042 530 437 595 321 429 320 431 324 594 714 710 -165 173 149 157 174 218 861 1134 1295 367 648 715 439 529 483 531 489 827 888 925 -181 185 169 169 202 391 1059 948 1282 245 755 697 489 535 574 537 582 912 886 962 -169 167 163 153 201 650 1259 751 1273 202 787 598 454 456 585 458 595 927 811 930 -141 135 145 124 192 833 1285 470 1088 156 712 422 359 316 517 317 529 813 626 770 -91 82 102 76 211 849 1104 169 759 92 508 187 192 177 335 177 358 563 348 490 -46 46 39 42 162 420 464 45 214 47 160 74 73 75 83 74 104 170 72 128 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -50 56 43 48 50 53 97 269 231 181 103 157 90 120 86 120 86 137 177 168 -99 108 87 96 101 115 277 506 496 279 271 339 222 267 222 268 223 339 392 390 -141 149 128 134 149 189 566 729 825 281 478 519 354 408 380 409 384 586 624 646 -109 111 100 101 119 192 406 370 480 145 340 321 253 268 280 268 283 392 384 410 -84 83 78 76 95 180 291 198 292 96 237 202 176 176 199 176 201 263 241 264 -80 78 76 71 98 209 290 146 253 85 226 174 163 156 191 156 193 245 210 237 -65 62 64 57 93 197 240 87 180 66 179 126 127 121 151 121 154 189 152 176 -22 20 22 19 45 86 94 25 54 21 61 42 43 41 49 41 51 63 45 55 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -11 11 10 10 11 12 12 12 12 12 21 21 21 21 21 21 21 21 21 21 -47 49 40 43 48 53 112 197 193 113 98 123 81 97 80 97 81 123 142 142 -55 56 50 51 57 61 69 71 73 64 112 113 108 110 109 110 109 114 115 116 -51 51 47 47 53 58 63 61 64 56 103 102 100 100 100 100 101 104 104 105 -29 29 26 26 30 31 31 31 31 30 55 55 54 54 55 54 55 55 55 55 -33 33 31 30 36 38 40 37 39 34 66 64 64 63 64 63 64 66 65 66 -39 38 38 35 48 62 68 47 58 40 85 76 77 75 81 75 81 87 81 85 -19 20 17 18 26 39 41 20 28 20 36 30 30 29 33 29 34 37 32 35 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 19 16 17 19 19 20 20 20 20 35 35 35 35 35 35 35 35 35 35 -55 58 49 52 55 60 70 80 79 70 112 116 109 112 109 112 109 116 119 119 -38 39 35 36 39 41 43 43 44 42 74 75 73 74 74 74 74 75 76 76 -54 55 50 50 57 62 69 67 70 60 111 110 107 108 108 107 108 113 112 113 -53 52 49 48 57 63 70 64 69 57 109 106 104 104 106 104 106 111 109 111 -20 20 18 18 21 21 22 21 21 21 38 38 38 38 38 38 38 38 38 38 -24 24 23 22 27 30 32 27 30 25 49 47 47 46 48 46 48 50 48 49 -12 11 11 10 15 20 21 13 16 12 24 21 21 21 23 21 23 24 22 23 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 14 12 12 13 14 14 14 14 14 25 25 25 25 25 25 25 25 25 25 -31 32 28 29 31 32 34 35 35 34 59 60 59 59 59 59 59 60 61 61 -70 71 61 64 72 87 242 311 350 127 194 211 144 166 154 166 156 238 254 263 -83 84 75 76 90 146 331 302 395 108 255 240 182 195 205 195 207 300 293 314 -83 83 77 75 95 246 455 285 462 96 295 232 183 184 226 185 230 343 304 345 -87 85 86 78 112 289 420 193 364 95 293 210 192 181 236 181 239 322 269 310 -69 65 73 60 142 577 756 125 527 71 346 132 134 125 229 125 245 385 240 336 -31 29 31 27 151 419 468 35 214 30 149 55 56 55 69 55 91 161 57 116 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -27 28 23 25 27 28 30 33 32 31 51 53 51 52 51 52 51 52 53 53 -54 57 49 52 55 60 70 80 80 70 112 116 109 112 109 112 109 116 120 119 -75 78 68 71 78 89 111 120 126 96 164 167 155 159 157 159 157 172 175 176 -72 73 67 67 78 90 109 105 114 85 159 157 149 151 152 151 152 164 164 166 -37 37 34 34 39 41 43 41 42 39 72 71 71 71 71 71 71 73 72 73 -23 22 21 21 24 24 25 24 24 23 43 43 43 43 43 43 43 43 43 43 -34 33 33 31 41 50 54 40 48 35 73 67 67 66 70 66 70 74 70 73 -17 18 15 16 23 34 37 18 26 18 34 28 29 28 31 28 31 34 30 32 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -61 66 53 58 61 64 163 632 529 400 132 276 98 180 94 176 94 222 327 304 -121 129 107 116 123 136 449 918 894 462 368 506 270 363 268 365 271 503 608 603 -154 162 139 146 162 201 803 1073 1221 356 595 663 400 487 440 489 446 765 826 859 -166 170 154 154 183 356 1039 944 1275 222 709 657 444 493 528 495 536 868 847 921 -163 162 157 148 193 611 1198 731 1223 196 748 573 432 436 555 438 564 882 777 889 -124 119 125 109 165 669 1042 400 892 137 585 356 302 270 427 271 437 668 520 635 -75 69 80 64 154 630 828 140 580 76 383 147 149 140 254 140 271 426 268 373 -41 39 37 36 149 397 444 42 209 41 152 69 69 69 79 69 99 164 69 123 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 -32 33 29 30 32 34 35 37 36 35 61 62 61 61 61 61 61 62 63 63 -45 45 40 42 46 48 52 53 54 50 88 89 86 87 87 87 87 90 90 90 -43 43 39 39 44 47 50 49 50 46 84 83 82 82 82 82 83 85 84 85 -46 46 43 42 49 54 58 54 57 50 93 91 90 90 91 90 91 95 94 95 -43 42 40 39 47 54 58 50 55 45 88 85 84 83 86 83 86 90 87 89 -42 41 40 37 51 67 75 50 64 43 91 81 81 79 86 79 86 93 86 90 -17 18 15 16 23 34 36 18 26 18 34 28 29 28 31 28 31 34 30 32 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -67 74 59 65 67 71 196 810 674 509 149 337 106 213 102 207 102 267 403 374 -133 142 117 127 135 149 506 1049 1019 527 408 568 297 404 294 407 298 564 685 679 -159 167 143 151 167 208 839 1127 1281 376 620 693 416 508 457 509 463 798 864 898 -176 180 163 164 194 374 1097 1003 1350 238 753 699 473 525 561 527 570 922 900 979 -150 149 143 136 177 534 1041 643 1065 180 658 510 387 392 492 393 501 775 685 781 -126 121 126 111 166 720 1135 429 974 139 619 369 308 274 446 274 456 711 550 676 -80 73 87 68 162 627 824 153 582 82 398 166 168 157 271 157 288 441 285 389 -28 25 28 24 128 356 400 31 186 27 130 50 51 49 62 49 81 141 52 104 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -66 73 58 64 66 70 193 804 668 506 146 333 104 210 100 203 100 263 399 369 -132 141 117 127 134 148 502 1046 1015 526 406 566 295 402 292 405 295 560 682 676 -158 167 143 151 166 207 835 1125 1277 377 617 691 414 506 455 507 461 795 861 894 -175 179 162 163 193 371 1092 1002 1346 237 749 697 471 523 559 526 567 918 897 975 -168 167 162 153 200 630 1245 767 1277 204 776 597 447 454 575 455 585 918 809 925 -138 132 140 121 186 799 1261 480 1083 154 693 415 346 308 500 309 511 796 616 757 -89 81 99 75 191 823 1090 182 767 91 498 185 187 175 326 175 350 556 347 487 -47 46 41 43 175 481 540 47 253 48 177 77 76 77 86 77 112 192 75 143 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -68 76 59 66 68 72 166 617 516 397 146 286 116 194 113 189 113 233 334 312 -86 94 76 83 88 100 219 395 385 227 221 274 186 220 185 221 186 273 314 311 -143 152 130 137 151 192 571 750 843 300 483 529 358 415 383 415 387 594 635 656 -141 145 131 132 156 256 567 528 681 196 473 449 348 371 387 372 390 550 541 577 -138 137 129 125 155 302 507 348 517 158 416 356 307 309 348 309 351 464 427 467 -108 106 104 97 132 266 369 196 327 116 305 242 228 220 261 220 263 329 288 320 -73 70 72 64 102 213 261 100 200 74 200 143 143 138 169 138 172 211 172 198 -26 24 27 22 51 99 108 30 64 25 72 50 51 49 58 49 61 74 54 66 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -13 14 12 12 13 14 14 14 14 14 25 25 25 25 25 25 25 25 25 25 -45 48 41 43 46 49 55 61 60 55 91 94 89 91 89 91 89 94 96 95 -29 29 26 27 29 30 31 31 31 31 55 55 54 55 54 54 54 55 55 55 -60 61 55 56 64 71 80 78 83 68 125 124 120 121 122 121 122 129 128 130 -63 62 59 57 69 81 93 82 92 69 135 131 127 127 130 127 130 139 136 139 -57 55 54 51 65 81 93 73 87 60 124 116 114 113 118 113 119 128 122 126 -40 39 39 36 49 63 70 48 60 41 87 78 79 77 83 77 83 89 83 87 -5 5 5 5 6 6 7 6 6 5 11 10 10 10 10 10 10 11 10 11 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 69 55 61 63 66 182 776 642 490 136 318 98 199 95 191 95 249 381 352 -121 129 107 116 123 135 451 948 917 481 365 512 267 364 263 366 266 505 616 610 -158 168 143 152 167 211 739 993 1119 364 580 645 407 486 441 488 446 732 790 818 -194 200 182 182 218 396 1080 1003 1327 275 790 742 524 575 607 577 615 953 935 1010 -180 179 176 164 220 577 1083 698 1111 226 752 605 480 485 584 487 592 871 782 878 -146 139 153 128 204 731 1135 465 983 166 678 436 375 343 508 343 518 769 613 736 -77 71 82 65 148 599 793 147 564 78 378 154 156 145 255 145 271 420 271 371 -22 18 28 17 84 209 235 32 119 20 102 48 51 46 64 46 73 108 56 87 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -37 41 32 35 37 39 72 221 187 149 68 114 59 84 57 82 57 96 130 123 -100 109 88 97 102 115 378 790 763 404 305 427 225 305 222 307 224 421 514 508 -153 161 138 145 161 199 799 1089 1231 373 590 665 396 486 434 487 440 762 828 859 -170 174 157 158 187 350 1049 973 1300 230 720 674 454 505 537 508 545 883 866 940 -150 149 142 136 175 542 1082 675 1115 179 672 520 388 395 498 396 507 796 705 804 -135 130 137 120 181 768 1221 472 1055 151 673 407 338 303 486 304 497 774 602 737 -80 73 86 68 154 603 798 155 570 82 389 165 167 155 266 155 282 431 283 382 -39 36 37 33 143 390 441 42 211 38 154 68 68 67 80 67 101 167 69 127 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -24 26 20 22 24 25 44 123 104 84 40 64 35 48 34 47 34 55 73 69 -47 50 41 43 48 53 110 197 192 116 99 125 82 99 82 99 82 123 144 142 -61 62 53 56 63 76 174 223 247 107 148 161 116 131 122 131 123 177 189 194 -67 68 60 61 72 108 221 208 263 88 177 170 133 142 146 142 148 205 203 215 -52 52 49 48 56 62 69 63 68 57 107 105 103 103 105 103 105 109 108 110 -89 87 87 80 113 329 498 221 435 97 321 222 197 185 251 185 255 359 295 346 -79 75 78 69 109 225 276 109 213 81 216 156 157 151 184 151 187 228 187 214 -21 18 23 17 49 103 115 26 65 19 67 41 43 40 51 40 54 70 47 61 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15 16 14 14 15 16 16 17 16 17 29 29 29 29 29 29 29 29 29 29 -34 35 30 32 34 36 38 40 39 38 65 66 65 65 64 65 65 66 67 67 -45 46 41 42 46 49 53 54 55 51 89 90 87 88 88 88 88 91 91 91 -50 51 46 47 53 57 62 61 63 56 101 101 99 99 99 99 100 103 103 104 -52 52 49 48 56 62 69 63 68 57 107 105 103 103 105 103 105 109 108 110 -34 33 31 31 36 39 41 37 39 35 66 65 64 64 65 64 65 67 66 67 -47 46 46 43 58 80 90 58 76 49 104 92 92 89 97 89 98 107 98 104 -9 8 9 8 11 12 13 10 11 9 18 17 17 16 17 16 18 18 17 18 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -18 19 16 17 18 19 20 21 20 20 35 35 35 35 35 35 35 35 36 35 -31 32 28 29 31 32 34 35 35 34 59 60 59 59 59 59 59 60 61 61 -68 71 62 65 71 79 96 104 107 86 146 149 140 143 141 143 141 152 155 156 -74 74 66 67 79 117 235 223 280 97 197 189 151 160 165 160 166 227 224 237 -72 72 68 66 80 98 119 103 119 82 162 155 149 149 154 149 154 168 164 168 -63 62 60 56 77 172 246 125 218 68 178 135 124 119 147 119 149 195 167 189 -43 42 42 38 67 207 269 68 197 44 146 77 77 73 108 73 113 160 114 145 -26 24 26 22 112 318 361 30 171 25 121 46 47 46 59 46 77 132 49 99 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -48 53 41 46 48 50 114 437 362 285 94 194 75 129 73 125 73 155 227 211 -47 49 42 45 47 50 57 63 63 58 94 97 92 94 92 94 92 97 99 99 -76 78 67 70 79 95 202 258 284 131 190 205 155 171 161 171 162 223 236 242 -54 55 50 51 57 63 69 68 71 61 111 111 108 108 109 108 109 114 114 115 -107 107 100 97 121 216 350 250 358 124 303 264 232 233 258 234 260 335 312 337 -78 76 74 69 96 348 546 224 476 84 308 195 165 151 227 151 232 352 279 337 -62 59 60 54 85 187 233 87 179 63 171 119 119 114 143 114 145 181 146 170 -13 12 13 11 34 79 89 16 47 13 42 23 24 23 29 23 32 45 26 37 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -52 56 45 49 52 54 142 627 515 401 105 254 78 159 75 151 75 196 304 280 -97 104 85 93 98 110 369 794 763 408 294 420 214 296 210 298 213 411 507 500 -83 85 73 77 86 104 318 429 478 173 248 277 179 212 192 212 194 311 336 347 -114 116 104 105 123 197 473 448 577 153 375 358 269 290 301 291 305 442 437 466 -120 119 113 109 138 338 634 418 655 143 444 362 289 293 348 294 353 513 464 518 -80 79 77 72 100 308 472 207 413 87 294 199 175 163 226 163 230 330 269 318 -68 65 70 60 110 341 443 115 326 70 255 140 140 132 192 131 199 278 201 253 -18 16 19 15 42 93 104 22 57 17 56 33 35 32 41 32 44 59 37 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 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -10 10 8 9 10 10 23 89 74 58 17 37 13 24 13 23 13 29 44 41 -70 76 62 67 71 80 180 340 328 195 173 221 143 174 142 175 143 218 255 252 -130 137 117 123 136 168 518 701 781 284 432 480 318 373 339 373 343 536 578 596 -165 169 152 154 181 325 980 926 1225 225 685 647 438 488 514 490 521 839 826 894 -168 168 162 153 200 582 1158 742 1202 207 748 591 447 456 562 457 572 881 787 892 -140 135 143 124 188 742 1179 477 1027 158 674 423 355 324 495 324 506 772 610 739 -96 87 106 80 186 777 1037 202 748 98 504 210 210 192 344 192 363 560 367 497 -70 72 56 65 179 472 533 64 262 73 201 105 103 107 112 106 140 216 101 170 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -38 41 32 35 38 40 88 349 288 228 70 150 56 99 54 95 54 118 177 164 -86 93 75 82 87 97 291 612 586 324 243 338 184 245 180 246 182 330 403 398 -82 85 73 77 86 103 265 351 388 158 230 252 177 202 187 203 188 278 298 306 -108 109 98 100 115 146 212 205 240 134 253 248 225 230 233 230 234 272 270 279 -114 113 104 104 124 179 255 198 259 127 269 247 229 230 243 230 245 288 274 289 -80 79 77 72 98 206 292 154 260 86 228 178 165 159 192 159 194 248 215 241 -32 31 31 29 37 43 46 37 42 33 67 63 63 62 65 62 65 68 65 67 -22 20 24 18 51 108 121 28 69 21 71 43 45 42 54 42 57 74 49 64 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -26 27 23 25 26 27 29 33 32 31 50 52 50 51 49 51 49 51 52 52 -52 55 47 50 53 57 66 76 76 67 107 111 105 107 104 107 104 111 114 114 -32 33 29 30 33 34 35 35 35 35 62 62 61 61 61 61 61 62 62 62 -83 84 76 77 89 106 136 132 147 101 187 185 173 176 177 176 178 196 196 200 -82 82 77 75 91 117 147 124 148 93 189 180 171 171 178 171 178 198 192 198 -56 55 54 51 64 78 89 72 84 60 123 115 113 113 117 113 118 126 121 125 -52 51 50 47 64 90 102 64 86 53 115 101 101 98 107 98 108 118 108 115 -28 30 24 27 38 59 64 30 44 30 55 44 45 44 50 44 50 56 47 52 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/tests/tests_data/pluto_building.gml b/tests/tests_data/pluto_building.gml deleted file mode 100644 index 400eaec..0000000 --- a/tests/tests_data/pluto_building.gml +++ /dev/null @@ -1,420 +0,0 @@ - - - Gowanus 2050 Best Practice Scenario - - - 299606.4441129853 55348.37638737355 0 - 301879.9050504853 57594.05119206105 62.04879541695123 - - - - - - - - - - - - - 301010.4314176728 57301.3749225298 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 - - - - - - - - - 301014.183859079 57308.78849674855 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 - - - - - - - - - 301004.1125700165 57288.87345768605 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 - - - - - - - - - 301024.4275114228 57311.0624225298 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 - - - - - - - - - 301000.3254606415 57281.3758990923 10.786276534199727 300997.2820036103 57275.3758990923 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 - - - - - - - - - 301004.1125700165 57288.87345768605 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 - - - - - - - - - 301017.183859079 57314.7147662798 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 301017.183859079 57314.7147662798 10.786276534199727 - - - - - - - - - 301005.9055387665 57312.9716022173 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 301005.9055387665 57312.9716022173 10.786276534199727 - - - - - - - - - 300995.8337614228 57293.0555865923 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 300995.8337614228 57293.0555865923 10.786276534199727 - - - - - - - - - 301014.183859079 57308.78849674855 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 - - - - - - - - - 301005.9055387665 57312.9716022173 10.786276534199727 301005.9055387665 57312.9716022173 0.0 301002.1530973603 57305.55900456105 10.786276534199727 301005.9055387665 57312.9716022173 10.786276534199727 - - - - - - - - - 301002.1530973603 57305.55900456105 10.786276534199727 301005.9055387665 57312.9716022173 0.0 301002.1530973603 57305.55900456105 0.0 301002.1530973603 57305.55900456105 10.786276534199727 - - - - - - - - - 301017.183859079 57314.7147662798 0.0 301024.4275114228 57311.0624225298 0.0 301014.183859079 57308.78849674855 0.0 301017.183859079 57314.7147662798 0.0 - - - - - - - - - 301005.9055387665 57312.9716022173 0.0 301014.183859079 57308.78849674855 0.0 301002.1530973603 57305.55900456105 0.0 301005.9055387665 57312.9716022173 0.0 - - - - - - - - - 300995.8337614228 57293.0555865923 0.0 301004.1125700165 57288.87345768605 0.0 300992.0398161103 57285.56779362355 0.0 300995.8337614228 57293.0555865923 0.0 - - - - - - - - - 301014.183859079 57308.78849674855 0.0 301010.4314176728 57301.3749225298 0.0 301002.1530973603 57305.55900456105 0.0 301014.183859079 57308.78849674855 0.0 - - - - - - - - - 301010.4314176728 57301.3749225298 0.0 301024.4275114228 57311.0624225298 0.0 301004.1125700165 57288.87345768605 0.0 301010.4314176728 57301.3749225298 0.0 - - - - - - - - - 301014.183859079 57308.78849674855 0.0 301024.4275114228 57311.0624225298 0.0 301010.4314176728 57301.3749225298 0.0 301014.183859079 57308.78849674855 0.0 - - - - - - - - - 301024.4275114228 57311.0624225298 0.0 301004.5266325165 57271.70548893605 0.0 301004.1125700165 57288.87345768605 0.0 301024.4275114228 57311.0624225298 0.0 - - - - - - - - - 301004.1125700165 57288.87345768605 0.0 301000.3254606415 57281.3758990923 0.0 300992.0398161103 57285.56779362355 0.0 301004.1125700165 57288.87345768605 0.0 - - - - - - - - - 301000.3254606415 57281.3758990923 0.0 301004.5266325165 57271.70548893605 0.0 300997.2820036103 57275.3758990923 0.0 301000.3254606415 57281.3758990923 0.0 - - - - - - - - - 301004.1125700165 57288.87345768605 0.0 301004.5266325165 57271.70548893605 0.0 301000.3254606415 57281.3758990923 0.0 301004.1125700165 57288.87345768605 0.0 - - - - - - - - - 301014.183859079 57308.78849674855 10.786276534199727 301014.183859079 57308.78849674855 0.0 301005.9055387665 57312.9716022173 10.786276534199727 301014.183859079 57308.78849674855 10.786276534199727 - - - - - - - - - 301005.9055387665 57312.9716022173 10.786276534199727 301014.183859079 57308.78849674855 0.0 301005.9055387665 57312.9716022173 0.0 301005.9055387665 57312.9716022173 10.786276534199727 - - - - - - - - - 301017.183859079 57314.7147662798 10.786276534199727 301017.183859079 57314.7147662798 0.0 301014.183859079 57308.78849674855 10.786276534199727 301017.183859079 57314.7147662798 10.786276534199727 - - - - - - - - - 301014.183859079 57308.78849674855 10.786276534199727 301017.183859079 57314.7147662798 0.0 301014.183859079 57308.78849674855 0.0 301014.183859079 57308.78849674855 10.786276534199727 - - - - - - - - - 301002.1530973603 57305.55900456105 10.786276534199727 301002.1530973603 57305.55900456105 0.0 301010.4314176728 57301.3749225298 10.786276534199727 301002.1530973603 57305.55900456105 10.786276534199727 - - - - - - - - - 301010.4314176728 57301.3749225298 10.786276534199727 301002.1530973603 57305.55900456105 0.0 301010.4314176728 57301.3749225298 0.0 301010.4314176728 57301.3749225298 10.786276534199727 - - - - - - - - - 301024.4275114228 57311.0624225298 10.786276534199727 301024.4275114228 57311.0624225298 0.0 301017.183859079 57314.7147662798 10.786276534199727 301024.4275114228 57311.0624225298 10.786276534199727 - - - - - - - - - 301017.183859079 57314.7147662798 10.786276534199727 301024.4275114228 57311.0624225298 0.0 301017.183859079 57314.7147662798 0.0 301017.183859079 57314.7147662798 10.786276534199727 - - - - - - - - - 301004.5266325165 57271.70548893605 10.786276534199727 301004.5266325165 57271.70548893605 0.0 301024.4275114228 57311.0624225298 10.786276534199727 301004.5266325165 57271.70548893605 10.786276534199727 - - - - - - - - - 301024.4275114228 57311.0624225298 10.786276534199727 301004.5266325165 57271.70548893605 0.0 301024.4275114228 57311.0624225298 0.0 301024.4275114228 57311.0624225298 10.786276534199727 - - - - - - - - - 300997.2820036103 57275.3758990923 10.786276534199727 300997.2820036103 57275.3758990923 0.0 301004.5266325165 57271.70548893605 10.786276534199727 300997.2820036103 57275.3758990923 10.786276534199727 - - - - - - - - - 301004.5266325165 57271.70548893605 10.786276534199727 300997.2820036103 57275.3758990923 0.0 301004.5266325165 57271.70548893605 0.0 301004.5266325165 57271.70548893605 10.786276534199727 - - - - - - - - - 301010.4314176728 57301.3749225298 10.786276534199727 301010.4314176728 57301.3749225298 0.0 301004.1125700165 57288.87345768605 10.786276534199727 301010.4314176728 57301.3749225298 10.786276534199727 - - - - - - - - - 301004.1125700165 57288.87345768605 10.786276534199727 301010.4314176728 57301.3749225298 0.0 301004.1125700165 57288.87345768605 0.0 301004.1125700165 57288.87345768605 10.786276534199727 - - - - - - - - - 301004.1125700165 57288.87345768605 10.786276534199727 301004.1125700165 57288.87345768605 0.0 300995.8337614228 57293.0555865923 10.786276534199727 301004.1125700165 57288.87345768605 10.786276534199727 - - - - - - - - - 300995.8337614228 57293.0555865923 10.786276534199727 301004.1125700165 57288.87345768605 0.0 300995.8337614228 57293.0555865923 0.0 300995.8337614228 57293.0555865923 10.786276534199727 - - - - - - - - - 301000.3254606415 57281.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 0.0 300997.2820036103 57275.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 10.786276534199727 - - - - - - - - - 300997.2820036103 57275.3758990923 10.786276534199727 301000.3254606415 57281.3758990923 0.0 300997.2820036103 57275.3758990923 0.0 300997.2820036103 57275.3758990923 10.786276534199727 - - - - - - - - - 300995.8337614228 57293.0555865923 10.786276534199727 300995.8337614228 57293.0555865923 0.0 300992.0398161103 57285.56779362355 10.786276534199727 300995.8337614228 57293.0555865923 10.786276534199727 - - - - - - - - - 300992.0398161103 57285.56779362355 10.786276534199727 300995.8337614228 57293.0555865923 0.0 300992.0398161103 57285.56779362355 0.0 300992.0398161103 57285.56779362355 10.786276534199727 - - - - - - - - - 300992.0398161103 57285.56779362355 10.786276534199727 300992.0398161103 57285.56779362355 0.0 301000.3254606415 57281.3758990923 10.786276534199727 300992.0398161103 57285.56779362355 10.786276534199727 - - - - - - - - - 301000.3254606415 57281.3758990923 10.786276534199727 300992.0398161103 57285.56779362355 0.0 301000.3254606415 57281.3758990923 0.0 301000.3254606415 57281.3758990923 10.786276534199727 - - - - - - - - - 1965 - W4 - - - \ No newline at end of file diff --git a/tests/tests_data/w2w_user_output.csv b/tests/tests_data/w2w_user_output.csv deleted file mode 100644 index bb3612f..0000000 --- a/tests/tests_data/w2w_user_output.csv +++ /dev/null @@ -1,14 +0,0 @@ -,Monthly HP Electricity Demand (kWh),Monthly Fuel Consumption of Auxiliary Heater (m3) -Jan,1031544.62,24276356.0 -Feb,874352.562,19785768.0 -Mar,691775.25,117312.656 -Apr,280416.469,-0.0 -May,0.0,40314676.0 -Jun,0.0,5447721.0 -Jul,0.0,1187115.88 -Aug,0.0,1961530.88 -Sept,0.0,20623850.0 -Oct,191220.531,-0.0 -Nov,423974.062,-0.0 -Dec,848334.875,6793204.5 -Total,4341618.369,120507534.91600001 diff --git a/tests/tests_outputs/.gitignore b/tests/tests_outputs/.gitignore deleted file mode 100644 index e0a497a..0000000 --- a/tests/tests_outputs/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Except this file -* -!.gitignore \ No newline at end of file diff --git a/tests/tests_outputs/Montreal.cli b/tests/tests_outputs/Montreal.cli new file mode 100644 index 0000000..cde63ef --- /dev/null +++ b/tests/tests_outputs/Montreal.cli @@ -0,0 +1,8764 @@ +Concordia current status 12494 12494 +45.47,-73.75,0.0,-5.0 + +dm m h G_Dh G_Bn +1 1 1 0 0 +1 1 2 0 0 +1 1 3 0 0 +1 1 4 0 0 +1 1 5 0 0 +1 1 6 0 0 +1 1 7 0 0 +1 1 8 0 0 +1 1 9 78 357 +1 1 10 204 628 +1 1 11 291 688 +1 1 12 338 714 +1 1 13 214 267 +1 1 14 181 258 +1 1 15 116 234 +1 1 16 39 115 +1 1 17 0 0 +1 1 18 0 0 +1 1 19 0 0 +1 1 20 0 0 +1 1 21 0 0 +1 1 22 0 0 +1 1 23 0 0 +1 1 24 0 0 +2 1 1 0 0 +2 1 2 0 0 +2 1 3 0 0 +2 1 4 0 0 +2 1 5 0 0 +2 1 6 0 0 +2 1 7 0 0 +2 1 8 0 0 +2 1 9 67 63 +2 1 10 188 406 +2 1 11 239 444 +2 1 12 235 275 +2 1 13 256 366 +2 1 14 169 0 +2 1 15 94 0 +2 1 16 28 0 +2 1 17 0 0 +2 1 18 0 0 +2 1 19 0 0 +2 1 20 0 0 +2 1 21 0 0 +2 1 22 0 0 +2 1 23 0 0 +2 1 24 0 0 +3 1 1 0 0 +3 1 2 0 0 +3 1 3 0 0 +3 1 4 0 0 +3 1 5 0 0 +3 1 6 0 0 +3 1 7 0 0 +3 1 8 0 0 +3 1 9 29 0 +3 1 10 44 0 +3 1 11 114 0 +3 1 12 159 0 +3 1 13 168 89 +3 1 14 129 86 +3 1 15 117 157 +3 1 16 16 0 +3 1 17 0 0 +3 1 18 0 0 +3 1 19 0 0 +3 1 20 0 0 +3 1 21 0 0 +3 1 22 0 0 +3 1 23 0 0 +3 1 24 0 0 +4 1 1 0 0 +4 1 2 0 0 +4 1 3 0 0 +4 1 4 0 0 +4 1 5 0 0 +4 1 6 0 0 +4 1 7 0 0 +4 1 8 0 0 +4 1 9 106 504 +4 1 10 242 732 +4 1 11 345 801 +4 1 12 414 824 +4 1 13 413 826 +4 1 14 349 711 +4 1 15 145 162 +4 1 16 58 123 +4 1 17 0 0 +4 1 18 0 0 +4 1 19 0 0 +4 1 20 0 0 +4 1 21 0 0 +4 1 22 0 0 +4 1 23 0 0 +4 1 24 0 0 +5 1 1 0 0 +5 1 2 0 0 +5 1 3 0 0 +5 1 4 0 0 +5 1 5 0 0 +5 1 6 0 0 +5 1 7 0 0 +5 1 8 0 0 +5 1 9 54 60 +5 1 10 127 79 +5 1 11 139 86 +5 1 12 189 89 +5 1 13 221 89 +5 1 14 194 174 +5 1 15 109 0 +5 1 16 39 0 +5 1 17 0 0 +5 1 18 0 0 +5 1 19 0 0 +5 1 20 0 0 +5 1 21 0 0 +5 1 22 0 0 +5 1 23 0 0 +5 1 24 0 0 +6 1 1 0 0 +6 1 2 0 0 +6 1 3 0 0 +6 1 4 0 0 +6 1 5 0 0 +6 1 6 0 0 +6 1 7 0 0 +6 1 8 0 0 +6 1 9 102 437 +6 1 10 224 406 +6 1 11 328 442 +6 1 12 280 91 +6 1 13 173 0 +6 1 14 113 0 +6 1 15 61 0 +6 1 16 24 0 +6 1 17 0 0 +6 1 18 0 0 +6 1 19 0 0 +6 1 20 0 0 +6 1 21 0 0 +6 1 22 0 0 +6 1 23 0 0 +6 1 24 0 0 +7 1 1 0 0 +7 1 2 0 0 +7 1 3 0 0 +7 1 4 0 0 +7 1 5 0 0 +7 1 6 0 0 +7 1 7 0 0 +7 1 8 0 0 +7 1 9 101 384 +7 1 10 195 247 +7 1 11 187 180 +7 1 12 234 93 +7 1 13 252 93 +7 1 14 218 90 +7 1 15 240 578 +7 1 16 103 523 +7 1 17 0 0 +7 1 18 0 0 +7 1 19 0 0 +7 1 20 0 0 +7 1 21 0 0 +7 1 22 0 0 +7 1 23 0 0 +7 1 24 0 0 +8 1 1 0 0 +8 1 2 0 0 +8 1 3 0 0 +8 1 4 0 0 +8 1 5 0 0 +8 1 6 0 0 +8 1 7 0 0 +8 1 8 0 0 +8 1 9 46 194 +8 1 10 128 249 +8 1 11 238 362 +8 1 12 365 468 +8 1 13 358 281 +8 1 14 278 273 +8 1 15 224 418 +8 1 16 117 463 +8 1 17 0 0 +8 1 18 0 0 +8 1 19 0 0 +8 1 20 0 0 +8 1 21 0 0 +8 1 22 0 0 +8 1 23 0 0 +8 1 24 0 0 +9 1 1 0 0 +9 1 2 0 0 +9 1 3 0 0 +9 1 4 0 0 +9 1 5 0 0 +9 1 6 0 0 +9 1 7 0 0 +9 1 8 0 0 +9 1 9 111 598 +9 1 10 250 758 +9 1 11 355 823 +9 1 12 413 854 +9 1 13 429 948 +9 1 14 372 915 +9 1 15 267 754 +9 1 16 123 531 +9 1 17 0 0 +9 1 18 0 0 +9 1 19 0 0 +9 1 20 0 0 +9 1 21 0 0 +9 1 22 0 0 +9 1 23 0 0 +9 1 24 0 0 +10 1 1 0 0 +10 1 2 0 0 +10 1 3 0 0 +10 1 4 0 0 +10 1 5 0 0 +10 1 6 0 0 +10 1 7 0 0 +10 1 8 0 0 +10 1 9 49 0 +10 1 10 116 0 +10 1 11 173 0 +10 1 12 203 0 +10 1 13 204 0 +10 1 14 175 0 +10 1 15 119 0 +10 1 16 53 0 +10 1 17 0 0 +10 1 18 0 0 +10 1 19 0 0 +10 1 20 0 0 +10 1 21 0 0 +10 1 22 0 0 +10 1 23 0 0 +10 1 24 0 0 +11 1 1 0 0 +11 1 2 0 0 +11 1 3 0 0 +11 1 4 0 0 +11 1 5 0 0 +11 1 6 0 0 +11 1 7 0 0 +11 1 8 0 0 +11 1 9 74 64 +11 1 10 124 84 +11 1 11 140 0 +11 1 12 189 0 +11 1 13 252 188 +11 1 14 117 0 +11 1 15 253 593 +11 1 16 118 545 +11 1 17 0 0 +11 1 18 0 0 +11 1 19 0 0 +11 1 20 0 0 +11 1 21 0 0 +11 1 22 0 0 +11 1 23 0 0 +11 1 24 0 0 +12 1 1 0 0 +12 1 2 0 0 +12 1 3 0 0 +12 1 4 0 0 +12 1 5 0 0 +12 1 6 0 0 +12 1 7 0 0 +12 1 8 0 0 +12 1 9 112 607 +12 1 10 250 767 +12 1 11 354 833 +12 1 12 409 858 +12 1 13 412 859 +12 1 14 359 831 +12 1 15 259 770 +12 1 16 123 621 +12 1 17 0 0 +12 1 18 0 0 +12 1 19 0 0 +12 1 20 0 0 +12 1 21 0 0 +12 1 22 0 0 +12 1 23 0 0 +12 1 24 0 0 +13 1 1 0 0 +13 1 2 0 0 +13 1 3 0 0 +13 1 4 0 0 +13 1 5 0 0 +13 1 6 0 0 +13 1 7 0 0 +13 1 8 0 0 +13 1 9 116 398 +13 1 10 229 336 +13 1 11 365 273 +13 1 12 437 377 +13 1 13 441 283 +13 1 14 307 0 +13 1 15 166 0 +13 1 16 80 0 +13 1 17 0 0 +13 1 18 0 0 +13 1 19 0 0 +13 1 20 0 0 +13 1 21 0 0 +13 1 22 0 0 +13 1 23 0 0 +13 1 24 0 0 +14 1 1 0 0 +14 1 2 0 0 +14 1 3 0 0 +14 1 4 0 0 +14 1 5 0 0 +14 1 6 0 0 +14 1 7 0 0 +14 1 8 0 0 +14 1 9 52 0 +14 1 10 234 586 +14 1 11 371 909 +14 1 12 421 845 +14 1 13 429 842 +14 1 14 390 731 +14 1 15 276 673 +14 1 16 131 613 +14 1 17 0 0 +14 1 18 0 0 +14 1 19 0 0 +14 1 20 0 0 +14 1 21 0 0 +14 1 22 0 0 +14 1 23 0 0 +14 1 24 0 0 +15 1 1 0 0 +15 1 2 0 0 +15 1 3 0 0 +15 1 4 0 0 +15 1 5 0 0 +15 1 6 0 0 +15 1 7 0 0 +15 1 8 0 0 +15 1 9 116 603 +15 1 10 257 762 +15 1 11 364 829 +15 1 12 421 853 +15 1 13 426 955 +15 1 14 387 926 +15 1 15 284 866 +15 1 16 140 705 +15 1 17 2 29 +15 1 18 0 0 +15 1 19 0 0 +15 1 20 0 0 +15 1 21 0 0 +15 1 22 0 0 +15 1 23 0 0 +15 1 24 0 0 +16 1 1 0 0 +16 1 2 0 0 +16 1 3 0 0 +16 1 4 0 0 +16 1 5 0 0 +16 1 6 0 0 +16 1 7 0 0 +16 1 8 0 0 +16 1 9 55 0 +16 1 10 126 0 +16 1 11 202 92 +16 1 12 242 190 +16 1 13 303 380 +16 1 14 229 278 +16 1 15 263 686 +16 1 16 137 632 +16 1 17 12 72 +16 1 18 0 0 +16 1 19 0 0 +16 1 20 0 0 +16 1 21 0 0 +16 1 22 0 0 +16 1 23 0 0 +16 1 24 0 0 +17 1 1 0 0 +17 1 2 0 0 +17 1 3 0 0 +17 1 4 0 0 +17 1 5 0 0 +17 1 6 0 0 +17 1 7 0 0 +17 1 8 0 0 +17 1 9 58 66 +17 1 10 215 250 +17 1 11 184 91 +17 1 12 246 93 +17 1 13 248 93 +17 1 14 217 91 +17 1 15 174 168 +17 1 16 95 207 +17 1 17 9 21 +17 1 18 0 0 +17 1 19 0 0 +17 1 20 0 0 +17 1 21 0 0 +17 1 22 0 0 +17 1 23 0 0 +17 1 24 0 0 +18 1 1 0 0 +18 1 2 0 0 +18 1 3 0 0 +18 1 4 0 0 +18 1 5 0 0 +18 1 6 0 0 +18 1 7 0 0 +18 1 8 0 0 +18 1 9 80 197 +18 1 10 164 166 +18 1 11 211 90 +18 1 12 212 93 +18 1 13 258 186 +18 1 14 197 91 +18 1 15 134 84 +18 1 16 76 139 +18 1 17 10 26 +18 1 18 0 0 +18 1 19 0 0 +18 1 20 0 0 +18 1 21 0 0 +18 1 22 0 0 +18 1 23 0 0 +18 1 24 0 0 +19 1 1 0 0 +19 1 2 0 0 +19 1 3 0 0 +19 1 4 0 0 +19 1 5 0 0 +19 1 6 0 0 +19 1 7 0 0 +19 1 8 0 0 +19 1 9 42 0 +19 1 10 84 0 +19 1 11 123 0 +19 1 12 148 0 +19 1 13 200 0 +19 1 14 109 0 +19 1 15 125 0 +19 1 16 60 0 +19 1 17 6 0 +19 1 18 0 0 +19 1 19 0 0 +19 1 20 0 0 +19 1 21 0 0 +19 1 22 0 0 +19 1 23 0 0 +19 1 24 0 0 +20 1 1 0 0 +20 1 2 0 0 +20 1 3 0 0 +20 1 4 0 0 +20 1 5 0 0 +20 1 6 0 0 +20 1 7 0 0 +20 1 8 0 0 +20 1 9 33 0 +20 1 10 82 0 +20 1 11 109 0 +20 1 12 124 0 +20 1 13 85 0 +20 1 14 113 0 +20 1 15 73 0 +20 1 16 51 67 +20 1 17 6 0 +20 1 18 0 0 +20 1 19 0 0 +20 1 20 0 0 +20 1 21 0 0 +20 1 22 0 0 +20 1 23 0 0 +20 1 24 0 0 +21 1 1 0 0 +21 1 2 0 0 +21 1 3 0 0 +21 1 4 0 0 +21 1 5 0 0 +21 1 6 0 0 +21 1 7 0 0 +21 1 8 0 0 +21 1 9 110 392 +21 1 10 268 737 +21 1 11 376 803 +21 1 12 435 828 +21 1 13 432 739 +21 1 14 353 449 +21 1 15 229 334 +21 1 16 116 278 +21 1 17 14 34 +21 1 18 0 0 +21 1 19 0 0 +21 1 20 0 0 +21 1 21 0 0 +21 1 22 0 0 +21 1 23 0 0 +21 1 24 0 0 +22 1 1 0 0 +22 1 2 0 0 +22 1 3 0 0 +22 1 4 0 0 +22 1 5 0 0 +22 1 6 0 0 +22 1 7 0 0 +22 1 8 0 0 +22 1 9 30 0 +22 1 10 72 0 +22 1 11 51 0 +22 1 12 132 0 +22 1 13 102 0 +22 1 14 70 0 +22 1 15 143 0 +22 1 16 71 0 +22 1 17 9 0 +22 1 18 0 0 +22 1 19 0 0 +22 1 20 0 0 +22 1 21 0 0 +22 1 22 0 0 +22 1 23 0 0 +22 1 24 0 0 +23 1 1 0 0 +23 1 2 0 0 +23 1 3 0 0 +23 1 4 0 0 +23 1 5 0 0 +23 1 6 0 0 +23 1 7 0 0 +23 1 8 0 0 +23 1 9 83 0 +23 1 10 149 0 +23 1 11 144 0 +23 1 12 119 0 +23 1 13 121 0 +23 1 14 109 0 +23 1 15 83 0 +23 1 16 48 0 +23 1 17 6 0 +23 1 18 0 0 +23 1 19 0 0 +23 1 20 0 0 +23 1 21 0 0 +23 1 22 0 0 +23 1 23 0 0 +23 1 24 0 0 +24 1 1 0 0 +24 1 2 0 0 +24 1 3 0 0 +24 1 4 0 0 +24 1 5 0 0 +24 1 6 0 0 +24 1 7 0 0 +24 1 8 0 0 +24 1 9 40 0 +24 1 10 89 0 +24 1 11 105 0 +24 1 12 117 0 +24 1 13 94 0 +24 1 14 80 0 +24 1 15 34 0 +24 1 16 26 0 +24 1 17 8 0 +24 1 18 0 0 +24 1 19 0 0 +24 1 20 0 0 +24 1 21 0 0 +24 1 22 0 0 +24 1 23 0 0 +24 1 24 0 0 +25 1 1 0 0 +25 1 2 0 0 +25 1 3 0 0 +25 1 4 0 0 +25 1 5 0 0 +25 1 6 0 0 +25 1 7 0 0 +25 1 8 2 26 +25 1 9 152 645 +25 1 10 308 782 +25 1 11 428 843 +25 1 12 474 865 +25 1 13 480 866 +25 1 14 430 849 +25 1 15 326 881 +25 1 16 182 755 +25 1 17 29 238 +25 1 18 0 0 +25 1 19 0 0 +25 1 20 0 0 +25 1 21 0 0 +25 1 22 0 0 +25 1 23 0 0 +25 1 24 0 0 +26 1 1 0 0 +26 1 2 0 0 +26 1 3 0 0 +26 1 4 0 0 +26 1 5 0 0 +26 1 6 0 0 +26 1 7 0 0 +26 1 8 3 30 +26 1 9 147 657 +26 1 10 290 879 +26 1 11 433 847 +26 1 12 466 872 +26 1 13 488 968 +26 1 14 438 947 +26 1 15 334 894 +26 1 16 178 691 +26 1 17 31 246 +26 1 18 0 0 +26 1 19 0 0 +26 1 20 0 0 +26 1 21 0 0 +26 1 22 0 0 +26 1 23 0 0 +26 1 24 0 0 +27 1 1 0 0 +27 1 2 0 0 +27 1 3 0 0 +27 1 4 0 0 +27 1 5 0 0 +27 1 6 0 0 +27 1 7 0 0 +27 1 8 14 55 +27 1 9 153 437 +27 1 10 316 705 +27 1 11 423 944 +27 1 12 489 976 +27 1 13 486 878 +27 1 14 456 381 +27 1 15 297 179 +27 1 16 112 0 +27 1 17 13 0 +27 1 18 0 0 +27 1 19 0 0 +27 1 20 0 0 +27 1 21 0 0 +27 1 22 0 0 +27 1 23 0 0 +27 1 24 0 0 +28 1 1 0 0 +28 1 2 0 0 +28 1 3 0 0 +28 1 4 0 0 +28 1 5 0 0 +28 1 6 0 0 +28 1 7 0 0 +28 1 8 14 68 +28 1 9 173 588 +28 1 10 362 442 +28 1 11 515 378 +28 1 12 597 390 +28 1 13 555 390 +28 1 14 490 478 +28 1 15 361 181 +28 1 16 156 78 +28 1 17 21 0 +28 1 18 0 0 +28 1 19 0 0 +28 1 20 0 0 +28 1 21 0 0 +28 1 22 0 0 +28 1 23 0 0 +28 1 24 0 0 +29 1 1 0 0 +29 1 2 0 0 +29 1 3 0 0 +29 1 4 0 0 +29 1 5 0 0 +29 1 6 0 0 +29 1 7 0 0 +29 1 8 12 43 +29 1 9 105 223 +29 1 10 196 178 +29 1 11 273 191 +29 1 12 346 294 +29 1 13 404 489 +29 1 14 421 766 +29 1 15 329 724 +29 1 16 203 784 +29 1 17 42 382 +29 1 18 0 0 +29 1 19 0 0 +29 1 20 0 0 +29 1 21 0 0 +29 1 22 0 0 +29 1 23 0 0 +29 1 24 0 0 +30 1 1 0 0 +30 1 2 0 0 +30 1 3 0 0 +30 1 4 0 0 +30 1 5 0 0 +30 1 6 0 0 +30 1 7 0 0 +30 1 8 2 0 +30 1 9 47 0 +30 1 10 51 0 +30 1 11 66 0 +30 1 12 130 0 +30 1 13 127 0 +30 1 14 103 0 +30 1 15 121 0 +30 1 16 57 0 +30 1 17 9 0 +30 1 18 0 0 +30 1 19 0 0 +30 1 20 0 0 +30 1 21 0 0 +30 1 22 0 0 +30 1 23 0 0 +30 1 24 0 0 +31 1 1 0 0 +31 1 2 0 0 +31 1 3 0 0 +31 1 4 0 0 +31 1 5 0 0 +31 1 6 0 0 +31 1 7 0 0 +31 1 8 4 0 +31 1 9 48 0 +31 1 10 156 0 +31 1 11 317 188 +31 1 12 231 96 +31 1 13 243 97 +31 1 14 218 95 +31 1 15 161 90 +31 1 16 74 0 +31 1 17 19 47 +31 1 18 0 0 +31 1 19 0 0 +31 1 20 0 0 +31 1 21 0 0 +31 1 22 0 0 +31 1 23 0 0 +31 1 24 0 0 +1 2 1 0 0 +1 2 2 0 0 +1 2 3 0 0 +1 2 4 0 0 +1 2 5 0 0 +1 2 6 0 0 +1 2 7 0 0 +1 2 8 15 68 +1 2 9 98 141 +1 2 10 176 85 +1 2 11 247 0 +1 2 12 446 469 +1 2 13 564 659 +1 2 14 412 829 +1 2 15 350 521 +1 2 16 209 377 +1 2 17 49 313 +1 2 18 0 0 +1 2 19 0 0 +1 2 20 0 0 +1 2 21 0 0 +1 2 22 0 0 +1 2 23 0 0 +1 2 24 0 0 +2 2 1 0 0 +2 2 2 0 0 +2 2 3 0 0 +2 2 4 0 0 +2 2 5 0 0 +2 2 6 0 0 +2 2 7 0 0 +2 2 8 13 26 +2 2 9 91 215 +2 2 10 226 256 +2 2 11 169 0 +2 2 12 149 189 +2 2 13 176 0 +2 2 14 135 0 +2 2 15 103 0 +2 2 16 48 0 +2 2 17 13 0 +2 2 18 0 0 +2 2 19 0 0 +2 2 20 0 0 +2 2 21 0 0 +2 2 22 0 0 +2 2 23 0 0 +2 2 24 0 0 +3 2 1 0 0 +3 2 2 0 0 +3 2 3 0 0 +3 2 4 0 0 +3 2 5 0 0 +3 2 6 0 0 +3 2 7 0 0 +3 2 8 10 0 +3 2 9 77 0 +3 2 10 158 0 +3 2 11 111 0 +3 2 12 174 0 +3 2 13 174 0 +3 2 14 124 0 +3 2 15 99 0 +3 2 16 63 0 +3 2 17 17 0 +3 2 18 0 0 +3 2 19 0 0 +3 2 20 0 0 +3 2 21 0 0 +3 2 22 0 0 +3 2 23 0 0 +3 2 24 0 0 +4 2 1 0 0 +4 2 2 0 0 +4 2 3 0 0 +4 2 4 0 0 +4 2 5 0 0 +4 2 6 0 0 +4 2 7 0 0 +4 2 8 17 0 +4 2 9 131 156 +4 2 10 271 276 +4 2 11 431 683 +4 2 12 518 901 +4 2 13 526 902 +4 2 14 476 884 +4 2 15 374 843 +4 2 16 238 833 +4 2 17 66 556 +4 2 18 0 0 +4 2 19 0 0 +4 2 20 0 0 +4 2 21 0 0 +4 2 22 0 0 +4 2 23 0 0 +4 2 24 0 0 +5 2 1 0 0 +5 2 2 0 0 +5 2 3 0 0 +5 2 4 0 0 +5 2 5 0 0 +5 2 6 0 0 +5 2 7 0 0 +5 2 8 13 0 +5 2 9 91 0 +5 2 10 169 89 +5 2 11 375 287 +5 2 12 553 294 +5 2 13 436 0 +5 2 14 485 0 +5 2 15 274 0 +5 2 16 257 485 +5 2 17 74 312 +5 2 18 0 0 +5 2 19 0 0 +5 2 20 0 0 +5 2 21 0 0 +5 2 22 0 0 +5 2 23 0 0 +5 2 24 0 0 +6 2 1 0 0 +6 2 2 0 0 +6 2 3 0 0 +6 2 4 0 0 +6 2 5 0 0 +6 2 6 0 0 +6 2 7 0 0 +6 2 8 13 0 +6 2 9 83 0 +6 2 10 165 88 +6 2 11 227 0 +6 2 12 263 0 +6 2 13 400 287 +6 2 14 194 93 +6 2 15 264 266 +6 2 16 144 156 +6 2 17 63 204 +6 2 18 0 0 +6 2 19 0 0 +6 2 20 0 0 +6 2 21 0 0 +6 2 22 0 0 +6 2 23 0 0 +6 2 24 0 0 +7 2 1 0 0 +7 2 2 0 0 +7 2 3 0 0 +7 2 4 0 0 +7 2 5 0 0 +7 2 6 0 0 +7 2 7 0 0 +7 2 8 8 55 +7 2 9 95 226 +7 2 10 168 175 +7 2 11 229 0 +7 2 12 264 0 +7 2 13 268 0 +7 2 14 403 467 +7 2 15 412 799 +7 2 16 254 628 +7 2 17 80 365 +7 2 18 0 0 +7 2 19 0 0 +7 2 20 0 0 +7 2 21 0 0 +7 2 22 0 0 +7 2 23 0 0 +7 2 24 0 0 +8 2 1 0 0 +8 2 2 0 0 +8 2 3 0 0 +8 2 4 0 0 +8 2 5 0 0 +8 2 6 0 0 +8 2 7 0 0 +8 2 8 29 212 +8 2 9 194 608 +8 2 10 366 791 +8 2 11 477 932 +8 2 12 535 956 +8 2 13 544 960 +8 2 14 495 943 +8 2 15 392 896 +8 2 16 246 793 +8 2 17 78 533 +8 2 18 0 0 +8 2 19 0 0 +8 2 20 0 0 +8 2 21 0 0 +8 2 22 0 0 +8 2 23 0 0 +8 2 24 0 0 +9 2 1 0 0 +9 2 2 0 0 +9 2 3 0 0 +9 2 4 0 0 +9 2 5 0 0 +9 2 6 0 0 +9 2 7 0 0 +9 2 8 34 268 +9 2 9 193 688 +9 2 10 258 710 +9 2 11 234 471 +9 2 12 421 677 +9 2 13 495 775 +9 2 14 193 0 +9 2 15 278 271 +9 2 16 129 161 +9 2 17 49 111 +9 2 18 0 0 +9 2 19 0 0 +9 2 20 0 0 +9 2 21 0 0 +9 2 22 0 0 +9 2 23 0 0 +9 2 24 0 0 +10 2 1 0 0 +10 2 2 0 0 +10 2 3 0 0 +10 2 4 0 0 +10 2 5 0 0 +10 2 6 0 0 +10 2 7 0 0 +10 2 8 18 0 +10 2 9 92 0 +10 2 10 207 0 +10 2 11 125 0 +10 2 12 305 0 +10 2 13 144 0 +10 2 14 252 0 +10 2 15 196 0 +10 2 16 59 0 +10 2 17 18 0 +10 2 18 0 0 +10 2 19 0 0 +10 2 20 0 0 +10 2 21 0 0 +10 2 22 0 0 +10 2 23 0 0 +10 2 24 0 0 +11 2 1 0 0 +11 2 2 0 0 +11 2 3 0 0 +11 2 4 0 0 +11 2 5 0 0 +11 2 6 0 0 +11 2 7 0 0 +11 2 8 6 0 +11 2 9 51 0 +11 2 10 149 0 +11 2 11 225 0 +11 2 12 247 0 +11 2 13 206 0 +11 2 14 255 0 +11 2 15 119 0 +11 2 16 68 0 +11 2 17 21 0 +11 2 18 0 0 +11 2 19 0 0 +11 2 20 0 0 +11 2 21 0 0 +11 2 22 0 0 +11 2 23 0 0 +11 2 24 0 0 +12 2 1 0 0 +12 2 2 0 0 +12 2 3 0 0 +12 2 4 0 0 +12 2 5 0 0 +12 2 6 0 0 +12 2 7 0 0 +12 2 8 14 0 +12 2 9 63 0 +12 2 10 156 91 +12 2 11 557 579 +12 2 12 619 593 +12 2 13 591 793 +12 2 14 550 878 +12 2 15 434 936 +12 2 16 276 847 +12 2 17 101 624 +12 2 18 0 0 +12 2 19 0 0 +12 2 20 0 0 +12 2 21 0 0 +12 2 22 0 0 +12 2 23 0 0 +12 2 24 0 0 +13 2 1 0 0 +13 2 2 0 0 +13 2 3 0 0 +13 2 4 0 0 +13 2 5 0 0 +13 2 6 0 0 +13 2 7 0 0 +13 2 8 43 318 +13 2 9 141 248 +13 2 10 352 750 +13 2 11 510 889 +13 2 12 568 908 +13 2 13 576 910 +13 2 14 527 896 +13 2 15 424 859 +13 2 16 276 780 +13 2 17 105 591 +13 2 18 0 0 +13 2 19 0 0 +13 2 20 0 0 +13 2 21 0 0 +13 2 22 0 0 +13 2 23 0 0 +13 2 24 0 0 +14 2 1 0 0 +14 2 2 0 0 +14 2 3 0 0 +14 2 4 0 0 +14 2 5 0 0 +14 2 6 0 0 +14 2 7 0 0 +14 2 8 59 535 +14 2 9 239 827 +14 2 10 402 934 +14 2 11 523 983 +14 2 12 590 1003 +14 2 13 599 1004 +14 2 14 549 990 +14 2 15 443 949 +14 2 16 291 864 +14 2 17 114 655 +14 2 18 0 0 +14 2 19 0 0 +14 2 20 0 0 +14 2 21 0 0 +14 2 22 0 0 +14 2 23 0 0 +14 2 24 0 0 +15 2 1 0 0 +15 2 2 0 0 +15 2 3 0 0 +15 2 4 0 0 +15 2 5 0 0 +15 2 6 0 0 +15 2 7 0 0 +15 2 8 46 161 +15 2 9 114 0 +15 2 10 141 0 +15 2 11 198 0 +15 2 12 225 0 +15 2 13 156 0 +15 2 14 143 0 +15 2 15 128 0 +15 2 16 79 0 +15 2 17 33 0 +15 2 18 0 0 +15 2 19 0 0 +15 2 20 0 0 +15 2 21 0 0 +15 2 22 0 0 +15 2 23 0 0 +15 2 24 0 0 +16 2 1 0 0 +16 2 2 0 0 +16 2 3 0 0 +16 2 4 0 0 +16 2 5 0 0 +16 2 6 0 0 +16 2 7 0 0 +16 2 8 62 427 +16 2 9 223 575 +16 2 10 382 734 +16 2 11 507 869 +16 2 12 571 885 +16 2 13 600 987 +16 2 14 550 971 +16 2 15 446 932 +16 2 16 295 848 +16 2 17 119 648 +16 2 18 0 0 +16 2 19 0 0 +16 2 20 0 0 +16 2 21 0 0 +16 2 22 0 0 +16 2 23 0 0 +16 2 24 0 0 +17 2 1 0 0 +17 2 2 0 0 +17 2 3 0 0 +17 2 4 0 0 +17 2 5 0 0 +17 2 6 0 0 +17 2 7 0 0 +17 2 8 42 0 +17 2 9 112 0 +17 2 10 134 0 +17 2 11 152 0 +17 2 12 451 0 +17 2 13 458 0 +17 2 14 426 390 +17 2 15 433 840 +17 2 16 300 849 +17 2 17 123 656 +17 2 18 0 0 +17 2 19 0 0 +17 2 20 0 0 +17 2 21 0 0 +17 2 22 0 0 +17 2 23 0 0 +17 2 24 0 0 +18 2 1 0 0 +18 2 2 0 0 +18 2 3 0 0 +18 2 4 0 0 +18 2 5 0 0 +18 2 6 0 0 +18 2 7 0 0 +18 2 8 68 436 +18 2 9 252 653 +18 2 10 443 459 +18 2 11 432 193 +18 2 12 449 98 +18 2 13 438 295 +18 2 14 525 386 +18 2 15 302 369 +18 2 16 184 168 +18 2 17 83 194 +18 2 18 0 0 +18 2 19 0 0 +18 2 20 0 0 +18 2 21 0 0 +18 2 22 0 0 +18 2 23 0 0 +18 2 24 0 0 +19 2 1 0 0 +19 2 2 0 0 +19 2 3 0 0 +19 2 4 0 0 +19 2 5 0 0 +19 2 6 0 0 +19 2 7 0 0 +19 2 8 29 0 +19 2 9 113 0 +19 2 10 244 93 +19 2 11 534 686 +19 2 12 625 798 +19 2 13 646 900 +19 2 14 592 884 +19 2 15 474 946 +19 2 16 319 868 +19 2 17 137 686 +19 2 18 0 0 +19 2 19 0 0 +19 2 20 0 0 +19 2 21 0 0 +19 2 22 0 0 +19 2 23 0 0 +19 2 24 0 0 +20 2 1 0 0 +20 2 2 0 0 +20 2 3 0 0 +20 2 4 0 0 +20 2 5 0 0 +20 2 6 0 0 +20 2 7 0 0 +20 2 8 84 533 +20 2 9 272 847 +20 2 10 436 941 +20 2 11 557 987 +20 2 12 625 1006 +20 2 13 634 1008 +20 2 14 580 988 +20 2 15 438 757 +20 2 16 297 698 +20 2 17 134 618 +20 2 18 0 0 +20 2 19 0 0 +20 2 20 0 0 +20 2 21 0 0 +20 2 22 0 0 +20 2 23 0 0 +20 2 24 0 0 +21 2 1 0 0 +21 2 2 0 0 +21 2 3 0 0 +21 2 4 0 0 +21 2 5 0 0 +21 2 6 0 0 +21 2 7 0 0 +21 2 8 87 412 +21 2 9 269 756 +21 2 10 423 841 +21 2 11 539 880 +21 2 12 605 899 +21 2 13 613 900 +21 2 14 564 886 +21 2 15 476 757 +21 2 16 345 694 +21 2 17 141 550 +21 2 18 0 0 +21 2 19 0 0 +21 2 20 0 0 +21 2 21 0 0 +21 2 22 0 0 +21 2 23 0 0 +21 2 24 0 0 +22 2 1 0 0 +22 2 2 0 0 +22 2 3 0 0 +22 2 4 0 0 +22 2 5 0 0 +22 2 6 0 0 +22 2 7 0 0 +22 2 8 34 0 +22 2 9 72 0 +22 2 10 107 0 +22 2 11 142 0 +22 2 12 240 0 +22 2 13 319 0 +22 2 14 298 0 +22 2 15 364 185 +22 2 16 200 170 +22 2 17 86 135 +22 2 18 0 0 +22 2 19 0 0 +22 2 20 0 0 +22 2 21 0 0 +22 2 22 0 0 +22 2 23 0 0 +22 2 24 0 0 +23 2 1 0 0 +23 2 2 0 0 +23 2 3 0 0 +23 2 4 0 0 +23 2 5 0 0 +23 2 6 0 0 +23 2 7 0 0 +23 2 8 95 512 +23 2 9 281 779 +23 2 10 442 861 +23 2 11 539 799 +23 2 12 578 712 +23 2 13 587 715 +23 2 14 485 502 +23 2 15 344 290 +23 2 16 253 357 +23 2 17 138 508 +23 2 18 0 0 +23 2 19 0 0 +23 2 20 0 0 +23 2 21 0 0 +23 2 22 0 0 +23 2 23 0 0 +23 2 24 0 0 +24 2 1 0 0 +24 2 2 0 0 +24 2 3 0 0 +24 2 4 0 0 +24 2 5 0 0 +24 2 6 0 0 +24 2 7 0 0 +24 2 8 49 0 +24 2 9 204 86 +24 2 10 354 381 +24 2 11 526 697 +24 2 12 654 713 +24 2 13 689 714 +24 2 14 664 704 +24 2 15 456 194 +24 2 16 326 270 +24 2 17 57 0 +24 2 18 0 0 +24 2 19 0 0 +24 2 20 0 0 +24 2 21 0 0 +24 2 22 0 0 +24 2 23 0 0 +24 2 24 0 0 +25 2 1 0 0 +25 2 2 0 0 +25 2 3 0 0 +25 2 4 0 0 +25 2 5 0 0 +25 2 6 0 0 +25 2 7 0 0 +25 2 8 50 0 +25 2 9 198 259 +25 2 10 427 861 +25 2 11 590 995 +25 2 12 656 1011 +25 2 13 653 910 +25 2 14 589 995 +25 2 15 467 768 +25 2 16 201 177 +25 2 17 103 218 +25 2 18 0 0 +25 2 19 0 0 +25 2 20 0 0 +25 2 21 0 0 +25 2 22 0 0 +25 2 23 0 0 +25 2 24 0 0 +26 2 1 0 0 +26 2 2 0 0 +26 2 3 0 0 +26 2 4 0 0 +26 2 5 0 0 +26 2 6 0 0 +26 2 7 0 0 +26 2 8 123 689 +26 2 9 315 890 +26 2 10 465 875 +26 2 11 604 1011 +26 2 12 673 1028 +26 2 13 681 1030 +26 2 14 665 915 +26 2 15 519 982 +26 2 16 381 821 +26 2 17 187 604 +26 2 18 3 30 +26 2 19 0 0 +26 2 20 0 0 +26 2 21 0 0 +26 2 22 0 0 +26 2 23 0 0 +26 2 24 0 0 +27 2 1 0 0 +27 2 2 0 0 +27 2 3 0 0 +27 2 4 0 0 +27 2 5 0 0 +27 2 6 0 0 +27 2 7 0 0 +27 2 8 127 687 +27 2 9 302 795 +27 2 10 484 964 +27 2 11 606 1003 +27 2 12 672 1017 +27 2 13 466 203 +27 2 14 318 0 +27 2 15 384 482 +27 2 16 175 0 +27 2 17 77 0 +27 2 18 3 0 +27 2 19 0 0 +27 2 20 0 0 +27 2 21 0 0 +27 2 22 0 0 +27 2 23 0 0 +27 2 24 0 0 +28 2 1 0 0 +28 2 2 0 0 +28 2 3 0 0 +28 2 4 0 0 +28 2 5 0 0 +28 2 6 0 0 +28 2 7 0 0 +28 2 8 32 0 +28 2 9 85 0 +28 2 10 237 0 +28 2 11 451 98 +28 2 12 273 0 +28 2 13 512 0 +28 2 14 381 0 +28 2 15 315 284 +28 2 16 284 351 +28 2 17 101 217 +28 2 18 1 4 +28 2 19 0 0 +28 2 20 0 0 +28 2 21 0 0 +28 2 22 0 0 +28 2 23 0 0 +28 2 24 0 0 +1 3 1 0 0 +1 3 2 0 0 +1 3 3 0 0 +1 3 4 0 0 +1 3 5 0 0 +1 3 6 0 0 +1 3 7 0 0 +1 3 8 127 328 +1 3 9 340 425 +1 3 10 515 373 +1 3 11 625 195 +1 3 12 539 99 +1 3 13 614 297 +1 3 14 469 98 +1 3 15 303 0 +1 3 16 241 0 +1 3 17 106 0 +1 3 18 9 9 +1 3 19 0 0 +1 3 20 0 0 +1 3 21 0 0 +1 3 22 0 0 +1 3 23 0 0 +1 3 24 0 0 +2 3 1 0 0 +2 3 2 0 0 +2 3 3 0 0 +2 3 4 0 0 +2 3 5 0 0 +2 3 6 0 0 +2 3 7 0 0 +2 3 8 114 400 +2 3 9 228 342 +2 3 10 107 0 +2 3 11 210 0 +2 3 12 123 0 +2 3 13 477 296 +2 3 14 593 781 +2 3 15 491 753 +2 3 16 336 611 +2 3 17 118 146 +2 3 18 10 21 +2 3 19 0 0 +2 3 20 0 0 +2 3 21 0 0 +2 3 22 0 0 +2 3 23 0 0 +2 3 24 0 0 +3 3 1 0 0 +3 3 2 0 0 +3 3 3 0 0 +3 3 4 0 0 +3 3 5 0 0 +3 3 6 0 0 +3 3 7 0 0 +3 3 8 101 264 +3 3 9 303 423 +3 3 10 428 557 +3 3 11 561 676 +3 3 12 558 491 +3 3 13 353 98 +3 3 14 434 291 +3 3 15 262 94 +3 3 16 220 175 +3 3 17 169 436 +3 3 18 18 93 +3 3 19 0 0 +3 3 20 0 0 +3 3 21 0 0 +3 3 22 0 0 +3 3 23 0 0 +3 3 24 0 0 +4 3 1 0 0 +4 3 2 0 0 +4 3 3 0 0 +4 3 4 0 0 +4 3 5 0 0 +4 3 6 0 0 +4 3 7 0 0 +4 3 8 103 69 +4 3 9 253 86 +4 3 10 408 189 +4 3 11 466 198 +4 3 12 437 100 +4 3 13 659 504 +4 3 14 662 698 +4 3 15 552 680 +4 3 16 390 808 +4 3 17 196 451 +4 3 18 23 123 +4 3 19 0 0 +4 3 20 0 0 +4 3 21 0 0 +4 3 22 0 0 +4 3 23 0 0 +4 3 24 0 0 +5 3 1 0 0 +5 3 2 0 0 +5 3 3 0 0 +5 3 4 0 0 +5 3 5 0 0 +5 3 6 0 0 +5 3 7 0 0 +5 3 8 69 0 +5 3 9 166 0 +5 3 10 69 0 +5 3 11 73 0 +5 3 12 83 0 +5 3 13 226 0 +5 3 14 207 0 +5 3 15 167 0 +5 3 16 128 0 +5 3 17 90 0 +5 3 18 12 0 +5 3 19 0 0 +5 3 20 0 0 +5 3 21 0 0 +5 3 22 0 0 +5 3 23 0 0 +5 3 24 0 0 +6 3 1 0 0 +6 3 2 0 0 +6 3 3 0 0 +6 3 4 0 0 +6 3 5 0 0 +6 3 6 0 0 +6 3 7 0 0 +6 3 8 84 71 +6 3 9 219 175 +6 3 10 296 95 +6 3 11 324 0 +6 3 12 337 0 +6 3 13 349 100 +6 3 14 313 0 +6 3 15 147 0 +6 3 16 100 0 +6 3 17 38 0 +6 3 18 5 0 +6 3 19 0 0 +6 3 20 0 0 +6 3 21 0 0 +6 3 22 0 0 +6 3 23 0 0 +6 3 24 0 0 +7 3 1 0 0 +7 3 2 0 0 +7 3 3 0 0 +7 3 4 0 0 +7 3 5 0 0 +7 3 6 0 0 +7 3 7 9 34 +7 3 8 136 422 +7 3 9 330 696 +7 3 10 484 757 +7 3 11 544 590 +7 3 12 499 301 +7 3 13 461 200 +7 3 14 532 494 +7 3 15 513 765 +7 3 16 384 806 +7 3 17 203 682 +7 3 18 30 183 +7 3 19 0 0 +7 3 20 0 0 +7 3 21 0 0 +7 3 22 0 0 +7 3 23 0 0 +7 3 24 0 0 +8 3 1 0 0 +8 3 2 0 0 +8 3 3 0 0 +8 3 4 0 0 +8 3 5 0 0 +8 3 6 0 0 +8 3 7 1 18 +8 3 8 192 652 +8 3 9 431 709 +8 3 10 628 476 +8 3 11 538 0 +8 3 12 596 0 +8 3 13 555 0 +8 3 14 511 0 +8 3 15 422 0 +8 3 16 294 0 +8 3 17 143 0 +8 3 18 23 0 +8 3 19 0 0 +8 3 20 0 0 +8 3 21 0 0 +8 3 22 0 0 +8 3 23 0 0 +8 3 24 0 0 +9 3 1 0 0 +9 3 2 0 0 +9 3 3 0 0 +9 3 4 0 0 +9 3 5 0 0 +9 3 6 0 0 +9 3 7 4 0 +9 3 8 52 0 +9 3 9 99 0 +9 3 10 140 0 +9 3 11 169 0 +9 3 12 186 0 +9 3 13 99 0 +9 3 14 217 0 +9 3 15 288 0 +9 3 16 120 0 +9 3 17 55 0 +9 3 18 15 34 +9 3 19 0 0 +9 3 20 0 0 +9 3 21 0 0 +9 3 22 0 0 +9 3 23 0 0 +9 3 24 0 0 +10 3 1 0 0 +10 3 2 0 0 +10 3 3 0 0 +10 3 4 0 0 +10 3 5 0 0 +10 3 6 0 0 +10 3 7 11 13 +10 3 8 117 75 +10 3 9 344 363 +10 3 10 568 195 +10 3 11 711 202 +10 3 12 761 718 +10 3 13 831 513 +10 3 14 734 709 +10 3 15 612 491 +10 3 16 402 644 +10 3 17 226 477 +10 3 18 41 234 +10 3 19 0 0 +10 3 20 0 0 +10 3 21 0 0 +10 3 22 0 0 +10 3 23 0 0 +10 3 24 0 0 +11 3 1 0 0 +11 3 2 0 0 +11 3 3 0 0 +11 3 4 0 0 +11 3 5 0 0 +11 3 6 0 0 +11 3 7 22 144 +11 3 8 197 701 +11 3 9 390 829 +11 3 10 553 884 +11 3 11 685 1015 +11 3 12 751 1030 +11 3 13 757 1031 +11 3 14 688 914 +11 3 15 577 886 +11 3 16 418 830 +11 3 17 231 720 +11 3 18 45 382 +11 3 19 0 0 +11 3 20 0 0 +11 3 21 0 0 +11 3 22 0 0 +11 3 23 0 0 +11 3 24 0 0 +12 3 1 0 0 +12 3 2 0 0 +12 3 3 0 0 +12 3 4 0 0 +12 3 5 0 0 +12 3 6 0 0 +12 3 7 22 38 +12 3 8 148 154 +12 3 9 289 91 +12 3 10 522 683 +12 3 11 674 706 +12 3 12 735 711 +12 3 13 664 303 +12 3 14 547 200 +12 3 15 559 580 +12 3 16 316 271 +12 3 17 184 314 +12 3 18 41 268 +12 3 19 0 0 +12 3 20 0 0 +12 3 21 0 0 +12 3 22 0 0 +12 3 23 0 0 +12 3 24 0 0 +13 3 1 0 0 +13 3 2 0 0 +13 3 3 0 0 +13 3 4 0 0 +13 3 5 0 0 +13 3 6 0 0 +13 3 7 28 221 +13 3 8 209 764 +13 3 9 415 809 +13 3 10 586 868 +13 3 11 696 894 +13 3 12 810 908 +13 3 13 873 805 +13 3 14 811 798 +13 3 15 674 681 +13 3 16 472 641 +13 3 17 234 556 +13 3 18 44 286 +13 3 19 0 0 +13 3 20 0 0 +13 3 21 0 0 +13 3 22 0 0 +13 3 23 0 0 +13 3 24 0 0 +14 3 1 0 0 +14 3 2 0 0 +14 3 3 0 0 +14 3 4 0 0 +14 3 5 0 0 +14 3 6 0 0 +14 3 7 4 0 +14 3 8 96 0 +14 3 9 86 0 +14 3 10 176 0 +14 3 11 176 0 +14 3 12 191 0 +14 3 13 193 0 +14 3 14 179 0 +14 3 15 152 0 +14 3 16 114 0 +14 3 17 67 0 +14 3 18 15 0 +14 3 19 0 0 +14 3 20 0 0 +14 3 21 0 0 +14 3 22 0 0 +14 3 23 0 0 +14 3 24 0 0 +15 3 1 0 0 +15 3 2 0 0 +15 3 3 0 0 +15 3 4 0 0 +15 3 5 0 0 +15 3 6 0 0 +15 3 7 8 0 +15 3 8 100 0 +15 3 9 203 0 +15 3 10 218 96 +15 3 11 133 0 +15 3 12 146 0 +15 3 13 146 0 +15 3 14 336 99 +15 3 15 366 192 +15 3 16 223 91 +15 3 17 115 0 +15 3 18 37 141 +15 3 19 0 0 +15 3 20 0 0 +15 3 21 0 0 +15 3 22 0 0 +15 3 23 0 0 +15 3 24 0 0 +16 3 1 0 0 +16 3 2 0 0 +16 3 3 0 0 +16 3 4 0 0 +16 3 5 0 0 +16 3 6 0 0 +16 3 7 42 217 +16 3 8 216 474 +16 3 9 420 643 +16 3 10 588 686 +16 3 11 773 606 +16 3 12 934 409 +16 3 13 540 205 +16 3 14 729 506 +16 3 15 557 394 +16 3 16 483 466 +16 3 17 275 328 +16 3 18 61 158 +16 3 19 0 0 +16 3 20 0 0 +16 3 21 0 0 +16 3 22 0 0 +16 3 23 0 0 +16 3 24 0 0 +17 3 1 0 0 +17 3 2 0 0 +17 3 3 0 0 +17 3 4 0 0 +17 3 5 0 0 +17 3 6 0 0 +17 3 7 47 306 +17 3 8 223 488 +17 3 9 461 746 +17 3 10 615 892 +17 3 11 753 920 +17 3 12 803 931 +17 3 13 809 1036 +17 3 14 738 1026 +17 3 15 620 990 +17 3 16 460 938 +17 3 17 266 824 +17 3 18 68 530 +17 3 19 0 0 +17 3 20 0 0 +17 3 21 0 0 +17 3 22 0 0 +17 3 23 0 0 +17 3 24 0 0 +18 3 1 0 0 +18 3 2 0 0 +18 3 3 0 0 +18 3 4 0 0 +18 3 5 0 0 +18 3 6 0 0 +18 3 7 50 442 +18 3 8 241 731 +18 3 9 436 840 +18 3 10 608 790 +18 3 11 716 915 +18 3 12 659 206 +18 3 13 734 614 +18 3 14 719 706 +18 3 15 544 294 +18 3 16 353 92 +18 3 17 221 246 +18 3 18 56 105 +18 3 19 0 0 +18 3 20 0 0 +18 3 21 0 0 +18 3 22 0 0 +18 3 23 0 0 +18 3 24 0 0 +19 3 1 0 0 +19 3 2 0 0 +19 3 3 0 0 +19 3 4 0 0 +19 3 5 0 0 +19 3 6 0 0 +19 3 7 38 48 +19 3 8 168 0 +19 3 9 128 0 +19 3 10 307 0 +19 3 11 370 0 +19 3 12 405 0 +19 3 13 329 0 +19 3 14 342 0 +19 3 15 337 98 +19 3 16 242 92 +19 3 17 196 81 +19 3 18 50 52 +19 3 19 0 0 +19 3 20 0 0 +19 3 21 0 0 +19 3 22 0 0 +19 3 23 0 0 +19 3 24 0 0 +20 3 1 0 0 +20 3 2 0 0 +20 3 3 0 0 +20 3 4 0 0 +20 3 5 0 0 +20 3 6 0 0 +20 3 7 58 448 +20 3 8 252 732 +20 3 9 442 830 +20 3 10 606 884 +20 3 11 751 1014 +20 3 12 833 926 +20 3 13 815 920 +20 3 14 792 915 +20 3 15 665 883 +20 3 16 498 843 +20 3 17 291 742 +20 3 18 79 483 +20 3 19 0 0 +20 3 20 0 0 +20 3 21 0 0 +20 3 22 0 0 +20 3 23 0 0 +20 3 24 0 0 +21 3 1 0 0 +21 3 2 0 0 +21 3 3 0 0 +21 3 4 0 0 +21 3 5 0 0 +21 3 6 0 0 +21 3 7 68 474 +21 3 8 266 824 +21 3 9 460 929 +21 3 10 624 984 +21 3 11 755 910 +21 3 12 833 919 +21 3 13 838 922 +21 3 14 792 909 +21 3 15 672 887 +21 3 16 500 838 +21 3 17 293 738 +21 3 18 86 444 +21 3 19 0 0 +21 3 20 0 0 +21 3 21 0 0 +21 3 22 0 0 +21 3 23 0 0 +21 3 24 0 0 +22 3 1 0 0 +22 3 2 0 0 +22 3 3 0 0 +22 3 4 0 0 +22 3 5 0 0 +22 3 6 0 0 +22 3 7 76 484 +22 3 8 291 748 +22 3 9 494 842 +22 3 10 665 885 +22 3 11 788 906 +22 3 12 854 815 +22 3 13 852 810 +22 3 14 787 797 +22 3 15 679 773 +22 3 16 510 736 +22 3 17 301 652 +22 3 18 90 384 +22 3 19 0 0 +22 3 20 0 0 +22 3 21 0 0 +22 3 22 0 0 +22 3 23 0 0 +22 3 24 0 0 +23 3 1 0 0 +23 3 2 0 0 +23 3 3 0 0 +23 3 4 0 0 +23 3 5 0 0 +23 3 6 0 0 +23 3 7 71 320 +23 3 8 261 490 +23 3 9 480 645 +23 3 10 650 680 +23 3 11 803 496 +23 3 12 894 403 +23 3 13 803 200 +23 3 14 831 199 +23 3 15 563 97 +23 3 16 390 92 +23 3 17 210 81 +23 3 18 60 54 +23 3 19 0 0 +23 3 20 0 0 +23 3 21 0 0 +23 3 22 0 0 +23 3 23 0 0 +23 3 24 0 0 +24 3 1 0 0 +24 3 2 0 0 +24 3 3 0 0 +24 3 4 0 0 +24 3 5 0 0 +24 3 6 0 0 +24 3 7 55 53 +24 3 8 191 0 +24 3 9 363 91 +24 3 10 519 290 +24 3 11 597 198 +24 3 12 650 101 +24 3 13 626 0 +24 3 14 275 0 +24 3 15 485 0 +24 3 16 326 0 +24 3 17 177 0 +24 3 18 58 0 +24 3 19 0 0 +24 3 20 0 0 +24 3 21 0 0 +24 3 22 0 0 +24 3 23 0 0 +24 3 24 0 0 +25 3 1 0 0 +25 3 2 0 0 +25 3 3 0 0 +25 3 4 0 0 +25 3 5 0 0 +25 3 6 0 0 +25 3 7 51 163 +25 3 8 124 81 +25 3 9 256 91 +25 3 10 392 96 +25 3 11 637 395 +25 3 12 642 301 +25 3 13 696 403 +25 3 14 718 798 +25 3 15 609 678 +25 3 16 468 736 +25 3 17 277 656 +25 3 18 94 519 +25 3 19 0 0 +25 3 20 0 0 +25 3 21 0 0 +25 3 22 0 0 +25 3 23 0 0 +25 3 24 0 0 +26 3 1 0 0 +26 3 2 0 0 +26 3 3 0 0 +26 3 4 0 0 +26 3 5 0 0 +26 3 6 0 0 +26 3 7 91 522 +26 3 8 289 748 +26 3 9 479 836 +26 3 10 651 982 +26 3 11 766 1007 +26 3 12 827 1019 +26 3 13 842 915 +26 3 14 813 904 +26 3 15 690 878 +26 3 16 509 832 +26 3 17 319 741 +26 3 18 103 411 +26 3 19 0 0 +26 3 20 0 0 +26 3 21 0 0 +26 3 22 0 0 +26 3 23 0 0 +26 3 24 0 0 +27 3 1 0 0 +27 3 2 0 0 +27 3 3 0 0 +27 3 4 0 0 +27 3 5 0 0 +27 3 6 0 0 +27 3 7 89 346 +27 3 8 292 576 +27 3 9 473 550 +27 3 10 541 97 +27 3 11 681 299 +27 3 12 828 707 +27 3 13 844 808 +27 3 14 682 400 +27 3 15 636 581 +27 3 16 488 641 +27 3 17 304 656 +27 3 18 107 468 +27 3 19 0 0 +27 3 20 0 0 +27 3 21 0 0 +27 3 22 0 0 +27 3 23 0 0 +27 3 24 0 0 +28 3 1 0 0 +28 3 2 0 0 +28 3 3 0 0 +28 3 4 0 0 +28 3 5 0 0 +28 3 6 0 0 +28 3 7 66 0 +28 3 8 213 0 +28 3 9 386 92 +28 3 10 639 582 +28 3 11 695 696 +28 3 12 580 201 +28 3 13 724 503 +28 3 14 713 496 +28 3 15 576 481 +28 3 16 494 733 +28 3 17 306 569 +28 3 18 74 118 +28 3 19 0 0 +28 3 20 0 0 +28 3 21 0 0 +28 3 22 0 0 +28 3 23 0 0 +28 3 24 0 0 +29 3 1 0 0 +29 3 2 0 0 +29 3 3 0 0 +29 3 4 0 0 +29 3 5 0 0 +29 3 6 0 0 +29 3 7 33 0 +29 3 8 58 0 +29 3 9 171 0 +29 3 10 229 0 +29 3 11 253 0 +29 3 12 233 0 +29 3 13 274 0 +29 3 14 234 0 +29 3 15 149 0 +29 3 16 98 0 +29 3 17 49 0 +29 3 18 23 0 +29 3 19 0 0 +29 3 20 0 0 +29 3 21 0 0 +29 3 22 0 0 +29 3 23 0 0 +29 3 24 0 0 +30 3 1 0 0 +30 3 2 0 0 +30 3 3 0 0 +30 3 4 0 0 +30 3 5 0 0 +30 3 6 0 0 +30 3 7 65 186 +30 3 8 171 251 +30 3 9 185 93 +30 3 10 373 293 +30 3 11 643 701 +30 3 12 693 710 +30 3 13 741 811 +30 3 14 691 804 +30 3 15 588 783 +30 3 16 467 836 +30 3 17 256 584 +30 3 18 85 370 +30 3 19 0 0 +30 3 20 0 0 +30 3 21 0 0 +30 3 22 0 0 +30 3 23 0 0 +30 3 24 0 0 +31 3 1 0 0 +31 3 2 0 0 +31 3 3 0 0 +31 3 4 0 0 +31 3 5 0 0 +31 3 6 0 0 +31 3 7 121 644 +31 3 8 319 854 +31 3 9 506 941 +31 3 10 659 986 +31 3 11 769 1009 +31 3 12 825 1019 +31 3 13 821 917 +31 3 14 763 907 +31 3 15 651 785 +31 3 16 494 743 +31 3 17 306 672 +31 3 18 79 317 +31 3 19 0 0 +31 3 20 0 0 +31 3 21 0 0 +31 3 22 0 0 +31 3 23 0 0 +31 3 24 0 0 +1 4 1 0 0 +1 4 2 0 0 +1 4 3 0 0 +1 4 4 0 0 +1 4 5 0 0 +1 4 6 0 0 +1 4 7 35 0 +1 4 8 84 0 +1 4 9 139 0 +1 4 10 186 0 +1 4 11 259 0 +1 4 12 153 0 +1 4 13 174 0 +1 4 14 122 0 +1 4 15 242 97 +1 4 16 201 93 +1 4 17 104 83 +1 4 18 39 63 +1 4 19 0 0 +1 4 20 0 0 +1 4 21 0 0 +1 4 22 0 0 +1 4 23 0 0 +1 4 24 0 0 +2 4 1 0 0 +2 4 2 0 0 +2 4 3 0 0 +2 4 4 0 0 +2 4 5 0 0 +2 4 6 0 0 +2 4 7 43 0 +2 4 8 116 0 +2 4 9 178 0 +2 4 10 153 0 +2 4 11 122 0 +2 4 12 132 0 +2 4 13 174 0 +2 4 14 188 0 +2 4 15 158 0 +2 4 16 115 0 +2 4 17 44 0 +2 4 18 13 0 +2 4 19 0 0 +2 4 20 0 0 +2 4 21 0 0 +2 4 22 0 0 +2 4 23 0 0 +2 4 24 0 0 +3 4 1 0 0 +3 4 2 0 0 +3 4 3 0 0 +3 4 4 0 0 +3 4 5 0 0 +3 4 6 0 0 +3 4 7 39 129 +3 4 8 95 0 +3 4 9 91 0 +3 4 10 344 195 +3 4 11 402 200 +3 4 12 287 101 +3 4 13 155 0 +3 4 14 182 0 +3 4 15 137 0 +3 4 16 102 0 +3 4 17 84 0 +3 4 18 39 63 +3 4 19 0 0 +3 4 20 0 0 +3 4 21 0 0 +3 4 22 0 0 +3 4 23 0 0 +3 4 24 0 0 +4 4 1 0 0 +4 4 2 0 0 +4 4 3 0 0 +4 4 4 0 0 +4 4 5 0 0 +4 4 6 0 0 +4 4 7 148 534 +4 4 8 353 679 +4 4 9 550 750 +4 4 10 599 786 +4 4 11 701 603 +4 4 12 743 306 +4 4 13 784 915 +4 4 14 744 704 +4 4 15 419 98 +4 4 16 266 0 +4 4 17 152 85 +4 4 18 57 65 +4 4 19 0 0 +4 4 20 0 0 +4 4 21 0 0 +4 4 22 0 0 +4 4 23 0 0 +4 4 24 0 0 +5 4 1 0 0 +5 4 2 0 0 +5 4 3 0 0 +5 4 4 0 0 +5 4 5 0 0 +5 4 6 0 0 +5 4 7 22 0 +5 4 8 85 0 +5 4 9 66 0 +5 4 10 113 0 +5 4 11 226 0 +5 4 12 176 0 +5 4 13 182 0 +5 4 14 353 0 +5 4 15 300 0 +5 4 16 226 0 +5 4 17 60 0 +5 4 18 41 0 +5 4 19 0 0 +5 4 20 0 0 +5 4 21 0 0 +5 4 22 0 0 +5 4 23 0 0 +5 4 24 0 0 +6 4 1 0 0 +6 4 2 0 0 +6 4 3 0 0 +6 4 4 0 0 +6 4 5 0 0 +6 4 6 0 0 +6 4 7 45 0 +6 4 8 96 0 +6 4 9 84 0 +6 4 10 378 99 +6 4 11 177 0 +6 4 12 461 0 +6 4 13 459 0 +6 4 14 426 0 +6 4 15 195 0 +6 4 16 128 0 +6 4 17 252 0 +6 4 18 44 0 +6 4 19 0 0 +6 4 20 0 0 +6 4 21 0 0 +6 4 22 0 0 +6 4 23 0 0 +6 4 24 0 0 +7 4 1 0 0 +7 4 2 0 0 +7 4 3 0 0 +7 4 4 0 0 +7 4 5 0 0 +7 4 6 0 0 +7 4 7 99 141 +7 4 8 191 88 +7 4 9 259 95 +7 4 10 331 199 +7 4 11 577 305 +7 4 12 619 103 +7 4 13 617 616 +7 4 14 888 913 +7 4 15 633 890 +7 4 16 508 663 +7 4 17 308 693 +7 4 18 81 206 +7 4 19 0 0 +7 4 20 0 0 +7 4 21 0 0 +7 4 22 0 0 +7 4 23 0 0 +7 4 24 0 0 +8 4 1 0 0 +8 4 2 0 0 +8 4 3 0 0 +8 4 4 0 0 +8 4 5 0 0 +8 4 6 12 72 +8 4 7 170 722 +8 4 8 371 886 +8 4 9 558 960 +8 4 10 710 998 +8 4 11 820 1021 +8 4 12 874 1028 +8 4 13 871 1028 +8 4 14 809 1015 +8 4 15 704 993 +8 4 16 509 950 +8 4 17 301 783 +8 4 18 108 345 +8 4 19 0 0 +8 4 20 0 0 +8 4 21 0 0 +8 4 22 0 0 +8 4 23 0 0 +8 4 24 0 0 +9 4 1 0 0 +9 4 2 0 0 +9 4 3 0 0 +9 4 4 0 0 +9 4 5 0 0 +9 4 6 10 51 +9 4 7 64 0 +9 4 8 219 263 +9 4 9 498 574 +9 4 10 608 499 +9 4 11 700 508 +9 4 12 765 308 +9 4 13 548 0 +9 4 14 276 0 +9 4 15 194 0 +9 4 16 133 0 +9 4 17 73 0 +9 4 18 24 0 +9 4 19 0 0 +9 4 20 0 0 +9 4 21 0 0 +9 4 22 0 0 +9 4 23 0 0 +9 4 24 0 0 +10 4 1 0 0 +10 4 2 0 0 +10 4 3 0 0 +10 4 4 0 0 +10 4 5 0 0 +10 4 6 3 0 +10 4 7 74 0 +10 4 8 102 0 +10 4 9 268 0 +10 4 10 201 0 +10 4 11 408 0 +10 4 12 394 102 +10 4 13 430 101 +10 4 14 442 100 +10 4 15 505 295 +10 4 16 517 752 +10 4 17 351 775 +10 4 18 161 692 +10 4 19 0 0 +10 4 20 0 0 +10 4 21 0 0 +10 4 22 0 0 +10 4 23 0 0 +10 4 24 0 0 +11 4 1 0 0 +11 4 2 0 0 +11 4 3 0 0 +11 4 4 0 0 +11 4 5 0 0 +11 4 6 18 111 +11 4 7 186 732 +11 4 8 386 886 +11 4 9 572 958 +11 4 10 723 994 +11 4 11 829 1014 +11 4 12 883 1023 +11 4 13 877 1020 +11 4 14 817 1010 +11 4 15 703 986 +11 4 16 556 939 +11 4 17 367 775 +11 4 18 165 691 +11 4 19 0 0 +11 4 20 0 0 +11 4 21 0 0 +11 4 22 0 0 +11 4 23 0 0 +11 4 24 0 0 +12 4 1 0 0 +12 4 2 0 0 +12 4 3 0 0 +12 4 4 0 0 +12 4 5 0 0 +12 4 6 21 140 +12 4 7 190 732 +12 4 8 416 882 +12 4 9 645 956 +12 4 10 655 894 +12 4 11 751 909 +12 4 12 733 815 +12 4 13 955 813 +12 4 14 738 703 +12 4 15 633 589 +12 4 16 488 750 +12 4 17 383 859 +12 4 18 182 690 +12 4 19 1 9 +12 4 20 0 0 +12 4 21 0 0 +12 4 22 0 0 +12 4 23 0 0 +12 4 24 0 0 +13 4 1 0 0 +13 4 2 0 0 +13 4 3 0 0 +13 4 4 0 0 +13 4 5 0 0 +13 4 6 23 166 +13 4 7 189 656 +13 4 8 345 612 +13 4 9 449 472 +13 4 10 788 788 +13 4 11 748 703 +13 4 12 791 710 +13 4 13 794 811 +13 4 14 773 751 +13 4 15 649 808 +13 4 16 482 668 +13 4 17 253 257 +13 4 18 92 139 +13 4 19 1 4 +13 4 20 0 0 +13 4 21 0 0 +13 4 22 0 0 +13 4 23 0 0 +13 4 24 0 0 +14 4 1 0 0 +14 4 2 0 0 +14 4 3 0 0 +14 4 4 0 0 +14 4 5 0 0 +14 4 6 17 43 +14 4 7 109 73 +14 4 8 180 0 +14 4 9 192 0 +14 4 10 191 0 +14 4 11 175 0 +14 4 12 164 0 +14 4 13 141 0 +14 4 14 130 0 +14 4 15 165 0 +14 4 16 194 0 +14 4 17 73 0 +14 4 18 55 0 +14 4 19 3 0 +14 4 20 0 0 +14 4 21 0 0 +14 4 22 0 0 +14 4 23 0 0 +14 4 24 0 0 +15 4 1 0 0 +15 4 2 0 0 +15 4 3 0 0 +15 4 4 0 0 +15 4 5 0 0 +15 4 6 9 0 +15 4 7 37 0 +15 4 8 86 0 +15 4 9 182 0 +15 4 10 336 0 +15 4 11 563 0 +15 4 12 655 101 +15 4 13 391 0 +15 4 14 311 0 +15 4 15 346 0 +15 4 16 181 0 +15 4 17 80 0 +15 4 18 29 0 +15 4 19 2 0 +15 4 20 0 0 +15 4 21 0 0 +15 4 22 0 0 +15 4 23 0 0 +15 4 24 0 0 +16 4 1 0 0 +16 4 2 0 0 +16 4 3 0 0 +16 4 4 0 0 +16 4 5 0 0 +16 4 6 9 0 +16 4 7 68 0 +16 4 8 71 0 +16 4 9 60 0 +16 4 10 61 0 +16 4 11 80 0 +16 4 12 346 0 +16 4 13 344 0 +16 4 14 319 0 +16 4 15 255 0 +16 4 16 196 0 +16 4 17 127 0 +16 4 18 28 71 +16 4 19 8 26 +16 4 20 0 0 +16 4 21 0 0 +16 4 22 0 0 +16 4 23 0 0 +16 4 24 0 0 +17 4 1 0 0 +17 4 2 0 0 +17 4 3 0 0 +17 4 4 0 0 +17 4 5 0 0 +17 4 6 15 93 +17 4 7 56 0 +17 4 8 83 0 +17 4 9 305 94 +17 4 10 164 98 +17 4 11 620 302 +17 4 12 557 204 +17 4 13 439 101 +17 4 14 405 202 +17 4 15 424 296 +17 4 16 312 284 +17 4 17 260 440 +17 4 18 120 363 +17 4 19 10 43 +17 4 20 0 0 +17 4 21 0 0 +17 4 22 0 0 +17 4 23 0 0 +17 4 24 0 0 +18 4 1 0 0 +18 4 2 0 0 +18 4 3 0 0 +18 4 4 0 0 +18 4 5 0 0 +18 4 6 41 382 +18 4 7 224 768 +18 4 8 422 895 +18 4 9 604 958 +18 4 10 755 996 +18 4 11 861 1017 +18 4 12 912 1024 +18 4 13 906 1023 +18 4 14 843 1011 +18 4 15 728 987 +18 4 16 569 944 +18 4 17 363 789 +18 4 18 164 581 +18 4 19 17 119 +18 4 20 0 0 +18 4 21 0 0 +18 4 22 0 0 +18 4 23 0 0 +18 4 24 0 0 +19 4 1 0 0 +19 4 2 0 0 +19 4 3 0 0 +19 4 4 0 0 +19 4 5 0 0 +19 4 6 45 425 +19 4 7 228 768 +19 4 8 426 893 +19 4 9 608 957 +19 4 10 759 996 +19 4 11 866 1018 +19 4 12 815 821 +19 4 13 757 717 +19 4 14 655 608 +19 4 15 521 495 +19 4 16 480 669 +19 4 17 370 799 +19 4 18 193 741 +19 4 19 22 157 +19 4 20 0 0 +19 4 21 0 0 +19 4 22 0 0 +19 4 23 0 0 +19 4 24 0 0 +20 4 1 0 0 +20 4 2 0 0 +20 4 3 0 0 +20 4 4 0 0 +20 4 5 0 0 +20 4 6 49 456 +20 4 7 240 769 +20 4 8 430 892 +20 4 9 611 955 +20 4 10 761 993 +20 4 11 861 1006 +20 4 12 914 1019 +20 4 13 909 1019 +20 4 14 849 1010 +20 4 15 734 986 +20 4 16 578 759 +20 4 17 367 702 +20 4 18 198 735 +20 4 19 26 174 +20 4 20 0 0 +20 4 21 0 0 +20 4 22 0 0 +20 4 23 0 0 +20 4 24 0 0 +21 4 1 0 0 +21 4 2 0 0 +21 4 3 0 0 +21 4 4 0 0 +21 4 5 0 0 +21 4 6 52 455 +21 4 7 236 766 +21 4 8 431 886 +21 4 9 612 950 +21 4 10 760 986 +21 4 11 831 1006 +21 4 12 864 911 +21 4 13 873 911 +21 4 14 817 1006 +21 4 15 751 888 +21 4 16 578 941 +21 4 17 363 786 +21 4 18 180 654 +21 4 19 23 153 +21 4 20 0 0 +21 4 21 0 0 +21 4 22 0 0 +21 4 23 0 0 +21 4 24 0 0 +22 4 1 0 0 +22 4 2 0 0 +22 4 3 0 0 +22 4 4 0 0 +22 4 5 0 0 +22 4 6 21 0 +22 4 7 112 0 +22 4 8 237 0 +22 4 9 347 0 +22 4 10 437 0 +22 4 11 498 0 +22 4 12 353 0 +22 4 13 350 0 +22 4 14 442 197 +22 4 15 279 0 +22 4 16 201 0 +22 4 17 142 0 +22 4 18 79 70 +22 4 19 11 21 +22 4 20 0 0 +22 4 21 0 0 +22 4 22 0 0 +22 4 23 0 0 +22 4 24 0 0 +23 4 1 0 0 +23 4 2 0 0 +23 4 3 0 0 +23 4 4 0 0 +23 4 5 0 0 +23 4 6 44 276 +23 4 7 241 756 +23 4 8 434 873 +23 4 9 614 940 +23 4 10 759 974 +23 4 11 863 995 +23 4 12 912 1004 +23 4 13 909 1007 +23 4 14 739 797 +23 4 15 551 583 +23 4 16 359 373 +23 4 17 254 347 +23 4 18 152 437 +23 4 19 28 238 +23 4 20 0 0 +23 4 21 0 0 +23 4 22 0 0 +23 4 23 0 0 +23 4 24 0 0 +24 4 1 0 0 +24 4 2 0 0 +24 4 3 0 0 +24 4 4 0 0 +24 4 5 0 0 +24 4 6 53 238 +24 4 7 182 153 +24 4 8 269 88 +24 4 9 372 189 +24 4 10 716 783 +24 4 11 549 300 +24 4 12 306 0 +24 4 13 304 0 +24 4 14 496 0 +24 4 15 422 0 +24 4 16 198 0 +24 4 17 139 0 +24 4 18 78 73 +24 4 19 11 0 +24 4 20 0 0 +24 4 21 0 0 +24 4 22 0 0 +24 4 23 0 0 +24 4 24 0 0 +25 4 1 0 0 +25 4 2 0 0 +25 4 3 0 0 +25 4 4 0 0 +25 4 5 0 0 +25 4 6 61 384 +25 4 7 231 614 +25 4 8 405 793 +25 4 9 570 846 +25 4 10 690 877 +25 4 11 894 894 +25 4 12 626 200 +25 4 13 531 0 +25 4 14 494 0 +25 4 15 424 0 +25 4 16 329 0 +25 4 17 144 0 +25 4 18 80 72 +25 4 19 15 30 +25 4 20 0 0 +25 4 21 0 0 +25 4 22 0 0 +25 4 23 0 0 +25 4 24 0 0 +26 4 1 0 0 +26 4 2 0 0 +26 4 3 0 0 +26 4 4 0 0 +26 4 5 0 0 +26 4 6 56 235 +26 4 7 237 605 +26 4 8 384 347 +26 4 9 554 463 +26 4 10 686 576 +26 4 11 785 588 +26 4 12 374 99 +26 4 13 355 0 +26 4 14 237 0 +26 4 15 378 0 +26 4 16 218 0 +26 4 17 110 0 +26 4 18 67 0 +26 4 19 12 0 +26 4 20 0 0 +26 4 21 0 0 +26 4 22 0 0 +26 4 23 0 0 +26 4 24 0 0 +27 4 1 0 0 +27 4 2 0 0 +27 4 3 0 0 +27 4 4 0 0 +27 4 5 0 0 +27 4 6 7 0 +27 4 7 30 0 +27 4 8 69 0 +27 4 9 228 92 +27 4 10 197 96 +27 4 11 309 0 +27 4 12 299 98 +27 4 13 349 98 +27 4 14 363 194 +27 4 15 338 95 +27 4 16 268 91 +27 4 17 128 0 +27 4 18 52 0 +27 4 19 7 0 +27 4 20 0 0 +27 4 21 0 0 +27 4 22 0 0 +27 4 23 0 0 +27 4 24 0 0 +28 4 1 0 0 +28 4 2 0 0 +28 4 3 0 0 +28 4 4 0 0 +28 4 5 0 0 +28 4 6 26 0 +28 4 7 30 0 +28 4 8 152 88 +28 4 9 215 94 +28 4 10 263 98 +28 4 11 298 99 +28 4 12 173 0 +28 4 13 219 0 +28 4 14 160 0 +28 4 15 447 193 +28 4 16 212 0 +28 4 17 135 0 +28 4 18 91 73 +28 4 19 19 72 +28 4 20 0 0 +28 4 21 0 0 +28 4 22 0 0 +28 4 23 0 0 +28 4 24 0 0 +29 4 1 0 0 +29 4 2 0 0 +29 4 3 0 0 +29 4 4 0 0 +29 4 5 0 0 +29 4 6 58 265 +29 4 7 238 701 +29 4 8 263 266 +29 4 9 466 470 +29 4 10 338 97 +29 4 11 338 199 +29 4 12 426 100 +29 4 13 429 200 +29 4 14 385 198 +29 4 15 353 194 +29 4 16 531 837 +29 4 17 290 432 +29 4 18 122 221 +29 4 19 33 242 +29 4 20 0 0 +29 4 21 0 0 +29 4 22 0 0 +29 4 23 0 0 +29 4 24 0 0 +30 4 1 0 0 +30 4 2 0 0 +30 4 3 0 0 +30 4 4 0 0 +30 4 5 0 0 +30 4 6 85 493 +30 4 7 276 791 +30 4 8 468 892 +30 4 9 643 946 +30 4 10 788 979 +30 4 11 889 999 +30 4 12 934 1003 +30 4 13 924 1000 +30 4 14 866 995 +30 4 15 758 978 +30 4 16 601 937 +30 4 17 418 871 +30 4 18 224 746 +30 4 19 46 426 +30 4 20 0 0 +30 4 21 0 0 +30 4 22 0 0 +30 4 23 0 0 +30 4 24 0 0 +1 5 1 0 0 +1 5 2 0 0 +1 5 3 0 0 +1 5 4 0 0 +1 5 5 0 0 +1 5 6 41 57 +1 5 7 169 159 +1 5 8 436 718 +1 5 9 545 569 +1 5 10 583 395 +1 5 11 634 402 +1 5 12 681 508 +1 5 13 495 203 +1 5 14 533 301 +1 5 15 481 296 +1 5 16 381 284 +1 5 17 274 267 +1 5 18 128 152 +1 5 19 31 134 +1 5 20 0 0 +1 5 21 0 0 +1 5 22 0 0 +1 5 23 0 0 +1 5 24 0 0 +2 5 1 0 0 +2 5 2 0 0 +2 5 3 0 0 +2 5 4 0 0 +2 5 5 0 0 +2 5 6 29 0 +2 5 7 94 0 +2 5 8 213 90 +2 5 9 296 96 +2 5 10 289 0 +2 5 11 326 0 +2 5 12 345 0 +2 5 13 294 0 +2 5 14 185 0 +2 5 15 255 0 +2 5 16 184 0 +2 5 17 266 349 +2 5 18 188 527 +2 5 19 32 176 +2 5 20 0 0 +2 5 21 0 0 +2 5 22 0 0 +2 5 23 0 0 +2 5 24 0 0 +3 5 1 0 0 +3 5 2 0 0 +3 5 3 0 0 +3 5 4 0 0 +3 5 5 0 0 +3 5 6 33 0 +3 5 7 74 0 +3 5 8 180 0 +3 5 9 119 0 +3 5 10 168 0 +3 5 11 213 0 +3 5 12 504 100 +3 5 13 151 0 +3 5 14 229 0 +3 5 15 179 0 +3 5 16 178 0 +3 5 17 95 0 +3 5 18 31 0 +3 5 19 7 0 +3 5 20 0 0 +3 5 21 0 0 +3 5 22 0 0 +3 5 23 0 0 +3 5 24 0 0 +4 5 1 0 0 +4 5 2 0 0 +4 5 3 0 0 +4 5 4 0 0 +4 5 5 0 0 +4 5 6 18 0 +4 5 7 60 0 +4 5 8 111 0 +4 5 9 159 0 +4 5 10 152 0 +4 5 11 173 0 +4 5 12 183 0 +4 5 13 163 0 +4 5 14 79 0 +4 5 15 181 0 +4 5 16 189 0 +4 5 17 128 0 +4 5 18 47 0 +4 5 19 16 0 +4 5 20 0 0 +4 5 21 0 0 +4 5 22 0 0 +4 5 23 0 0 +4 5 24 0 0 +5 5 1 0 0 +5 5 2 0 0 +5 5 3 0 0 +5 5 4 0 0 +5 5 5 0 0 +5 5 6 35 58 +5 5 7 98 161 +5 5 8 206 90 +5 5 9 253 95 +5 5 10 315 98 +5 5 11 489 199 +5 5 12 434 201 +5 5 13 380 100 +5 5 14 245 0 +5 5 15 258 0 +5 5 16 369 188 +5 5 17 238 175 +5 5 18 147 228 +5 5 19 43 324 +5 5 20 0 0 +5 5 21 0 0 +5 5 22 0 0 +5 5 23 0 0 +5 5 24 0 0 +6 5 1 0 0 +6 5 2 0 0 +6 5 3 0 0 +6 5 4 0 0 +6 5 5 0 0 +6 5 6 85 360 +6 5 7 111 81 +6 5 8 420 628 +6 5 9 598 758 +6 5 10 726 781 +6 5 11 816 796 +6 5 12 858 801 +6 5 13 851 900 +6 5 14 688 594 +6 5 15 383 194 +6 5 16 297 188 +6 5 17 258 176 +6 5 18 171 307 +6 5 19 39 191 +6 5 20 0 0 +6 5 21 0 0 +6 5 22 0 0 +6 5 23 0 0 +6 5 24 0 0 +7 5 1 0 0 +7 5 2 0 0 +7 5 3 0 0 +7 5 4 0 0 +7 5 5 0 0 +7 5 6 81 240 +7 5 7 289 722 +7 5 8 473 806 +7 5 9 639 852 +7 5 10 806 977 +7 5 11 856 897 +7 5 12 906 909 +7 5 13 902 913 +7 5 14 844 905 +7 5 15 737 886 +7 5 16 589 856 +7 5 17 415 897 +7 5 18 252 781 +7 5 19 65 450 +7 5 20 0 0 +7 5 21 0 0 +7 5 22 0 0 +7 5 23 0 0 +7 5 24 0 0 +8 5 1 0 0 +8 5 2 0 0 +8 5 3 0 0 +8 5 4 0 0 +8 5 5 0 0 +8 5 6 112 494 +8 5 7 285 487 +8 5 8 430 451 +8 5 9 608 383 +8 5 10 751 296 +8 5 11 853 403 +8 5 12 896 101 +8 5 13 887 403 +8 5 14 785 100 +8 5 15 713 0 +8 5 16 556 0 +8 5 17 263 0 +8 5 18 118 0 +8 5 19 25 0 +8 5 20 0 0 +8 5 21 0 0 +8 5 22 0 0 +8 5 23 0 0 +8 5 24 0 0 +9 5 1 0 0 +9 5 2 0 0 +9 5 3 0 0 +9 5 4 0 0 +9 5 5 0 0 +9 5 6 52 122 +9 5 7 173 242 +9 5 8 257 269 +9 5 9 381 285 +9 5 10 373 196 +9 5 11 497 199 +9 5 12 571 301 +9 5 13 580 500 +9 5 14 583 494 +9 5 15 527 484 +9 5 16 536 654 +9 5 17 401 703 +9 5 18 220 612 +9 5 19 70 440 +9 5 20 0 0 +9 5 21 0 0 +9 5 22 0 0 +9 5 23 0 0 +9 5 24 0 0 +10 5 1 0 0 +10 5 2 0 0 +10 5 3 0 0 +10 5 4 0 0 +10 5 5 0 0 +10 5 6 125 614 +10 5 7 310 800 +10 5 8 495 800 +10 5 9 669 940 +10 5 10 809 970 +10 5 11 904 986 +10 5 12 899 894 +10 5 13 890 892 +10 5 14 832 883 +10 5 15 731 869 +10 5 16 629 939 +10 5 17 450 883 +10 5 18 256 769 +10 5 19 75 501 +10 5 20 0 0 +10 5 21 0 0 +10 5 22 0 0 +10 5 23 0 0 +10 5 24 0 0 +11 5 1 0 0 +11 5 2 0 0 +11 5 3 0 0 +11 5 4 0 0 +11 5 5 0 0 +11 5 6 128 621 +11 5 7 316 809 +11 5 8 504 897 +11 5 9 676 946 +11 5 10 814 974 +11 5 11 906 990 +11 5 12 927 898 +11 5 13 903 893 +11 5 14 839 882 +11 5 15 744 868 +11 5 16 612 748 +11 5 17 433 615 +11 5 18 243 461 +11 5 19 57 204 +11 5 20 0 0 +11 5 21 0 0 +11 5 22 0 0 +11 5 23 0 0 +11 5 24 0 0 +12 5 1 0 0 +12 5 2 0 0 +12 5 3 0 0 +12 5 4 0 0 +12 5 5 0 0 +12 5 6 39 0 +12 5 7 115 0 +12 5 8 242 0 +12 5 9 443 189 +12 5 10 474 0 +12 5 11 532 0 +12 5 12 562 0 +12 5 13 371 0 +12 5 14 346 0 +12 5 15 450 0 +12 5 16 200 0 +12 5 17 133 0 +12 5 18 107 76 +12 5 19 30 0 +12 5 20 0 0 +12 5 21 0 0 +12 5 22 0 0 +12 5 23 0 0 +12 5 24 0 0 +13 5 1 0 0 +13 5 2 0 0 +13 5 3 0 0 +13 5 4 0 0 +13 5 5 0 0 +13 5 6 88 322 +13 5 7 185 330 +13 5 8 301 182 +13 5 9 314 96 +13 5 10 324 0 +13 5 11 367 0 +13 5 12 202 101 +13 5 13 442 101 +13 5 14 621 100 +13 5 15 641 196 +13 5 16 543 189 +13 5 17 281 178 +13 5 18 207 235 +13 5 19 80 433 +13 5 20 0 0 +13 5 21 0 0 +13 5 22 0 0 +13 5 23 0 0 +13 5 24 0 0 +14 5 1 0 0 +14 5 2 0 0 +14 5 3 0 0 +14 5 4 0 0 +14 5 5 0 0 +14 5 6 56 64 +14 5 7 110 83 +14 5 8 250 181 +14 5 9 505 479 +14 5 10 542 396 +14 5 11 664 504 +14 5 12 568 304 +14 5 13 486 203 +14 5 14 537 302 +14 5 15 518 393 +14 5 16 419 382 +14 5 17 414 720 +14 5 18 242 638 +14 5 19 84 504 +14 5 20 0 0 +14 5 21 0 0 +14 5 22 0 0 +14 5 23 0 0 +14 5 24 0 0 +15 5 1 0 0 +15 5 2 0 0 +15 5 3 0 0 +15 5 4 0 0 +15 5 5 0 0 +15 5 6 137 590 +15 5 7 331 826 +15 5 8 522 912 +15 5 9 694 960 +15 5 10 828 985 +15 5 11 927 1004 +15 5 12 970 1012 +15 5 13 963 907 +15 5 14 888 896 +15 5 15 758 684 +15 5 16 615 661 +15 5 17 460 713 +15 5 18 270 633 +15 5 19 88 446 +15 5 20 0 0 +15 5 21 0 0 +15 5 22 0 0 +15 5 23 0 0 +15 5 24 0 0 +16 5 1 0 0 +16 5 2 0 0 +16 5 3 0 0 +16 5 4 0 0 +16 5 5 8 30 +16 5 6 83 323 +16 5 7 178 246 +16 5 8 190 90 +16 5 9 318 95 +16 5 10 709 195 +16 5 11 668 198 +16 5 12 840 298 +16 5 13 911 298 +16 5 14 783 586 +16 5 15 726 864 +16 5 16 610 834 +16 5 17 408 782 +16 5 18 234 694 +16 5 19 79 484 +16 5 20 0 0 +16 5 21 0 0 +16 5 22 0 0 +16 5 23 0 0 +16 5 24 0 0 +17 5 1 0 0 +17 5 2 0 0 +17 5 3 0 0 +17 5 4 0 0 +17 5 5 2 0 +17 5 6 31 0 +17 5 7 62 0 +17 5 8 197 89 +17 5 9 281 94 +17 5 10 320 0 +17 5 11 288 0 +17 5 12 303 0 +17 5 13 384 99 +17 5 14 359 98 +17 5 15 379 191 +17 5 16 437 463 +17 5 17 427 784 +17 5 18 252 694 +17 5 19 89 488 +17 5 20 0 0 +17 5 21 0 0 +17 5 22 0 0 +17 5 23 0 0 +17 5 24 0 0 +18 5 1 0 0 +18 5 2 0 0 +18 5 3 0 0 +18 5 4 0 0 +18 5 5 11 51 +18 5 6 134 516 +18 5 7 259 404 +18 5 8 340 178 +18 5 9 460 188 +18 5 10 488 194 +18 5 11 463 99 +18 5 12 575 198 +18 5 13 605 99 +18 5 14 795 688 +18 5 15 730 772 +18 5 16 637 836 +18 5 17 462 874 +18 5 18 274 696 +18 5 19 95 492 +18 5 20 0 0 +18 5 21 0 0 +18 5 22 0 0 +18 5 23 0 0 +18 5 24 0 0 +19 5 1 0 0 +19 5 2 0 0 +19 5 3 0 0 +19 5 4 0 0 +19 5 5 11 47 +19 5 6 142 577 +19 5 7 333 807 +19 5 8 518 889 +19 5 9 686 936 +19 5 10 826 968 +19 5 11 917 981 +19 5 12 956 981 +19 5 13 946 977 +19 5 14 852 869 +19 5 15 734 756 +19 5 16 555 732 +19 5 17 438 688 +19 5 18 268 608 +19 5 19 94 431 +19 5 20 0 0 +19 5 21 0 0 +19 5 22 0 0 +19 5 23 0 0 +19 5 24 0 0 +20 5 1 0 0 +20 5 2 0 0 +20 5 3 0 0 +20 5 4 0 0 +20 5 5 6 4 +20 5 6 85 126 +20 5 7 264 400 +20 5 8 451 528 +20 5 9 634 649 +20 5 10 517 286 +20 5 11 477 194 +20 5 12 807 683 +20 5 13 854 778 +20 5 14 800 770 +20 5 15 187 0 +20 5 16 89 0 +20 5 17 159 0 +20 5 18 98 0 +20 5 19 26 0 +20 5 20 0 0 +20 5 21 0 0 +20 5 22 0 0 +20 5 23 0 0 +20 5 24 0 0 +21 5 1 0 0 +21 5 2 0 0 +21 5 3 0 0 +21 5 4 0 0 +21 5 5 4 0 +21 5 6 33 0 +21 5 7 239 243 +21 5 8 389 266 +21 5 9 283 93 +21 5 10 506 288 +21 5 11 632 195 +21 5 12 809 197 +21 5 13 762 197 +21 5 14 714 196 +21 5 15 470 96 +21 5 16 327 0 +21 5 17 265 0 +21 5 18 137 0 +21 5 19 61 115 +21 5 20 0 0 +21 5 21 0 0 +21 5 22 0 0 +21 5 23 0 0 +21 5 24 0 0 +22 5 1 0 0 +22 5 2 0 0 +22 5 3 0 0 +22 5 4 0 0 +22 5 5 5 0 +22 5 6 58 0 +22 5 7 122 0 +22 5 8 231 91 +22 5 9 541 286 +22 5 10 599 294 +22 5 11 321 99 +22 5 12 639 401 +22 5 13 574 300 +22 5 14 492 298 +22 5 15 443 292 +22 5 16 427 379 +22 5 17 370 537 +22 5 18 241 560 +22 5 19 105 546 +22 5 20 0 0 +22 5 21 0 0 +22 5 22 0 0 +22 5 23 0 0 +22 5 24 0 0 +23 5 1 0 0 +23 5 2 0 0 +23 5 3 0 0 +23 5 4 0 0 +23 5 5 16 98 +23 5 6 166 690 +23 5 7 354 846 +23 5 8 513 831 +23 5 9 675 871 +23 5 10 806 894 +23 5 11 896 907 +23 5 12 939 913 +23 5 13 930 909 +23 5 14 869 898 +23 5 15 810 885 +23 5 16 658 761 +23 5 17 391 774 +23 5 18 295 725 +23 5 19 114 609 +23 5 20 0 0 +23 5 21 0 0 +23 5 22 0 0 +23 5 23 0 0 +23 5 24 0 0 +24 5 1 0 0 +24 5 2 0 0 +24 5 3 0 0 +24 5 4 0 0 +24 5 5 17 111 +24 5 6 165 690 +24 5 7 345 758 +24 5 8 540 827 +24 5 9 683 869 +24 5 10 588 198 +24 5 11 591 200 +24 5 12 716 303 +24 5 13 751 406 +24 5 14 774 401 +24 5 15 513 98 +24 5 16 461 191 +24 5 17 164 0 +24 5 18 72 0 +24 5 19 38 0 +24 5 20 0 0 +24 5 21 0 0 +24 5 22 0 0 +24 5 23 0 0 +24 5 24 0 0 +25 5 1 0 0 +25 5 2 0 0 +25 5 3 0 0 +25 5 4 0 0 +25 5 5 3 0 +25 5 6 23 0 +25 5 7 127 0 +25 5 8 201 0 +25 5 9 269 0 +25 5 10 324 0 +25 5 11 363 0 +25 5 12 381 0 +25 5 13 232 0 +25 5 14 355 0 +25 5 15 311 0 +25 5 16 252 0 +25 5 17 181 0 +25 5 18 61 0 +25 5 19 56 118 +25 5 20 0 0 +25 5 21 0 0 +25 5 22 0 0 +25 5 23 0 0 +25 5 24 0 0 +26 5 1 0 0 +26 5 2 0 0 +26 5 3 0 0 +26 5 4 0 0 +26 5 5 10 13 +26 5 6 73 66 +26 5 7 150 82 +26 5 8 198 0 +26 5 9 240 0 +26 5 10 182 0 +26 5 11 169 0 +26 5 12 266 0 +26 5 13 304 0 +26 5 14 217 0 +26 5 15 144 0 +26 5 16 224 93 +26 5 17 110 0 +26 5 18 99 0 +26 5 19 28 0 +26 5 20 0 0 +26 5 21 0 0 +26 5 22 0 0 +26 5 23 0 0 +26 5 24 0 0 +27 5 1 0 0 +27 5 2 0 0 +27 5 3 0 0 +27 5 4 0 0 +27 5 5 1 0 +27 5 6 9 0 +27 5 7 27 0 +27 5 8 36 0 +27 5 9 78 0 +27 5 10 160 0 +27 5 11 281 0 +27 5 12 284 0 +27 5 13 197 0 +27 5 14 391 0 +27 5 15 373 0 +27 5 16 223 0 +27 5 17 254 0 +27 5 18 148 79 +27 5 19 47 0 +27 5 20 0 0 +27 5 21 0 0 +27 5 22 0 0 +27 5 23 0 0 +27 5 24 0 0 +28 5 1 0 0 +28 5 2 0 0 +28 5 3 0 0 +28 5 4 0 0 +28 5 5 19 128 +28 5 6 147 606 +28 5 7 106 164 +28 5 8 171 179 +28 5 9 411 282 +28 5 10 781 868 +28 5 11 826 783 +28 5 12 818 792 +28 5 13 813 793 +28 5 14 776 691 +28 5 15 685 678 +28 5 16 599 655 +28 5 17 393 443 +28 5 18 285 559 +28 5 19 112 424 +28 5 20 0 0 +28 5 21 0 0 +28 5 22 0 0 +28 5 23 0 0 +28 5 24 0 0 +29 5 1 0 0 +29 5 2 0 0 +29 5 3 0 0 +29 5 4 0 0 +29 5 5 21 136 +29 5 6 170 611 +29 5 7 356 825 +29 5 8 543 905 +29 5 9 708 947 +29 5 10 838 873 +29 5 11 934 890 +29 5 12 976 891 +29 5 13 966 888 +29 5 14 914 981 +29 5 15 812 968 +29 5 16 665 936 +29 5 17 492 885 +29 5 18 306 797 +29 5 19 125 609 +29 5 20 0 0 +29 5 21 0 0 +29 5 22 0 0 +29 5 23 0 0 +29 5 24 0 0 +30 5 1 0 0 +30 5 2 0 0 +30 5 3 0 0 +30 5 4 0 0 +30 5 5 22 149 +30 5 6 170 606 +30 5 7 353 739 +30 5 8 538 901 +30 5 9 702 942 +30 5 10 837 871 +30 5 11 932 886 +30 5 12 976 891 +30 5 13 979 899 +30 5 14 879 886 +30 5 15 776 869 +30 5 16 609 840 +30 5 17 457 793 +30 5 18 300 713 +30 5 19 123 545 +30 5 20 0 0 +30 5 21 0 0 +30 5 22 0 0 +30 5 23 0 0 +30 5 24 0 0 +31 5 1 0 0 +31 5 2 0 0 +31 5 3 0 0 +31 5 4 0 0 +31 5 5 8 0 +31 5 6 122 349 +31 5 7 216 169 +31 5 8 503 735 +31 5 9 676 771 +31 5 10 815 894 +31 5 11 922 907 +31 5 12 964 911 +31 5 13 989 1010 +31 5 14 922 901 +31 5 15 821 883 +31 5 16 673 852 +31 5 17 491 808 +31 5 18 306 733 +31 5 19 121 566 +31 5 20 0 0 +31 5 21 0 0 +31 5 22 0 0 +31 5 23 0 0 +31 5 24 0 0 +1 6 1 0 0 +1 6 2 0 0 +1 6 3 0 0 +1 6 4 0 0 +1 6 5 8 0 +1 6 6 56 0 +1 6 7 138 0 +1 6 8 124 0 +1 6 9 165 0 +1 6 10 198 0 +1 6 11 397 96 +1 6 12 573 96 +1 6 13 342 0 +1 6 14 388 191 +1 6 15 480 468 +1 6 16 354 362 +1 6 17 234 0 +1 6 18 206 306 +1 6 19 72 118 +1 6 20 0 0 +1 6 21 0 0 +1 6 22 0 0 +1 6 23 0 0 +1 6 24 0 0 +2 6 1 0 0 +2 6 2 0 0 +2 6 3 0 0 +2 6 4 0 0 +2 6 5 11 17 +2 6 6 82 65 +2 6 7 224 239 +2 6 8 420 436 +2 6 9 651 823 +2 6 10 705 660 +2 6 11 607 287 +2 6 12 833 675 +2 6 13 764 675 +2 6 14 848 861 +2 6 15 717 751 +2 6 16 587 544 +2 6 17 434 516 +2 6 18 266 461 +2 6 19 109 352 +2 6 20 7 17 +2 6 21 0 0 +2 6 22 0 0 +2 6 23 0 0 +2 6 24 0 0 +3 6 1 0 0 +3 6 2 0 0 +3 6 3 0 0 +3 6 4 0 0 +3 6 5 6 0 +3 6 6 34 0 +3 6 7 98 0 +3 6 8 127 0 +3 6 9 259 93 +3 6 10 369 96 +3 6 11 475 97 +3 6 12 402 98 +3 6 13 273 0 +3 6 14 431 0 +3 6 15 225 0 +3 6 16 367 93 +3 6 17 196 88 +3 6 18 161 158 +3 6 19 73 186 +3 6 20 5 13 +3 6 21 0 0 +3 6 22 0 0 +3 6 23 0 0 +3 6 24 0 0 +4 6 1 0 0 +4 6 2 0 0 +4 6 3 0 0 +4 6 4 0 0 +4 6 5 23 170 +4 6 6 166 617 +4 6 7 334 739 +4 6 8 511 809 +4 6 9 629 754 +4 6 10 743 774 +4 6 11 826 688 +4 6 12 924 792 +4 6 13 876 797 +4 6 14 836 787 +4 6 15 485 97 +4 6 16 546 561 +4 6 17 405 531 +4 6 18 170 161 +4 6 19 63 62 +4 6 20 5 4 +4 6 21 0 0 +4 6 22 0 0 +4 6 23 0 0 +4 6 24 0 0 +5 6 1 0 0 +5 6 2 0 0 +5 6 3 0 0 +5 6 4 0 0 +5 6 5 25 174 +5 6 6 163 548 +5 6 7 348 744 +5 6 8 492 720 +5 6 9 597 659 +5 6 10 755 676 +5 6 11 840 687 +5 6 12 681 298 +5 6 13 577 198 +5 6 14 528 195 +5 6 15 688 671 +5 6 16 556 650 +5 6 17 142 88 +5 6 18 260 553 +5 6 19 116 493 +5 6 20 9 38 +5 6 21 0 0 +5 6 22 0 0 +5 6 23 0 0 +5 6 24 0 0 +6 6 1 0 0 +6 6 2 0 0 +6 6 3 0 0 +6 6 4 0 0 +6 6 5 21 136 +6 6 6 111 272 +6 6 7 158 83 +6 6 8 243 89 +6 6 9 322 94 +6 6 10 367 96 +6 6 11 457 196 +6 6 12 340 99 +6 6 13 339 99 +6 6 14 318 98 +6 6 15 334 96 +6 6 16 272 93 +6 6 17 199 88 +6 6 18 121 79 +6 6 19 58 62 +6 6 20 6 17 +6 6 21 0 0 +6 6 22 0 0 +6 6 23 0 0 +6 6 24 0 0 +7 6 1 0 0 +7 6 2 0 0 +7 6 3 0 0 +7 6 4 0 0 +7 6 5 9 0 +7 6 6 60 0 +7 6 7 158 82 +7 6 8 231 89 +7 6 9 219 0 +7 6 10 314 96 +7 6 11 505 293 +7 6 12 679 491 +7 6 13 674 490 +7 6 14 701 584 +7 6 15 576 479 +7 6 16 459 371 +7 6 17 290 88 +7 6 18 177 80 +7 6 19 57 63 +7 6 20 6 13 +7 6 21 0 0 +7 6 22 0 0 +7 6 23 0 0 +7 6 24 0 0 +8 6 1 0 0 +8 6 2 0 0 +8 6 3 0 0 +8 6 4 0 0 +8 6 5 16 93 +8 6 6 135 406 +8 6 7 182 244 +8 6 8 454 534 +8 6 9 651 746 +8 6 10 742 670 +8 6 11 895 873 +8 6 12 939 880 +8 6 13 964 974 +8 6 14 862 869 +8 6 15 765 853 +8 6 16 622 733 +8 6 17 459 692 +8 6 18 290 625 +8 6 19 127 491 +8 6 20 11 43 +8 6 21 0 0 +8 6 22 0 0 +8 6 23 0 0 +8 6 24 0 0 +9 6 1 0 0 +9 6 2 0 0 +9 6 3 0 0 +9 6 4 0 0 +9 6 5 28 200 +9 6 6 174 596 +9 6 7 212 241 +9 6 8 256 88 +9 6 9 556 552 +9 6 10 690 663 +9 6 11 923 962 +9 6 12 965 965 +9 6 13 960 964 +9 6 14 904 956 +9 6 15 804 940 +9 6 16 671 920 +9 6 17 501 870 +9 6 18 319 785 +9 6 19 142 614 +9 6 20 12 51 +9 6 21 0 0 +9 6 22 0 0 +9 6 23 0 0 +9 6 24 0 0 +10 6 1 0 0 +10 6 2 0 0 +10 6 3 0 0 +10 6 4 0 0 +10 6 5 29 234 +10 6 6 179 669 +10 6 7 251 404 +10 6 8 330 88 +10 6 9 562 369 +10 6 10 735 663 +10 6 11 877 864 +10 6 12 967 968 +10 6 13 909 869 +10 6 14 701 575 +10 6 15 670 660 +10 6 16 553 639 +10 6 17 413 605 +10 6 18 284 631 +10 6 19 135 555 +10 6 20 11 47 +10 6 21 0 0 +10 6 22 0 0 +10 6 23 0 0 +10 6 24 0 0 +11 6 1 0 0 +11 6 2 0 0 +11 6 3 0 0 +11 6 4 0 0 +11 6 5 18 47 +11 6 6 141 332 +11 6 7 294 403 +11 6 8 448 351 +11 6 9 468 184 +11 6 10 522 95 +11 6 11 584 96 +11 6 12 337 0 +11 6 13 419 97 +11 6 14 487 96 +11 6 15 754 660 +11 6 16 516 456 +11 6 17 398 519 +11 6 18 260 469 +11 6 19 116 376 +11 6 20 11 43 +11 6 21 0 0 +11 6 22 0 0 +11 6 23 0 0 +11 6 24 0 0 +12 6 1 0 0 +12 6 2 0 0 +12 6 3 0 0 +12 6 4 0 0 +12 6 5 28 229 +12 6 6 173 548 +12 6 7 352 747 +12 6 8 548 815 +12 6 9 712 855 +12 6 10 831 683 +12 6 11 882 793 +12 6 12 814 600 +12 6 13 771 601 +12 6 14 727 596 +12 6 15 643 583 +12 6 16 614 757 +12 6 17 493 813 +12 6 18 317 741 +12 6 19 135 529 +12 6 20 13 59 +12 6 21 0 0 +12 6 22 0 0 +12 6 23 0 0 +12 6 24 0 0 +13 6 1 0 0 +13 6 2 0 0 +13 6 3 0 0 +13 6 4 0 0 +13 6 5 31 242 +13 6 6 183 632 +13 6 7 369 757 +13 6 8 553 822 +13 6 9 721 862 +13 6 10 857 884 +13 6 11 949 899 +13 6 12 921 803 +13 6 13 933 803 +13 6 14 881 896 +13 6 15 783 881 +13 6 16 659 859 +13 6 17 522 814 +13 6 18 319 741 +13 6 19 155 662 +13 6 20 14 76 +13 6 21 0 0 +13 6 22 0 0 +13 6 23 0 0 +13 6 24 0 0 +14 6 1 0 0 +14 6 2 0 0 +14 6 3 0 0 +14 6 4 0 0 +14 6 5 29 259 +14 6 6 170 550 +14 6 7 353 661 +14 6 8 539 809 +14 6 9 693 849 +14 6 10 834 872 +14 6 11 938 887 +14 6 12 989 993 +14 6 13 983 991 +14 6 14 931 981 +14 6 15 829 966 +14 6 16 684 932 +14 6 17 516 886 +14 6 18 333 807 +14 6 19 154 648 +14 6 20 15 72 +14 6 21 0 0 +14 6 22 0 0 +14 6 23 0 0 +14 6 24 0 0 +15 6 1 0 0 +15 6 2 0 0 +15 6 3 0 0 +15 6 4 0 0 +15 6 5 30 229 +15 6 6 181 616 +15 6 7 359 735 +15 6 8 539 800 +15 6 9 706 931 +15 6 10 839 957 +15 6 11 881 873 +15 6 12 870 782 +15 6 13 755 587 +15 6 14 765 678 +15 6 15 633 572 +15 6 16 523 554 +15 6 17 393 526 +15 6 18 272 557 +15 6 19 104 317 +15 6 20 11 43 +15 6 21 0 0 +15 6 22 0 0 +15 6 23 0 0 +15 6 24 0 0 +16 6 1 0 0 +16 6 2 0 0 +16 6 3 0 0 +16 6 4 0 0 +16 6 5 12 51 +16 6 6 73 67 +16 6 7 338 727 +16 6 8 414 529 +16 6 9 434 370 +16 6 10 561 286 +16 6 11 558 290 +16 6 12 334 0 +16 6 13 404 97 +16 6 14 266 0 +16 6 15 675 284 +16 6 16 568 458 +16 6 17 450 348 +16 6 18 289 394 +16 6 19 143 438 +16 6 20 7 26 +16 6 21 0 0 +16 6 22 0 0 +16 6 23 0 0 +16 6 24 0 0 +17 6 1 0 0 +17 6 2 0 0 +17 6 3 0 0 +17 6 4 0 0 +17 6 5 26 98 +17 6 6 86 133 +17 6 7 180 160 +17 6 8 239 87 +17 6 9 567 550 +17 6 10 816 848 +17 6 11 841 672 +17 6 12 878 581 +17 6 13 881 581 +17 6 14 558 288 +17 6 15 195 0 +17 6 16 281 0 +17 6 17 232 86 +17 6 18 183 155 +17 6 19 96 248 +17 6 20 7 17 +17 6 21 0 0 +17 6 22 0 0 +17 6 23 0 0 +17 6 24 0 0 +18 6 1 0 0 +18 6 2 0 0 +18 6 3 0 0 +18 6 4 0 0 +18 6 5 6 0 +18 6 6 54 0 +18 6 7 129 80 +18 6 8 170 0 +18 6 9 267 0 +18 6 10 377 94 +18 6 11 360 96 +18 6 12 379 0 +18 6 13 378 96 +18 6 14 356 96 +18 6 15 398 188 +18 6 16 366 363 +18 6 17 221 257 +18 6 18 123 156 +18 6 19 62 0 +18 6 20 8 17 +18 6 21 0 0 +18 6 22 0 0 +18 6 23 0 0 +18 6 24 0 0 +19 6 1 0 0 +19 6 2 0 0 +19 6 3 0 0 +19 6 4 0 0 +19 6 5 10 26 +19 6 6 73 66 +19 6 7 271 402 +19 6 8 207 88 +19 6 9 287 92 +19 6 10 293 95 +19 6 11 308 96 +19 6 12 152 0 +19 6 13 380 97 +19 6 14 721 580 +19 6 15 742 761 +19 6 16 484 461 +19 6 17 368 441 +19 6 18 238 404 +19 6 19 101 263 +19 6 20 12 47 +19 6 21 0 0 +19 6 22 0 0 +19 6 23 0 0 +19 6 24 0 0 +20 6 1 0 0 +20 6 2 0 0 +20 6 3 0 0 +20 6 4 0 0 +20 6 5 11 26 +20 6 6 62 70 +20 6 7 283 499 +20 6 8 344 271 +20 6 9 465 379 +20 6 10 391 98 +20 6 11 436 99 +20 6 12 524 199 +20 6 13 458 100 +20 6 14 510 198 +20 6 15 452 194 +20 6 16 361 188 +20 6 17 234 89 +20 6 18 148 82 +20 6 19 65 66 +20 6 20 7 13 +20 6 21 0 0 +20 6 22 0 0 +20 6 23 0 0 +20 6 24 0 0 +21 6 1 0 0 +21 6 2 0 0 +21 6 3 0 0 +21 6 4 0 0 +21 6 5 27 200 +21 6 6 173 614 +21 6 7 325 657 +21 6 8 534 804 +21 6 9 689 841 +21 6 10 814 768 +21 6 11 846 682 +21 6 12 890 687 +21 6 13 891 690 +21 6 14 861 775 +21 6 15 725 769 +21 6 16 559 560 +21 6 17 408 529 +21 6 18 281 563 +21 6 19 130 391 +21 6 20 15 68 +21 6 21 0 0 +21 6 22 0 0 +21 6 23 0 0 +21 6 24 0 0 +22 6 1 0 0 +22 6 2 0 0 +22 6 3 0 0 +22 6 4 0 0 +22 6 5 25 166 +22 6 6 137 336 +22 6 7 277 325 +22 6 8 451 532 +22 6 9 501 279 +22 6 10 675 382 +22 6 11 838 677 +22 6 12 696 292 +22 6 13 748 487 +22 6 14 669 484 +22 6 15 533 286 +22 6 16 395 278 +22 6 17 398 439 +22 6 18 318 722 +22 6 19 141 517 +22 6 20 18 106 +22 6 21 0 0 +22 6 22 0 0 +22 6 23 0 0 +22 6 24 0 0 +23 6 1 0 0 +23 6 2 0 0 +23 6 3 0 0 +23 6 4 0 0 +23 6 5 24 161 +23 6 6 169 603 +23 6 7 341 727 +23 6 8 536 883 +23 6 9 673 833 +23 6 10 796 760 +23 6 11 807 678 +23 6 12 805 683 +23 6 13 798 588 +23 6 14 815 685 +23 6 15 671 573 +23 6 16 604 741 +23 6 17 480 794 +23 6 18 312 719 +23 6 19 135 517 +23 6 20 18 106 +23 6 21 0 0 +23 6 22 0 0 +23 6 23 0 0 +23 6 24 0 0 +24 6 1 0 0 +24 6 2 0 0 +24 6 3 0 0 +24 6 4 0 0 +24 6 5 28 229 +24 6 6 172 602 +24 6 7 296 651 +24 6 8 435 442 +24 6 9 674 555 +24 6 10 803 477 +24 6 11 891 484 +24 6 12 827 488 +24 6 13 831 584 +24 6 14 799 579 +24 6 15 719 666 +24 6 16 636 737 +24 6 17 384 438 +24 6 18 290 558 +24 6 19 113 321 +24 6 20 11 34 +24 6 21 0 0 +24 6 22 0 0 +24 6 23 0 0 +24 6 24 0 0 +25 6 1 0 0 +25 6 2 0 0 +25 6 3 0 0 +25 6 4 0 0 +25 6 5 19 115 +25 6 6 62 68 +25 6 7 207 248 +25 6 8 350 359 +25 6 9 449 283 +25 6 10 443 194 +25 6 11 557 296 +25 6 12 585 298 +25 6 13 645 396 +25 6 14 553 296 +25 6 15 491 291 +25 6 16 536 563 +25 6 17 436 625 +25 6 18 300 652 +25 6 19 141 531 +25 6 20 17 106 +25 6 21 0 0 +25 6 22 0 0 +25 6 23 0 0 +25 6 24 0 0 +26 6 1 0 0 +26 6 2 0 0 +26 6 3 0 0 +26 6 4 0 0 +26 6 5 26 178 +26 6 6 160 477 +26 6 7 301 328 +26 6 8 473 357 +26 6 9 619 376 +26 6 10 749 193 +26 6 11 843 196 +26 6 12 963 593 +26 6 13 962 593 +26 6 14 855 588 +26 6 15 771 673 +26 6 16 559 558 +26 6 17 395 353 +26 6 18 228 161 +26 6 19 91 130 +26 6 20 10 38 +26 6 21 0 0 +26 6 22 0 0 +26 6 23 0 0 +26 6 24 0 0 +27 6 1 0 0 +27 6 2 0 0 +27 6 3 0 0 +27 6 4 0 0 +27 6 5 7 0 +27 6 6 28 0 +27 6 7 65 0 +27 6 8 121 0 +27 6 9 196 0 +27 6 10 220 0 +27 6 11 186 0 +27 6 12 357 0 +27 6 13 356 0 +27 6 14 331 0 +27 6 15 313 0 +27 6 16 439 0 +27 6 17 294 89 +27 6 18 243 161 +27 6 19 119 195 +27 6 20 14 64 +27 6 21 0 0 +27 6 22 0 0 +27 6 23 0 0 +27 6 24 0 0 +28 6 1 0 0 +28 6 2 0 0 +28 6 3 0 0 +28 6 4 0 0 +28 6 5 25 191 +28 6 6 175 614 +28 6 7 356 741 +28 6 8 538 808 +28 6 9 704 848 +28 6 10 839 870 +28 6 11 887 883 +28 6 12 938 894 +28 6 13 937 894 +28 6 14 886 887 +28 6 15 791 872 +28 6 16 661 850 +28 6 17 499 807 +28 6 18 322 735 +28 6 19 151 595 +28 6 20 18 119 +28 6 21 0 0 +28 6 22 0 0 +28 6 23 0 0 +28 6 24 0 0 +29 6 1 0 0 +29 6 2 0 0 +29 6 3 0 0 +29 6 4 0 0 +29 6 5 18 81 +29 6 6 150 268 +29 6 7 303 244 +29 6 8 445 267 +29 6 9 602 279 +29 6 10 767 285 +29 6 11 787 194 +29 6 12 344 0 +29 6 13 279 0 +29 6 14 540 0 +29 6 15 270 0 +29 6 16 262 0 +29 6 17 104 0 +29 6 18 123 0 +29 6 19 47 0 +29 6 20 6 0 +29 6 21 0 0 +29 6 22 0 0 +29 6 23 0 0 +29 6 24 0 0 +30 6 1 0 0 +30 6 2 0 0 +30 6 3 0 0 +30 6 4 0 0 +30 6 5 8 0 +30 6 6 56 0 +30 6 7 126 0 +30 6 8 199 0 +30 6 9 141 0 +30 6 10 171 0 +30 6 11 192 0 +30 6 12 259 0 +30 6 13 227 0 +30 6 14 301 0 +30 6 15 268 0 +30 6 16 112 0 +30 6 17 387 432 +30 6 18 212 314 +30 6 19 129 444 +30 6 20 14 72 +30 6 21 0 0 +30 6 22 0 0 +30 6 23 0 0 +30 6 24 0 0 +1 7 1 0 0 +1 7 2 0 0 +1 7 3 0 0 +1 7 4 0 0 +1 7 5 11 34 +1 7 6 59 65 +1 7 7 86 0 +1 7 8 220 87 +1 7 9 146 0 +1 7 10 153 0 +1 7 11 714 571 +1 7 12 621 481 +1 7 13 694 482 +1 7 14 538 288 +1 7 15 741 758 +1 7 16 612 831 +1 7 17 481 791 +1 7 18 321 726 +1 7 19 161 648 +1 7 20 14 51 +1 7 21 0 0 +1 7 22 0 0 +1 7 23 0 0 +1 7 24 0 0 +2 7 1 0 0 +2 7 2 0 0 +2 7 3 0 0 +2 7 4 0 0 +2 7 5 17 102 +2 7 6 139 463 +2 7 7 283 566 +2 7 8 173 177 +2 7 9 163 93 +2 7 10 381 96 +2 7 11 427 98 +2 7 12 450 98 +2 7 13 449 98 +2 7 14 364 97 +2 7 15 322 0 +2 7 16 265 0 +2 7 17 260 263 +2 7 18 133 80 +2 7 19 141 386 +2 7 20 15 72 +2 7 21 0 0 +2 7 22 0 0 +2 7 23 0 0 +2 7 24 0 0 +3 7 1 0 0 +3 7 2 0 0 +3 7 3 0 0 +3 7 4 0 0 +3 7 5 21 140 +3 7 6 166 654 +3 7 7 344 801 +3 7 8 468 790 +3 7 9 689 921 +3 7 10 823 947 +3 7 11 918 962 +3 7 12 971 972 +3 7 13 973 975 +3 7 14 869 869 +3 7 15 773 760 +3 7 16 636 646 +3 7 17 369 349 +3 7 18 201 79 +3 7 19 76 0 +3 7 20 9 0 +3 7 21 0 0 +3 7 22 0 0 +3 7 23 0 0 +3 7 24 0 0 +4 7 1 0 0 +4 7 2 0 0 +4 7 3 0 0 +4 7 4 0 0 +4 7 5 6 0 +4 7 6 39 0 +4 7 7 109 0 +4 7 8 128 0 +4 7 9 264 0 +4 7 10 198 0 +4 7 11 172 0 +4 7 12 207 0 +4 7 13 378 0 +4 7 14 171 0 +4 7 15 290 94 +4 7 16 261 0 +4 7 17 194 0 +4 7 18 169 157 +4 7 19 138 567 +4 7 20 14 43 +4 7 21 0 0 +4 7 22 0 0 +4 7 23 0 0 +4 7 24 0 0 +5 7 1 0 0 +5 7 2 0 0 +5 7 3 0 0 +5 7 4 0 0 +5 7 5 11 64 +5 7 6 67 127 +5 7 7 129 79 +5 7 8 205 87 +5 7 9 314 92 +5 7 10 378 96 +5 7 11 631 193 +5 7 12 888 711 +5 7 13 883 779 +5 7 14 837 704 +5 7 15 739 860 +5 7 16 642 841 +5 7 17 423 668 +5 7 18 229 571 +5 7 19 84 366 +5 7 20 15 72 +5 7 21 0 0 +5 7 22 0 0 +5 7 23 0 0 +5 7 24 0 0 +6 7 1 0 0 +6 7 2 0 0 +6 7 3 0 0 +6 7 4 0 0 +6 7 5 19 111 +6 7 6 139 398 +6 7 7 327 646 +6 7 8 504 711 +6 7 9 617 561 +6 7 10 685 481 +6 7 11 775 488 +6 7 12 864 595 +6 7 13 846 589 +6 7 14 833 686 +6 7 15 816 865 +6 7 16 664 840 +6 7 17 502 798 +6 7 18 339 807 +6 7 19 159 649 +6 7 20 18 111 +6 7 21 0 0 +6 7 22 0 0 +6 7 23 0 0 +6 7 24 0 0 +7 7 1 0 0 +7 7 2 0 0 +7 7 3 0 0 +7 7 4 0 0 +7 7 5 17 85 +7 7 6 151 522 +7 7 7 324 644 +7 7 8 498 713 +7 7 9 675 843 +7 7 10 751 868 +7 7 11 1002 881 +7 7 12 1054 789 +7 7 13 1054 789 +7 7 14 982 684 +7 7 15 837 480 +7 7 16 677 373 +7 7 17 498 356 +7 7 18 265 404 +7 7 19 104 260 +7 7 20 16 68 +7 7 21 0 0 +7 7 22 0 0 +7 7 23 0 0 +7 7 24 0 0 +8 7 1 0 0 +8 7 2 0 0 +8 7 3 0 0 +8 7 4 0 0 +8 7 5 17 106 +8 7 6 151 579 +8 7 7 326 719 +8 7 8 470 612 +8 7 9 367 183 +8 7 10 371 94 +8 7 11 586 478 +8 7 12 475 193 +8 7 13 234 0 +8 7 14 415 286 +8 7 15 352 94 +8 7 16 381 272 +8 7 17 403 516 +8 7 18 271 546 +8 7 19 43 125 +8 7 20 6 9 +8 7 21 0 0 +8 7 22 0 0 +8 7 23 0 0 +8 7 24 0 0 +9 7 1 0 0 +9 7 2 0 0 +9 7 3 0 0 +9 7 4 0 0 +9 7 5 16 81 +9 7 6 144 504 +9 7 7 298 548 +9 7 8 428 433 +9 7 9 422 274 +9 7 10 573 332 +9 7 11 474 288 +9 7 12 175 97 +9 7 13 793 676 +9 7 14 424 96 +9 7 15 376 94 +9 7 16 594 825 +9 7 17 373 522 +9 7 18 279 557 +9 7 19 116 383 +9 7 20 8 38 +9 7 21 0 0 +9 7 22 0 0 +9 7 23 0 0 +9 7 24 0 0 +10 7 1 0 0 +10 7 2 0 0 +10 7 3 0 0 +10 7 4 0 0 +10 7 5 16 89 +10 7 6 148 644 +10 7 7 333 721 +10 7 8 517 880 +10 7 9 686 929 +10 7 10 826 959 +10 7 11 923 974 +10 7 12 978 984 +10 7 13 974 981 +10 7 14 926 976 +10 7 15 825 957 +10 7 16 688 931 +10 7 17 518 882 +10 7 18 337 804 +10 7 19 156 646 +10 7 20 14 81 +10 7 21 0 0 +10 7 22 0 0 +10 7 23 0 0 +10 7 24 0 0 +11 7 1 0 0 +11 7 2 0 0 +11 7 3 0 0 +11 7 4 0 0 +11 7 5 14 72 +11 7 6 154 571 +11 7 7 337 634 +11 7 8 511 349 +11 7 9 679 277 +11 7 10 855 758 +11 7 11 805 578 +11 7 12 788 390 +11 7 13 636 586 +11 7 14 503 97 +11 7 15 520 95 +11 7 16 582 0 +11 7 17 213 0 +11 7 18 80 0 +11 7 19 35 0 +11 7 20 3 0 +11 7 21 0 0 +11 7 22 0 0 +11 7 23 0 0 +11 7 24 0 0 +12 7 1 0 0 +12 7 2 0 0 +12 7 3 0 0 +12 7 4 0 0 +12 7 5 3 0 +12 7 6 49 0 +12 7 7 118 0 +12 7 8 191 0 +12 7 9 184 0 +12 7 10 225 0 +12 7 11 254 0 +12 7 12 306 0 +12 7 13 288 0 +12 7 14 228 0 +12 7 15 171 0 +12 7 16 218 0 +12 7 17 44 0 +12 7 18 54 0 +12 7 19 37 0 +12 7 20 2 0 +12 7 21 0 0 +12 7 22 0 0 +12 7 23 0 0 +12 7 24 0 0 +13 7 1 0 0 +13 7 2 0 0 +13 7 3 0 0 +13 7 4 0 0 +13 7 5 4 4 +13 7 6 43 60 +13 7 7 97 0 +13 7 8 173 0 +13 7 9 459 541 +13 7 10 518 371 +13 7 11 416 94 +13 7 12 405 191 +13 7 13 657 572 +13 7 14 320 191 +13 7 15 472 281 +13 7 16 284 181 +13 7 17 276 258 +13 7 18 230 387 +13 7 19 127 369 +13 7 20 10 30 +13 7 21 0 0 +13 7 22 0 0 +13 7 23 0 0 +13 7 24 0 0 +14 7 1 0 0 +14 7 2 0 0 +14 7 3 0 0 +14 7 4 0 0 +14 7 5 12 55 +14 7 6 138 621 +14 7 7 149 235 +14 7 8 228 87 +14 7 9 304 91 +14 7 10 525 377 +14 7 11 534 288 +14 7 12 740 580 +14 7 13 834 677 +14 7 14 864 767 +14 7 15 724 851 +14 7 16 566 706 +14 7 17 548 784 +14 7 18 324 631 +14 7 19 152 564 +14 7 20 13 51 +14 7 21 0 0 +14 7 22 0 0 +14 7 23 0 0 +14 7 24 0 0 +15 7 1 0 0 +15 7 2 0 0 +15 7 3 0 0 +15 7 4 0 0 +15 7 5 0 3 +15 7 6 135 609 +15 7 7 318 776 +15 7 8 545 859 +15 7 9 712 726 +15 7 10 748 655 +15 7 11 884 857 +15 7 12 476 192 +15 7 13 750 574 +15 7 14 548 189 +15 7 15 518 279 +15 7 16 301 90 +15 7 17 105 0 +15 7 18 97 77 +15 7 19 49 60 +15 7 20 0 0 +15 7 21 0 0 +15 7 22 0 0 +15 7 23 0 0 +15 7 24 0 0 +16 7 1 0 0 +16 7 2 0 0 +16 7 3 0 0 +16 7 4 0 0 +16 7 5 0 0 +16 7 6 29 0 +16 7 7 63 0 +16 7 8 83 0 +16 7 9 370 180 +16 7 10 471 278 +16 7 11 800 755 +16 7 12 784 667 +16 7 13 784 571 +16 7 14 738 567 +16 7 15 749 744 +16 7 16 628 815 +16 7 17 466 681 +16 7 18 297 614 +16 7 19 131 480 +16 7 20 11 38 +16 7 21 0 0 +16 7 22 0 0 +16 7 23 0 0 +16 7 24 0 0 +17 7 1 0 0 +17 7 2 0 0 +17 7 3 0 0 +17 7 4 0 0 +17 7 5 9 43 +17 7 6 106 298 +17 7 7 220 539 +17 7 8 394 596 +17 7 9 470 540 +17 7 10 476 279 +17 7 11 513 284 +17 7 12 620 381 +17 7 13 670 475 +17 7 14 789 753 +17 7 15 705 741 +17 7 16 558 539 +17 7 17 314 0 +17 7 18 56 0 +17 7 19 28 0 +17 7 20 4 0 +17 7 21 0 0 +17 7 22 0 0 +17 7 23 0 0 +17 7 24 0 0 +18 7 1 0 0 +18 7 2 0 0 +18 7 3 0 0 +18 7 4 0 0 +18 7 5 8 30 +18 7 6 118 475 +18 7 7 291 690 +18 7 8 368 602 +18 7 9 553 544 +18 7 10 752 751 +18 7 11 691 476 +18 7 12 626 385 +18 7 13 656 481 +18 7 14 806 762 +18 7 15 743 842 +18 7 16 633 815 +18 7 17 481 774 +18 7 18 293 544 +18 7 19 141 426 +18 7 20 11 34 +18 7 21 0 0 +18 7 22 0 0 +18 7 23 0 0 +18 7 24 0 0 +19 7 1 0 0 +19 7 2 0 0 +19 7 3 0 0 +19 7 4 0 0 +19 7 5 6 13 +19 7 6 97 177 +19 7 7 178 153 +19 7 8 353 341 +19 7 9 566 719 +19 7 10 736 742 +19 7 11 749 815 +19 7 12 865 856 +19 7 13 799 825 +19 7 14 748 811 +19 7 15 791 927 +19 7 16 655 896 +19 7 17 490 847 +19 7 18 311 762 +19 7 19 136 591 +19 7 20 10 38 +19 7 21 0 0 +19 7 22 0 0 +19 7 23 0 0 +19 7 24 0 0 +20 7 1 0 0 +20 7 2 0 0 +20 7 3 0 0 +20 7 4 0 0 +20 7 5 0 0 +20 7 6 88 465 +20 7 7 260 609 +20 7 8 369 424 +20 7 9 612 717 +20 7 10 724 833 +20 7 11 778 659 +20 7 12 835 854 +20 7 13 830 854 +20 7 14 795 846 +20 7 15 713 831 +20 7 16 583 803 +20 7 17 529 757 +20 7 18 335 681 +20 7 19 115 353 +20 7 20 6 26 +20 7 21 0 0 +20 7 22 0 0 +20 7 23 0 0 +20 7 24 0 0 +21 7 1 0 0 +21 7 2 0 0 +21 7 3 0 0 +21 7 4 0 0 +21 7 5 0 0 +21 7 6 93 232 +21 7 7 126 152 +21 7 8 183 85 +21 7 9 399 180 +21 7 10 328 186 +21 7 11 450 95 +21 7 12 390 96 +21 7 13 549 192 +21 7 14 784 573 +21 7 15 526 379 +21 7 16 429 553 +21 7 17 333 611 +21 7 18 276 710 +21 7 19 114 554 +21 7 20 10 47 +21 7 21 0 0 +21 7 22 0 0 +21 7 23 0 0 +21 7 24 0 0 +22 7 1 0 0 +22 7 2 0 0 +22 7 3 0 0 +22 7 4 0 0 +22 7 5 0 0 +22 7 6 112 551 +22 7 7 270 711 +22 7 8 433 792 +22 7 9 593 745 +22 7 10 578 482 +22 7 11 537 294 +22 7 12 569 296 +22 7 13 445 99 +22 7 14 596 392 +22 7 15 478 288 +22 7 16 521 560 +22 7 17 293 266 +22 7 18 283 641 +22 7 19 103 375 +22 7 20 21 4 +22 7 21 0 0 +22 7 22 0 0 +22 7 23 0 0 +22 7 24 0 0 +23 7 1 0 0 +23 7 2 0 0 +23 7 3 0 0 +23 7 4 0 0 +23 7 5 0 0 +23 7 6 116 424 +23 7 7 282 550 +23 7 8 469 698 +23 7 9 608 829 +23 7 10 700 853 +23 7 11 825 799 +23 7 12 538 294 +23 7 13 462 196 +23 7 14 569 389 +23 7 15 377 96 +23 7 16 283 92 +23 7 17 223 0 +23 7 18 155 0 +23 7 19 59 0 +23 7 20 0 0 +23 7 21 0 0 +23 7 22 0 0 +23 7 23 0 0 +23 7 24 0 0 +24 7 1 0 0 +24 7 2 0 0 +24 7 3 0 0 +24 7 4 0 0 +24 7 5 0 0 +24 7 6 106 352 +24 7 7 261 541 +24 7 8 437 259 +24 7 9 391 182 +24 7 10 308 0 +24 7 11 319 0 +24 7 12 339 0 +24 7 13 247 0 +24 7 14 269 0 +24 7 15 205 0 +24 7 16 125 0 +24 7 17 112 0 +24 7 18 107 76 +24 7 19 37 58 +24 7 20 0 0 +24 7 21 0 0 +24 7 22 0 0 +24 7 23 0 0 +24 7 24 0 0 +25 7 1 0 0 +25 7 2 0 0 +25 7 3 0 0 +25 7 4 0 0 +25 7 5 0 0 +25 7 6 53 118 +25 7 7 100 0 +25 7 8 176 0 +25 7 9 143 0 +25 7 10 271 94 +25 7 11 548 382 +25 7 12 339 96 +25 7 13 524 387 +25 7 14 695 576 +25 7 15 710 759 +25 7 16 430 370 +25 7 17 407 614 +25 7 18 256 553 +25 7 19 98 428 +25 7 20 0 0 +25 7 21 0 0 +25 7 22 0 0 +25 7 23 0 0 +25 7 24 0 0 +26 7 1 0 0 +26 7 2 0 0 +26 7 3 0 0 +26 7 4 0 0 +26 7 5 0 0 +26 7 6 79 357 +26 7 7 184 316 +26 7 8 434 708 +26 7 9 627 844 +26 7 10 764 872 +26 7 11 860 886 +26 7 12 911 894 +26 7 13 802 694 +26 7 14 705 589 +26 7 15 424 193 +26 7 16 434 374 +26 7 17 288 265 +26 7 18 156 159 +26 7 19 47 62 +26 7 20 0 0 +26 7 21 0 0 +26 7 22 0 0 +26 7 23 0 0 +26 7 24 0 0 +27 7 1 0 0 +27 7 2 0 0 +27 7 3 0 0 +27 7 4 0 0 +27 7 5 0 0 +27 7 6 116 586 +27 7 7 295 776 +27 7 8 480 869 +27 7 9 653 922 +27 7 10 800 960 +27 7 11 904 980 +27 7 12 564 296 +27 7 13 625 395 +27 7 14 589 390 +27 7 15 623 577 +27 7 16 551 651 +27 7 17 348 440 +27 7 18 256 553 +27 7 19 119 539 +27 7 20 0 0 +27 7 21 0 0 +27 7 22 0 0 +27 7 23 0 0 +27 7 24 0 0 +28 7 1 0 0 +28 7 2 0 0 +28 7 3 0 0 +28 7 4 0 0 +28 7 5 0 0 +28 7 6 94 231 +28 7 7 250 309 +28 7 8 362 521 +28 7 9 575 551 +28 7 10 814 663 +28 7 11 922 771 +28 7 12 825 779 +28 7 13 794 783 +28 7 14 752 778 +28 7 15 755 764 +28 7 16 502 461 +28 7 17 392 611 +28 7 18 266 548 +28 7 19 96 356 +28 7 20 0 0 +28 7 21 0 0 +28 7 22 0 0 +28 7 23 0 0 +28 7 24 0 0 +29 7 1 0 0 +29 7 2 0 0 +29 7 3 0 0 +29 7 4 0 0 +29 7 5 0 0 +29 7 6 59 58 +29 7 7 111 77 +29 7 8 149 173 +29 7 9 616 731 +29 7 10 609 378 +29 7 11 819 673 +29 7 12 866 581 +29 7 13 708 291 +29 7 14 634 192 +29 7 15 620 282 +29 7 16 438 182 +29 7 17 186 0 +29 7 18 109 0 +29 7 19 28 0 +29 7 20 0 0 +29 7 21 0 0 +29 7 22 0 0 +29 7 23 0 0 +29 7 24 0 0 +30 7 1 0 0 +30 7 2 0 0 +30 7 3 0 0 +30 7 4 0 0 +30 7 5 0 0 +30 7 6 13 0 +30 7 7 46 0 +30 7 8 49 0 +30 7 9 166 0 +30 7 10 183 0 +30 7 11 186 95 +30 7 12 339 96 +30 7 13 423 192 +30 7 14 581 571 +30 7 15 385 281 +30 7 16 375 271 +30 7 17 344 598 +30 7 18 118 153 +30 7 19 44 57 +30 7 20 0 0 +30 7 21 0 0 +30 7 22 0 0 +30 7 23 0 0 +30 7 24 0 0 +31 7 1 0 0 +31 7 2 0 0 +31 7 3 0 0 +31 7 4 0 0 +31 7 5 0 0 +31 7 6 89 499 +31 7 7 269 763 +31 7 8 455 859 +31 7 9 531 546 +31 7 10 654 659 +31 7 11 679 575 +31 7 12 786 679 +31 7 13 896 876 +31 7 14 775 859 +31 7 15 674 832 +31 7 16 614 820 +31 7 17 457 773 +31 7 18 271 610 +31 7 19 114 564 +31 7 20 0 0 +31 7 21 0 0 +31 7 22 0 0 +31 7 23 0 0 +31 7 24 0 0 +1 8 1 0 0 +1 8 2 0 0 +1 8 3 0 0 +1 8 4 0 0 +1 8 5 0 0 +1 8 6 33 0 +1 8 7 42 0 +1 8 8 229 86 +1 8 9 456 273 +1 8 10 303 94 +1 8 11 301 96 +1 8 12 719 675 +1 8 13 576 482 +1 8 14 544 479 +1 8 15 431 378 +1 8 16 432 364 +1 8 17 293 342 +1 8 18 195 381 +1 8 19 108 558 +1 8 20 0 0 +1 8 21 0 0 +1 8 22 0 0 +1 8 23 0 0 +1 8 24 0 0 +2 8 1 0 0 +2 8 2 0 0 +2 8 3 0 0 +2 8 4 0 0 +2 8 5 0 0 +2 8 6 94 483 +2 8 7 274 751 +2 8 8 426 679 +2 8 9 628 903 +2 8 10 769 935 +2 8 11 868 952 +2 8 12 923 962 +2 8 13 672 578 +2 8 14 734 767 +2 8 15 659 564 +2 8 16 441 453 +2 8 17 288 342 +2 8 18 102 76 +2 8 19 85 440 +2 8 20 0 0 +2 8 21 0 0 +2 8 22 0 0 +2 8 23 0 0 +2 8 24 0 0 +3 8 1 0 0 +3 8 2 0 0 +3 8 3 0 0 +3 8 4 0 0 +3 8 5 0 0 +3 8 6 51 53 +3 8 7 99 74 +3 8 8 128 0 +3 8 9 145 0 +3 8 10 182 0 +3 8 11 315 0 +3 8 12 212 0 +3 8 13 178 0 +3 8 14 298 95 +3 8 15 258 0 +3 8 16 209 0 +3 8 17 161 0 +3 8 18 99 0 +3 8 19 31 0 +3 8 20 0 0 +3 8 21 0 0 +3 8 22 0 0 +3 8 23 0 0 +3 8 24 0 0 +4 8 1 0 0 +4 8 2 0 0 +4 8 3 0 0 +4 8 4 0 0 +4 8 5 0 0 +4 8 6 63 260 +4 8 7 164 225 +4 8 8 228 256 +4 8 9 237 274 +4 8 10 696 762 +4 8 11 819 801 +4 8 12 876 723 +4 8 13 881 815 +4 8 14 824 877 +4 8 15 730 861 +4 8 16 598 834 +4 8 17 437 787 +4 8 18 267 699 +4 8 19 94 509 +4 8 20 0 0 +4 8 21 0 0 +4 8 22 0 0 +4 8 23 0 0 +4 8 24 0 0 +5 8 1 0 0 +5 8 2 0 0 +5 8 3 0 0 +5 8 4 0 0 +5 8 5 0 0 +5 8 6 89 523 +5 8 7 268 754 +5 8 8 451 849 +5 8 9 625 910 +5 8 10 713 847 +5 8 11 812 869 +5 8 12 845 877 +5 8 13 864 880 +5 8 14 811 874 +5 8 15 721 852 +5 8 16 634 914 +5 8 17 464 863 +5 8 18 277 764 +5 8 19 85 436 +5 8 20 0 0 +5 8 21 0 0 +5 8 22 0 0 +5 8 23 0 0 +5 8 24 0 0 +6 8 1 0 0 +6 8 2 0 0 +6 8 3 0 0 +6 8 4 0 0 +6 8 5 0 0 +6 8 6 41 103 +6 8 7 99 224 +6 8 8 167 171 +6 8 9 548 544 +6 8 10 712 751 +6 8 11 675 672 +6 8 12 694 678 +6 8 13 720 584 +6 8 14 599 581 +6 8 15 626 570 +6 8 16 539 642 +6 8 17 397 345 +6 8 18 233 609 +6 8 19 76 214 +6 8 20 0 0 +6 8 21 0 0 +6 8 22 0 0 +6 8 23 0 0 +6 8 24 0 0 +7 8 1 0 0 +7 8 2 0 0 +7 8 3 0 0 +7 8 4 0 0 +7 8 5 0 0 +7 8 6 48 401 +7 8 7 221 521 +7 8 8 409 594 +7 8 9 556 453 +7 8 10 707 657 +7 8 11 784 671 +7 8 12 835 773 +7 8 13 818 676 +7 8 14 665 668 +7 8 15 530 658 +7 8 16 476 545 +7 8 17 357 514 +7 8 18 99 225 +7 8 19 38 0 +7 8 20 0 0 +7 8 21 0 0 +7 8 22 0 0 +7 8 23 0 0 +7 8 24 0 0 +8 8 1 0 0 +8 8 2 0 0 +8 8 3 0 0 +8 8 4 0 0 +8 8 5 0 0 +8 8 6 26 0 +8 8 7 48 0 +8 8 8 98 0 +8 8 9 214 0 +8 8 10 266 0 +8 8 11 304 0 +8 8 12 166 95 +8 8 13 325 0 +8 8 14 118 0 +8 8 15 323 372 +8 8 16 415 535 +8 8 17 309 585 +8 8 18 64 0 +8 8 19 73 396 +8 8 20 0 0 +8 8 21 0 0 +8 8 22 0 0 +8 8 23 0 0 +8 8 24 0 0 +9 8 1 0 0 +9 8 2 0 0 +9 8 3 0 0 +9 8 4 0 0 +9 8 5 0 0 +9 8 6 63 433 +9 8 7 253 735 +9 8 8 171 84 +9 8 9 141 0 +9 8 10 177 0 +9 8 11 238 0 +9 8 12 289 0 +9 8 13 320 96 +9 8 14 433 189 +9 8 15 478 371 +9 8 16 431 357 +9 8 17 267 251 +9 8 18 119 295 +9 8 19 58 342 +9 8 20 0 0 +9 8 21 0 0 +9 8 22 0 0 +9 8 23 0 0 +9 8 24 0 0 +10 8 1 0 0 +10 8 2 0 0 +10 8 3 0 0 +10 8 4 0 0 +10 8 5 0 0 +10 8 6 61 342 +10 8 7 239 671 +10 8 8 418 771 +10 8 9 617 916 +10 8 10 761 948 +10 8 11 862 965 +10 8 12 919 978 +10 8 13 920 978 +10 8 14 866 969 +10 8 15 764 949 +10 8 16 621 917 +10 8 17 400 777 +10 8 18 260 756 +10 8 19 80 504 +10 8 20 0 0 +10 8 21 0 0 +10 8 22 0 0 +10 8 23 0 0 +10 8 24 0 0 +11 8 1 0 0 +11 8 2 0 0 +11 8 3 0 0 +11 8 4 0 0 +11 8 5 0 0 +11 8 6 72 477 +11 8 7 249 738 +11 8 8 435 847 +11 8 9 611 910 +11 8 10 752 940 +11 8 11 794 863 +11 8 12 846 879 +11 8 13 848 881 +11 8 14 795 869 +11 8 15 759 946 +11 8 16 561 819 +11 8 17 420 853 +11 8 18 239 744 +11 8 19 71 491 +11 8 20 0 0 +11 8 21 0 0 +11 8 22 0 0 +11 8 23 0 0 +11 8 24 0 0 +12 8 1 0 0 +12 8 2 0 0 +12 8 3 0 0 +12 8 4 0 0 +12 8 5 0 0 +12 8 6 64 370 +12 8 7 223 514 +12 8 8 302 338 +12 8 9 257 0 +12 8 10 342 0 +12 8 11 203 0 +12 8 12 263 0 +12 8 13 350 96 +12 8 14 386 190 +12 8 15 511 279 +12 8 16 467 535 +12 8 17 380 667 +12 8 18 170 507 +12 8 19 54 409 +12 8 20 0 0 +12 8 21 0 0 +12 8 22 0 0 +12 8 23 0 0 +12 8 24 0 0 +13 8 1 0 0 +13 8 2 0 0 +13 8 3 0 0 +13 8 4 0 0 +13 8 5 0 0 +13 8 6 29 88 +13 8 7 167 362 +13 8 8 155 166 +13 8 9 359 446 +13 8 10 698 836 +13 8 11 844 952 +13 8 12 848 865 +13 8 13 797 768 +13 8 14 650 569 +13 8 15 614 649 +13 8 16 498 629 +13 8 17 403 755 +13 8 18 210 653 +13 8 19 52 177 +13 8 20 0 0 +13 8 21 0 0 +13 8 22 0 0 +13 8 23 0 0 +13 8 24 0 0 +14 8 1 0 0 +14 8 2 0 0 +14 8 3 0 0 +14 8 4 0 0 +14 8 5 0 0 +14 8 6 55 394 +14 8 7 188 649 +14 8 8 429 751 +14 8 9 556 803 +14 8 10 681 833 +14 8 11 789 850 +14 8 12 689 574 +14 8 13 634 477 +14 8 14 544 378 +14 8 15 557 560 +14 8 16 531 627 +14 8 17 373 756 +14 8 18 207 654 +14 8 19 66 392 +14 8 20 0 0 +14 8 21 0 0 +14 8 22 0 0 +14 8 23 0 0 +14 8 24 0 0 +15 8 1 0 0 +15 8 2 0 0 +15 8 3 0 0 +15 8 4 0 0 +15 8 5 0 0 +15 8 6 59 386 +15 8 7 245 645 +15 8 8 432 831 +15 8 9 545 799 +15 8 10 678 833 +15 8 11 861 946 +15 8 12 936 953 +15 8 13 952 856 +15 8 14 795 758 +15 8 15 669 555 +15 8 16 529 622 +15 8 17 393 661 +15 8 18 193 571 +15 8 19 59 255 +15 8 20 0 0 +15 8 21 0 0 +15 8 22 0 0 +15 8 23 0 0 +15 8 24 0 0 +16 8 1 0 0 +16 8 2 0 0 +16 8 3 0 0 +16 8 4 0 0 +16 8 5 0 0 +16 8 6 36 164 +16 8 7 107 213 +16 8 8 225 331 +16 8 9 529 535 +16 8 10 620 554 +16 8 11 714 576 +16 8 12 691 762 +16 8 13 515 381 +16 8 14 421 377 +16 8 15 339 277 +16 8 16 247 89 +16 8 17 266 83 +16 8 18 199 425 +16 8 19 26 165 +16 8 20 0 0 +16 8 21 0 0 +16 8 22 0 0 +16 8 23 0 0 +16 8 24 0 0 +17 8 1 0 0 +17 8 2 0 0 +17 8 3 0 0 +17 8 4 0 0 +17 8 5 0 0 +17 8 6 28 123 +17 8 7 135 355 +17 8 8 266 332 +17 8 9 134 90 +17 8 10 289 187 +17 8 11 543 381 +17 8 12 303 193 +17 8 13 328 96 +17 8 14 221 96 +17 8 15 288 93 +17 8 16 99 89 +17 8 17 163 83 +17 8 18 84 71 +17 8 19 18 39 +17 8 20 0 0 +17 8 21 0 0 +17 8 22 0 0 +17 8 23 0 0 +17 8 24 0 0 +18 8 1 0 0 +18 8 2 0 0 +18 8 3 0 0 +18 8 4 0 0 +18 8 5 0 0 +18 8 6 20 82 +18 8 7 163 507 +18 8 8 381 758 +18 8 9 591 906 +18 8 10 478 378 +18 8 11 698 674 +18 8 12 845 876 +18 8 13 892 971 +18 8 14 838 964 +18 8 15 737 947 +18 8 16 587 906 +18 8 17 412 842 +18 8 18 223 654 +18 8 19 50 367 +18 8 20 0 0 +18 8 21 0 0 +18 8 22 0 0 +18 8 23 0 0 +18 8 24 0 0 +19 8 1 0 0 +19 8 2 0 0 +19 8 3 0 0 +19 8 4 0 0 +19 8 5 0 0 +19 8 6 51 366 +19 8 7 199 645 +19 8 8 309 502 +19 8 9 488 685 +19 8 10 639 656 +19 8 11 569 668 +19 8 12 390 289 +19 8 13 538 96 +19 8 14 626 191 +19 8 15 381 186 +19 8 16 232 180 +19 8 17 196 167 +19 8 18 128 356 +19 8 19 15 40 +19 8 20 0 0 +19 8 21 0 0 +19 8 22 0 0 +19 8 23 0 0 +19 8 24 0 0 +20 8 1 0 0 +20 8 2 0 0 +20 8 3 0 0 +20 8 4 0 0 +20 8 5 0 0 +20 8 6 31 274 +20 8 7 147 495 +20 8 8 326 586 +20 8 9 520 811 +20 8 10 170 93 +20 8 11 379 96 +20 8 12 463 194 +20 8 13 630 485 +20 8 14 535 481 +20 8 15 471 377 +20 8 16 411 453 +20 8 17 284 420 +20 8 18 163 431 +20 8 19 34 268 +20 8 20 0 0 +20 8 21 0 0 +20 8 22 0 0 +20 8 23 0 0 +20 8 24 0 0 +21 8 1 0 0 +21 8 2 0 0 +21 8 3 0 0 +21 8 4 0 0 +21 8 5 0 0 +21 8 6 46 406 +21 8 7 223 723 +21 8 8 409 845 +21 8 9 586 911 +21 8 10 733 949 +21 8 11 838 971 +21 8 12 892 981 +21 8 13 890 980 +21 8 14 830 966 +21 8 15 726 947 +21 8 16 576 905 +21 8 17 401 843 +21 8 18 211 714 +21 8 19 39 344 +21 8 20 0 0 +21 8 21 0 0 +21 8 22 0 0 +21 8 23 0 0 +21 8 24 0 0 +22 8 1 0 0 +22 8 2 0 0 +22 8 3 0 0 +22 8 4 0 0 +22 8 5 0 0 +22 8 6 42 382 +22 8 7 213 639 +22 8 8 398 749 +22 8 9 574 810 +22 8 10 722 938 +22 8 11 822 955 +22 8 12 876 967 +22 8 13 876 967 +22 8 14 821 959 +22 8 15 717 939 +22 8 16 569 901 +22 8 17 392 831 +22 8 18 204 698 +22 8 19 35 297 +22 8 20 0 0 +22 8 21 0 0 +22 8 22 0 0 +22 8 23 0 0 +22 8 24 0 0 +23 8 1 0 0 +23 8 2 0 0 +23 8 3 0 0 +23 8 4 0 0 +23 8 5 0 0 +23 8 6 18 106 +23 8 7 104 141 +23 8 8 188 166 +23 8 9 260 90 +23 8 10 404 186 +23 8 11 641 191 +23 8 12 617 386 +23 8 13 514 193 +23 8 14 574 383 +23 8 15 406 281 +23 8 16 242 90 +23 8 17 174 84 +23 8 18 66 141 +23 8 19 11 26 +23 8 20 0 0 +23 8 21 0 0 +23 8 22 0 0 +23 8 23 0 0 +23 8 24 0 0 +24 8 1 0 0 +24 8 2 0 0 +24 8 3 0 0 +24 8 4 0 0 +24 8 5 0 0 +24 8 6 10 0 +24 8 7 66 0 +24 8 8 74 0 +24 8 9 92 0 +24 8 10 116 0 +24 8 11 128 0 +24 8 12 124 0 +24 8 13 227 98 +24 8 14 214 97 +24 8 15 450 475 +24 8 16 411 546 +24 8 17 313 674 +24 8 18 172 566 +24 8 19 22 191 +24 8 20 0 0 +24 8 21 0 0 +24 8 22 0 0 +24 8 23 0 0 +24 8 24 0 0 +25 8 1 0 0 +25 8 2 0 0 +25 8 3 0 0 +25 8 4 0 0 +25 8 5 0 0 +25 8 6 36 314 +25 8 7 209 718 +25 8 8 356 765 +25 8 9 533 734 +25 8 10 697 858 +25 8 11 798 878 +25 8 12 780 785 +25 8 13 640 590 +25 8 14 616 488 +25 8 15 608 667 +25 8 16 338 183 +25 8 17 207 84 +25 8 18 95 70 +25 8 19 10 21 +25 8 20 0 0 +25 8 21 0 0 +25 8 22 0 0 +25 8 23 0 0 +25 8 24 0 0 +26 8 1 0 0 +26 8 2 0 0 +26 8 3 0 0 +26 8 4 0 0 +26 8 5 0 0 +26 8 6 27 166 +26 8 7 146 282 +26 8 8 227 251 +26 8 9 324 270 +26 8 10 382 0 +26 8 11 319 0 +26 8 12 306 194 +26 8 13 414 194 +26 8 14 341 96 +26 8 15 291 187 +26 8 16 394 451 +26 8 17 291 500 +26 8 18 116 275 +26 8 19 19 115 +26 8 20 0 0 +26 8 21 0 0 +26 8 22 0 0 +26 8 23 0 0 +26 8 24 0 0 +27 8 1 0 0 +27 8 2 0 0 +27 8 3 0 0 +27 8 4 0 0 +27 8 5 0 0 +27 8 6 31 259 +27 8 7 184 641 +27 8 8 357 763 +27 8 9 593 734 +27 8 10 743 669 +27 8 11 846 783 +27 8 12 812 891 +27 8 13 809 890 +27 8 14 754 879 +27 8 15 719 858 +27 8 16 492 732 +27 8 17 376 421 +27 8 18 176 279 +27 8 19 20 55 +27 8 20 0 0 +27 8 21 0 0 +27 8 22 0 0 +27 8 23 0 0 +27 8 24 0 0 +28 8 1 0 0 +28 8 2 0 0 +28 8 3 0 0 +28 8 4 0 0 +28 8 5 0 0 +28 8 6 24 26 +28 8 7 162 72 +28 8 8 278 85 +28 8 9 101 0 +28 8 10 54 0 +28 8 11 266 0 +28 8 12 131 0 +28 8 13 116 0 +28 8 14 132 0 +28 8 15 53 0 +28 8 16 80 0 +28 8 17 42 0 +28 8 18 48 0 +28 8 19 2 0 +28 8 20 0 0 +28 8 21 0 0 +28 8 22 0 0 +28 8 23 0 0 +28 8 24 0 0 +29 8 1 0 0 +29 8 2 0 0 +29 8 3 0 0 +29 8 4 0 0 +29 8 5 0 0 +29 8 6 8 0 +29 8 7 60 68 +29 8 8 139 0 +29 8 9 193 0 +29 8 10 83 0 +29 8 11 285 96 +29 8 12 471 388 +29 8 13 293 97 +29 8 14 362 192 +29 8 15 528 560 +29 8 16 464 711 +29 8 17 313 651 +29 8 18 28 131 +29 8 19 8 26 +29 8 20 0 0 +29 8 21 0 0 +29 8 22 0 0 +29 8 23 0 0 +29 8 24 0 0 +30 8 1 0 0 +30 8 2 0 0 +30 8 3 0 0 +30 8 4 0 0 +30 8 5 0 0 +30 8 6 21 157 +30 8 7 132 275 +30 8 8 301 165 +30 8 9 271 179 +30 8 10 345 93 +30 8 11 488 286 +30 8 12 484 482 +30 8 13 482 482 +30 8 14 709 685 +30 8 15 581 747 +30 8 16 440 604 +30 8 17 251 489 +30 8 18 104 261 +30 8 19 9 4 +30 8 20 0 0 +30 8 21 0 0 +30 8 22 0 0 +30 8 23 0 0 +30 8 24 0 0 +31 8 1 0 0 +31 8 2 0 0 +31 8 3 0 0 +31 8 4 0 0 +31 8 5 0 0 +31 8 6 19 136 +31 8 7 113 409 +31 8 8 148 250 +31 8 9 510 724 +31 8 10 665 754 +31 8 11 551 193 +31 8 12 147 98 +31 8 13 218 98 +31 8 14 285 193 +31 8 15 285 282 +31 8 16 320 357 +31 8 17 248 246 +31 8 18 91 325 +31 8 19 16 18 +31 8 20 0 0 +31 8 21 0 0 +31 8 22 0 0 +31 8 23 0 0 +31 8 24 0 0 +1 9 1 0 0 +1 9 2 0 0 +1 9 3 0 0 +1 9 4 0 0 +1 9 5 0 0 +1 9 6 10 26 +1 9 7 79 67 +1 9 8 221 82 +1 9 9 415 359 +1 9 10 609 562 +1 9 11 797 861 +1 9 12 846 868 +1 9 13 840 865 +1 9 14 780 854 +1 9 15 669 831 +1 9 16 541 790 +1 9 17 347 719 +1 9 18 153 567 +1 9 19 10 38 +1 9 20 0 0 +1 9 21 0 0 +1 9 22 0 0 +1 9 23 0 0 +1 9 24 0 0 +2 9 1 0 0 +2 9 2 0 0 +2 9 3 0 0 +2 9 4 0 0 +2 9 5 0 0 +2 9 6 18 93 +2 9 7 130 331 +2 9 8 339 649 +2 9 9 453 618 +2 9 10 563 646 +2 9 11 639 472 +2 9 12 323 0 +2 9 13 376 95 +2 9 14 352 94 +2 9 15 252 0 +2 9 16 191 0 +2 9 17 69 0 +2 9 18 56 61 +2 9 19 0 0 +2 9 20 0 0 +2 9 21 0 0 +2 9 22 0 0 +2 9 23 0 0 +2 9 24 0 0 +3 9 1 0 0 +3 9 2 0 0 +3 9 3 0 0 +3 9 4 0 0 +3 9 5 0 0 +3 9 6 8 17 +3 9 7 94 196 +3 9 8 89 0 +3 9 9 194 88 +3 9 10 262 92 +3 9 11 591 568 +3 9 12 389 191 +3 9 13 627 575 +3 9 14 678 756 +3 9 15 619 831 +3 9 16 507 880 +3 9 17 329 801 +3 9 18 142 625 +3 9 19 0 0 +3 9 20 0 0 +3 9 21 0 0 +3 9 22 0 0 +3 9 23 0 0 +3 9 24 0 0 +4 9 1 0 0 +4 9 2 0 0 +4 9 3 0 0 +4 9 4 0 0 +4 9 5 0 0 +4 9 6 14 72 +4 9 7 152 474 +4 9 8 181 416 +4 9 9 388 543 +4 9 10 595 660 +4 9 11 763 969 +4 9 12 733 783 +4 9 13 833 974 +4 9 14 772 962 +4 9 15 663 940 +4 9 16 508 892 +4 9 17 327 808 +4 9 18 138 622 +4 9 19 0 0 +4 9 20 0 0 +4 9 21 0 0 +4 9 22 0 0 +4 9 23 0 0 +4 9 24 0 0 +5 9 1 0 0 +5 9 2 0 0 +5 9 3 0 0 +5 9 4 0 0 +5 9 5 0 0 +5 9 6 24 71 +5 9 7 157 601 +5 9 8 355 817 +5 9 9 530 891 +5 9 10 674 932 +5 9 11 774 953 +5 9 12 827 966 +5 9 13 818 961 +5 9 14 758 949 +5 9 15 648 924 +5 9 16 492 788 +5 9 17 313 709 +5 9 18 129 538 +5 9 19 0 0 +5 9 20 0 0 +5 9 21 0 0 +5 9 22 0 0 +5 9 23 0 0 +5 9 24 0 0 +6 9 1 0 0 +6 9 2 0 0 +6 9 3 0 0 +6 9 4 0 0 +6 9 5 0 0 +6 9 6 6 0 +6 9 7 37 0 +6 9 8 111 0 +6 9 9 207 0 +6 9 10 144 0 +6 9 11 282 0 +6 9 12 301 0 +6 9 13 343 0 +6 9 14 115 0 +6 9 15 83 0 +6 9 16 70 0 +6 9 17 41 79 +6 9 18 15 0 +6 9 19 0 0 +6 9 20 0 0 +6 9 21 0 0 +6 9 22 0 0 +6 9 23 0 0 +6 9 24 0 0 +7 9 1 0 0 +7 9 2 0 0 +7 9 3 0 0 +7 9 4 0 0 +7 9 5 0 0 +7 9 6 12 55 +7 9 7 154 602 +7 9 8 308 746 +7 9 9 531 906 +7 9 10 677 947 +7 9 11 777 966 +7 9 12 828 978 +7 9 13 824 979 +7 9 14 682 871 +7 9 15 574 751 +7 9 16 429 715 +7 9 17 194 321 +7 9 18 71 241 +7 9 19 0 0 +7 9 20 0 0 +7 9 21 0 0 +7 9 22 0 0 +7 9 23 0 0 +7 9 24 0 0 +8 9 1 0 0 +8 9 2 0 0 +8 9 3 0 0 +8 9 4 0 0 +8 9 5 0 0 +8 9 6 10 43 +8 9 7 144 537 +8 9 8 353 835 +8 9 9 475 822 +8 9 10 606 859 +8 9 11 460 294 +8 9 12 380 99 +8 9 13 376 98 +8 9 14 257 97 +8 9 15 219 94 +8 9 16 162 90 +8 9 17 97 80 +8 9 18 45 60 +8 9 19 0 0 +8 9 20 0 0 +8 9 21 0 0 +8 9 22 0 0 +8 9 23 0 0 +8 9 24 0 0 +9 9 1 0 0 +9 9 2 0 0 +9 9 3 0 0 +9 9 4 0 0 +9 9 5 0 0 +9 9 6 1 9 +9 9 7 98 386 +9 9 8 189 413 +9 9 9 453 575 +9 9 10 579 660 +9 9 11 644 677 +9 9 12 587 589 +9 9 13 669 489 +9 9 14 618 484 +9 9 15 452 376 +9 9 16 339 445 +9 9 17 130 160 +9 9 18 40 118 +9 9 19 0 0 +9 9 20 0 0 +9 9 21 0 0 +9 9 22 0 0 +9 9 23 0 0 +9 9 24 0 0 +10 9 1 0 0 +10 9 2 0 0 +10 9 3 0 0 +10 9 4 0 0 +10 9 5 0 0 +10 9 6 0 0 +10 9 7 82 65 +10 9 8 168 164 +10 9 9 244 90 +10 9 10 279 0 +10 9 11 297 0 +10 9 12 523 388 +10 9 13 466 0 +10 9 14 359 96 +10 9 15 239 0 +10 9 16 105 0 +10 9 17 59 0 +10 9 18 19 0 +10 9 19 0 0 +10 9 20 0 0 +10 9 21 0 0 +10 9 22 0 0 +10 9 23 0 0 +10 9 24 0 0 +11 9 1 0 0 +11 9 2 0 0 +11 9 3 0 0 +11 9 4 0 0 +11 9 5 0 0 +11 9 6 0 0 +11 9 7 151 657 +11 9 8 294 660 +11 9 9 468 722 +11 9 10 604 699 +11 9 11 600 676 +11 9 12 574 585 +11 9 13 434 293 +11 9 14 288 96 +11 9 15 433 466 +11 9 16 174 88 +11 9 17 129 158 +11 9 18 70 282 +11 9 19 0 0 +11 9 20 0 0 +11 9 21 0 0 +11 9 22 0 0 +11 9 23 0 0 +11 9 24 0 0 +12 9 1 0 0 +12 9 2 0 0 +12 9 3 0 0 +12 9 4 0 0 +12 9 5 0 0 +12 9 6 0 0 +12 9 7 71 127 +12 9 8 69 82 +12 9 9 287 268 +12 9 10 372 281 +12 9 11 171 191 +12 9 12 291 0 +12 9 13 288 97 +12 9 14 394 96 +12 9 15 452 651 +12 9 16 375 616 +12 9 17 208 622 +12 9 18 86 490 +12 9 19 0 0 +12 9 20 0 0 +12 9 21 0 0 +12 9 22 0 0 +12 9 23 0 0 +12 9 24 0 0 +13 9 1 0 0 +13 9 2 0 0 +13 9 3 0 0 +13 9 4 0 0 +13 9 5 0 0 +13 9 6 0 0 +13 9 7 119 314 +13 9 8 334 646 +13 9 9 463 532 +13 9 10 590 464 +13 9 11 656 381 +13 9 12 646 288 +13 9 13 682 575 +13 9 14 636 471 +13 9 15 519 364 +13 9 16 375 430 +13 9 17 195 303 +13 9 18 56 205 +13 9 19 0 0 +13 9 20 0 0 +13 9 21 0 0 +13 9 22 0 0 +13 9 23 0 0 +13 9 24 0 0 +14 9 1 0 0 +14 9 2 0 0 +14 9 3 0 0 +14 9 4 0 0 +14 9 5 0 0 +14 9 6 0 0 +14 9 7 22 0 +14 9 8 107 0 +14 9 9 44 0 +14 9 10 40 0 +14 9 11 81 0 +14 9 12 82 0 +14 9 13 45 0 +14 9 14 45 0 +14 9 15 52 0 +14 9 16 101 0 +14 9 17 32 0 +14 9 18 16 0 +14 9 19 0 0 +14 9 20 0 0 +14 9 21 0 0 +14 9 22 0 0 +14 9 23 0 0 +14 9 24 0 0 +15 9 1 0 0 +15 9 2 0 0 +15 9 3 0 0 +15 9 4 0 0 +15 9 5 0 0 +15 9 6 0 0 +15 9 7 135 626 +15 9 8 289 647 +15 9 9 448 714 +15 9 10 573 843 +15 9 11 554 480 +15 9 12 383 194 +15 9 13 330 194 +15 9 14 266 96 +15 9 15 211 93 +15 9 16 169 88 +15 9 17 153 385 +15 9 18 57 356 +15 9 19 0 0 +15 9 20 0 0 +15 9 21 0 0 +15 9 22 0 0 +15 9 23 0 0 +15 9 24 0 0 +16 9 1 0 0 +16 9 2 0 0 +16 9 3 0 0 +16 9 4 0 0 +16 9 5 0 0 +16 9 6 0 0 +16 9 7 115 554 +16 9 8 281 720 +16 9 9 491 886 +16 9 10 557 840 +16 9 11 641 766 +16 9 12 650 677 +16 9 13 688 774 +16 9 14 589 667 +16 9 15 528 740 +16 9 16 387 694 +16 9 17 241 685 +16 9 18 71 477 +16 9 19 0 0 +16 9 20 0 0 +16 9 21 0 0 +16 9 22 0 0 +16 9 23 0 0 +16 9 24 0 0 +17 9 1 0 0 +17 9 2 0 0 +17 9 3 0 0 +17 9 4 0 0 +17 9 5 0 0 +17 9 6 0 0 +17 9 7 111 543 +17 9 8 311 794 +17 9 9 483 877 +17 9 10 558 829 +17 9 11 646 851 +17 9 12 726 859 +17 9 13 758 952 +17 9 14 696 941 +17 9 15 582 912 +17 9 16 427 856 +17 9 17 246 744 +17 9 18 64 454 +17 9 19 0 0 +17 9 20 0 0 +17 9 21 0 0 +17 9 22 0 0 +17 9 23 0 0 +17 9 24 0 0 +18 9 1 0 0 +18 9 2 0 0 +18 9 3 0 0 +18 9 4 0 0 +18 9 5 0 0 +18 9 6 0 0 +18 9 7 122 597 +18 9 8 307 793 +18 9 9 481 880 +18 9 10 619 832 +18 9 11 716 853 +18 9 12 711 861 +18 9 13 699 862 +18 9 14 643 849 +18 9 15 577 913 +18 9 16 404 860 +18 9 17 198 523 +18 9 18 50 314 +18 9 19 0 0 +18 9 20 0 0 +18 9 21 0 0 +18 9 22 0 0 +18 9 23 0 0 +18 9 24 0 0 +19 9 1 0 0 +19 9 2 0 0 +19 9 3 0 0 +19 9 4 0 0 +19 9 5 0 0 +19 9 6 0 0 +19 9 7 38 62 +19 9 8 128 82 +19 9 9 170 91 +19 9 10 288 96 +19 9 11 384 196 +19 9 12 358 99 +19 9 13 353 99 +19 9 14 322 98 +19 9 15 344 285 +19 9 16 249 268 +19 9 17 154 312 +19 9 18 40 240 +19 9 19 0 0 +19 9 20 0 0 +19 9 21 0 0 +19 9 22 0 0 +19 9 23 0 0 +19 9 24 0 0 +20 9 1 0 0 +20 9 2 0 0 +20 9 3 0 0 +20 9 4 0 0 +20 9 5 0 0 +20 9 6 0 0 +20 9 7 120 618 +20 9 8 307 812 +20 9 9 485 903 +20 9 10 597 666 +20 9 11 383 98 +20 9 12 417 99 +20 9 13 410 99 +20 9 14 206 97 +20 9 15 134 0 +20 9 16 164 88 +20 9 17 56 76 +20 9 18 22 45 +20 9 19 0 0 +20 9 20 0 0 +20 9 21 0 0 +20 9 22 0 0 +20 9 23 0 0 +20 9 24 0 0 +21 9 1 0 0 +21 9 2 0 0 +21 9 3 0 0 +21 9 4 0 0 +21 9 5 0 0 +21 9 6 0 0 +21 9 7 63 176 +21 9 8 235 320 +21 9 9 382 713 +21 9 10 521 186 +21 9 11 499 667 +21 9 12 637 577 +21 9 13 480 96 +21 9 14 595 601 +21 9 15 444 365 +21 9 16 171 0 +21 9 17 81 0 +21 9 18 22 0 +21 9 19 0 0 +21 9 20 0 0 +21 9 21 0 0 +21 9 22 0 0 +21 9 23 0 0 +21 9 24 0 0 +22 9 1 0 0 +22 9 2 0 0 +22 9 3 0 0 +22 9 4 0 0 +22 9 5 0 0 +22 9 6 0 0 +22 9 7 52 118 +22 9 8 157 240 +22 9 9 381 624 +22 9 10 616 940 +22 9 11 666 872 +22 9 12 676 589 +22 9 13 457 490 +22 9 14 497 387 +22 9 15 428 373 +22 9 16 332 523 +22 9 17 204 524 +22 9 18 39 280 +22 9 19 0 0 +22 9 20 0 0 +22 9 21 0 0 +22 9 22 0 0 +22 9 23 0 0 +22 9 24 0 0 +23 9 1 0 0 +23 9 2 0 0 +23 9 3 0 0 +23 9 4 0 0 +23 9 5 0 0 +23 9 6 0 0 +23 9 7 109 598 +23 9 8 296 809 +23 9 9 473 900 +23 9 10 617 947 +23 9 11 717 974 +23 9 12 762 984 +23 9 13 749 981 +23 9 14 678 961 +23 9 15 560 929 +23 9 16 401 868 +23 9 17 216 739 +23 9 18 38 344 +23 9 19 0 0 +23 9 20 0 0 +23 9 21 0 0 +23 9 22 0 0 +23 9 23 0 0 +23 9 24 0 0 +24 9 1 0 0 +24 9 2 0 0 +24 9 3 0 0 +24 9 4 0 0 +24 9 5 0 0 +24 9 6 0 0 +24 9 7 104 583 +24 9 8 204 479 +24 9 9 460 881 +24 9 10 606 936 +24 9 11 705 963 +24 9 12 750 974 +24 9 13 738 971 +24 9 14 670 955 +24 9 15 546 740 +24 9 16 398 693 +24 9 17 211 588 +24 9 18 35 272 +24 9 19 0 0 +24 9 20 0 0 +24 9 21 0 0 +24 9 22 0 0 +24 9 23 0 0 +24 9 24 0 0 +25 9 1 0 0 +25 9 2 0 0 +25 9 3 0 0 +25 9 4 0 0 +25 9 5 0 0 +25 9 6 0 0 +25 9 7 53 226 +25 9 8 194 237 +25 9 9 257 266 +25 9 10 534 652 +25 9 11 609 669 +25 9 12 599 483 +25 9 13 421 192 +25 9 14 522 565 +25 9 15 381 544 +25 9 16 206 0 +25 9 17 121 141 +25 9 18 10 26 +25 9 19 0 0 +25 9 20 0 0 +25 9 21 0 0 +25 9 22 0 0 +25 9 23 0 0 +25 9 24 0 0 +26 9 1 0 0 +26 9 2 0 0 +26 9 3 0 0 +26 9 4 0 0 +26 9 5 0 0 +26 9 6 0 0 +26 9 7 83 441 +26 9 8 278 783 +26 9 9 451 878 +26 9 10 526 743 +26 9 11 611 761 +26 9 12 522 483 +26 9 13 422 289 +26 9 14 424 380 +26 9 15 411 548 +26 9 16 333 678 +26 9 17 184 643 +26 9 18 27 204 +26 9 19 0 0 +26 9 20 0 0 +26 9 21 0 0 +26 9 22 0 0 +26 9 23 0 0 +26 9 24 0 0 +27 9 1 0 0 +27 9 2 0 0 +27 9 3 0 0 +27 9 4 0 0 +27 9 5 0 0 +27 9 6 0 0 +27 9 7 92 552 +27 9 8 276 786 +27 9 9 445 874 +27 9 10 591 931 +27 9 11 688 958 +27 9 12 730 966 +27 9 13 717 964 +27 9 14 647 946 +27 9 15 525 904 +27 9 16 366 833 +27 9 17 189 695 +27 9 18 21 153 +27 9 19 0 0 +27 9 20 0 0 +27 9 21 0 0 +27 9 22 0 0 +27 9 23 0 0 +27 9 24 0 0 +28 9 1 0 0 +28 9 2 0 0 +28 9 3 0 0 +28 9 4 0 0 +28 9 5 0 0 +28 9 6 0 0 +28 9 7 42 54 +28 9 8 153 0 +28 9 9 332 87 +28 9 10 376 92 +28 9 11 220 0 +28 9 12 331 0 +28 9 13 276 0 +28 9 14 178 0 +28 9 15 178 0 +28 9 16 96 0 +28 9 17 40 0 +28 9 18 4 13 +28 9 19 0 0 +28 9 20 0 0 +28 9 21 0 0 +28 9 22 0 0 +28 9 23 0 0 +28 9 24 0 0 +29 9 1 0 0 +29 9 2 0 0 +29 9 3 0 0 +29 9 4 0 0 +29 9 5 0 0 +29 9 6 0 0 +29 9 7 25 0 +29 9 8 92 0 +29 9 9 161 0 +29 9 10 131 0 +29 9 11 189 0 +29 9 12 184 0 +29 9 13 232 0 +29 9 14 192 0 +29 9 15 153 0 +29 9 16 146 163 +29 9 17 52 0 +29 9 18 4 0 +29 9 19 0 0 +29 9 20 0 0 +29 9 21 0 0 +29 9 22 0 0 +29 9 23 0 0 +29 9 24 0 0 +30 9 1 0 0 +30 9 2 0 0 +30 9 3 0 0 +30 9 4 0 0 +30 9 5 0 0 +30 9 6 0 0 +30 9 7 26 0 +30 9 8 92 0 +30 9 9 161 0 +30 9 10 218 0 +30 9 11 134 0 +30 9 12 143 0 +30 9 13 302 380 +30 9 14 548 744 +30 9 15 433 713 +30 9 16 277 653 +30 9 17 155 528 +30 9 18 13 51 +30 9 19 0 0 +30 9 20 0 0 +30 9 21 0 0 +30 9 22 0 0 +30 9 23 0 0 +30 9 24 0 0 +1 10 1 0 0 +1 10 2 0 0 +1 10 3 0 0 +1 10 4 0 0 +1 10 5 0 0 +1 10 6 0 0 +1 10 7 36 0 +1 10 8 145 76 +1 10 9 118 86 +1 10 10 454 731 +1 10 11 375 377 +1 10 12 338 286 +1 10 13 473 381 +1 10 14 438 468 +1 10 15 393 538 +1 10 16 294 494 +1 10 17 138 332 +1 10 18 11 34 +1 10 19 0 0 +1 10 20 0 0 +1 10 21 0 0 +1 10 22 0 0 +1 10 23 0 0 +1 10 24 0 0 +2 10 1 0 0 +2 10 2 0 0 +2 10 3 0 0 +2 10 4 0 0 +2 10 5 0 0 +2 10 6 0 0 +2 10 7 25 0 +2 10 8 93 0 +2 10 9 155 0 +2 10 10 264 0 +2 10 11 293 0 +2 10 12 265 0 +2 10 13 227 0 +2 10 14 135 0 +2 10 15 100 0 +2 10 16 103 0 +2 10 17 78 66 +2 10 18 5 9 +2 10 19 0 0 +2 10 20 0 0 +2 10 21 0 0 +2 10 22 0 0 +2 10 23 0 0 +2 10 24 0 0 +3 10 1 0 0 +3 10 2 0 0 +3 10 3 0 0 +3 10 4 0 0 +3 10 5 0 0 +3 10 6 0 0 +3 10 7 14 0 +3 10 8 51 0 +3 10 9 236 431 +3 10 10 304 91 +3 10 11 404 94 +3 10 12 370 475 +3 10 13 356 0 +3 10 14 321 0 +3 10 15 249 0 +3 10 16 163 0 +3 10 17 56 0 +3 10 18 0 0 +3 10 19 0 0 +3 10 20 0 0 +3 10 21 0 0 +3 10 22 0 0 +3 10 23 0 0 +3 10 24 0 0 +4 10 1 0 0 +4 10 2 0 0 +4 10 3 0 0 +4 10 4 0 0 +4 10 5 0 0 +4 10 6 0 0 +4 10 7 19 0 +4 10 8 79 0 +4 10 9 142 0 +4 10 10 235 92 +4 10 11 229 95 +4 10 12 245 96 +4 10 13 249 95 +4 10 14 204 94 +4 10 15 207 0 +4 10 16 88 0 +4 10 17 28 0 +4 10 18 0 0 +4 10 19 0 0 +4 10 20 0 0 +4 10 21 0 0 +4 10 22 0 0 +4 10 23 0 0 +4 10 24 0 0 +5 10 1 0 0 +5 10 2 0 0 +5 10 3 0 0 +5 10 4 0 0 +5 10 5 0 0 +5 10 6 0 0 +5 10 7 26 48 +5 10 8 103 77 +5 10 9 268 354 +5 10 10 360 375 +5 10 11 339 193 +5 10 12 361 195 +5 10 13 439 388 +5 10 14 109 0 +5 10 15 215 91 +5 10 16 103 84 +5 10 17 68 131 +5 10 18 0 0 +5 10 19 0 0 +5 10 20 0 0 +5 10 21 0 0 +5 10 22 0 0 +5 10 23 0 0 +5 10 24 0 0 +6 10 1 0 0 +6 10 2 0 0 +6 10 3 0 0 +6 10 4 0 0 +6 10 5 0 0 +6 10 6 0 0 +6 10 7 15 47 +6 10 8 49 154 +6 10 9 72 88 +6 10 10 289 282 +6 10 11 91 97 +6 10 12 161 98 +6 10 13 147 98 +6 10 14 246 96 +6 10 15 194 92 +6 10 16 116 0 +6 10 17 56 66 +6 10 18 0 0 +6 10 19 0 0 +6 10 20 0 0 +6 10 21 0 0 +6 10 22 0 0 +6 10 23 0 0 +6 10 24 0 0 +7 10 1 0 0 +7 10 2 0 0 +7 10 3 0 0 +7 10 4 0 0 +7 10 5 0 0 +7 10 6 0 0 +7 10 7 42 285 +7 10 8 184 385 +7 10 9 409 880 +7 10 10 551 939 +7 10 11 540 776 +7 10 12 616 883 +7 10 13 600 879 +7 10 14 494 667 +7 10 15 422 820 +7 10 16 186 416 +7 10 17 94 576 +7 10 18 0 0 +7 10 19 0 0 +7 10 20 0 0 +7 10 21 0 0 +7 10 22 0 0 +7 10 23 0 0 +7 10 24 0 0 +8 10 1 0 0 +8 10 2 0 0 +8 10 3 0 0 +8 10 4 0 0 +8 10 5 0 0 +8 10 6 0 0 +8 10 7 49 404 +8 10 8 217 606 +8 10 9 264 174 +8 10 10 354 185 +8 10 11 385 190 +8 10 12 270 96 +8 10 13 295 96 +8 10 14 221 0 +8 10 15 125 0 +8 10 16 78 0 +8 10 17 23 0 +8 10 18 0 0 +8 10 19 0 0 +8 10 20 0 0 +8 10 21 0 0 +8 10 22 0 0 +8 10 23 0 0 +8 10 24 0 0 +9 10 1 0 0 +9 10 2 0 0 +9 10 3 0 0 +9 10 4 0 0 +9 10 5 0 0 +9 10 6 0 0 +9 10 7 20 43 +9 10 8 71 76 +9 10 9 218 433 +9 10 10 224 185 +9 10 11 222 96 +9 10 12 237 96 +9 10 13 231 96 +9 10 14 261 95 +9 10 15 204 91 +9 10 16 96 83 +9 10 17 50 125 +9 10 18 0 0 +9 10 19 0 0 +9 10 20 0 0 +9 10 21 0 0 +9 10 22 0 0 +9 10 23 0 0 +9 10 24 0 0 +10 10 1 0 0 +10 10 2 0 0 +10 10 3 0 0 +10 10 4 0 0 +10 10 5 0 0 +10 10 6 0 0 +10 10 7 48 453 +10 10 8 226 768 +10 10 9 397 881 +10 10 10 539 941 +10 10 11 638 978 +10 10 12 678 987 +10 10 13 660 983 +10 10 14 586 962 +10 10 15 461 918 +10 10 16 299 833 +10 10 17 116 630 +10 10 18 0 0 +10 10 19 0 0 +10 10 20 0 0 +10 10 21 0 0 +10 10 22 0 0 +10 10 23 0 0 +10 10 24 0 0 +11 10 1 0 0 +11 10 2 0 0 +11 10 3 0 0 +11 10 4 0 0 +11 10 5 0 0 +11 10 6 0 0 +11 10 7 45 421 +11 10 8 219 754 +11 10 9 390 874 +11 10 10 529 932 +11 10 11 623 961 +11 10 12 663 973 +11 10 13 653 969 +11 10 14 582 942 +11 10 15 464 903 +11 10 16 293 811 +11 10 17 110 598 +11 10 18 0 0 +11 10 19 0 0 +11 10 20 0 0 +11 10 21 0 0 +11 10 22 0 0 +11 10 23 0 0 +11 10 24 0 0 +12 10 1 0 0 +12 10 2 0 0 +12 10 3 0 0 +12 10 4 0 0 +12 10 5 0 0 +12 10 6 0 0 +12 10 7 43 297 +12 10 8 205 224 +12 10 9 334 172 +12 10 10 425 92 +12 10 11 513 95 +12 10 12 552 192 +12 10 13 511 96 +12 10 14 379 187 +12 10 15 393 619 +12 10 16 186 159 +12 10 17 59 58 +12 10 18 0 0 +12 10 19 0 0 +12 10 20 0 0 +12 10 21 0 0 +12 10 22 0 0 +12 10 23 0 0 +12 10 24 0 0 +13 10 1 0 0 +13 10 2 0 0 +13 10 3 0 0 +13 10 4 0 0 +13 10 5 0 0 +13 10 6 0 0 +13 10 7 12 0 +13 10 8 69 0 +13 10 9 114 0 +13 10 10 191 0 +13 10 11 227 0 +13 10 12 195 0 +13 10 13 235 0 +13 10 14 206 0 +13 10 15 144 0 +13 10 16 93 0 +13 10 17 30 0 +13 10 18 0 0 +13 10 19 0 0 +13 10 20 0 0 +13 10 21 0 0 +13 10 22 0 0 +13 10 23 0 0 +13 10 24 0 0 +14 10 1 0 0 +14 10 2 0 0 +14 10 3 0 0 +14 10 4 0 0 +14 10 5 0 0 +14 10 6 0 0 +14 10 7 6 0 +14 10 8 63 0 +14 10 9 69 0 +14 10 10 83 0 +14 10 11 83 0 +14 10 12 164 0 +14 10 13 201 0 +14 10 14 168 90 +14 10 15 112 0 +14 10 16 113 76 +14 10 17 41 54 +14 10 18 0 0 +14 10 19 0 0 +14 10 20 0 0 +14 10 21 0 0 +14 10 22 0 0 +14 10 23 0 0 +14 10 24 0 0 +15 10 1 0 0 +15 10 2 0 0 +15 10 3 0 0 +15 10 4 0 0 +15 10 5 0 0 +15 10 6 0 0 +15 10 7 31 251 +15 10 8 168 515 +15 10 9 153 87 +15 10 10 214 92 +15 10 11 268 95 +15 10 12 286 96 +15 10 13 283 191 +15 10 14 180 93 +15 10 15 373 710 +15 10 16 129 159 +15 10 17 33 54 +15 10 18 0 0 +15 10 19 0 0 +15 10 20 0 0 +15 10 21 0 0 +15 10 22 0 0 +15 10 23 0 0 +15 10 24 0 0 +16 10 1 0 0 +16 10 2 0 0 +16 10 3 0 0 +16 10 4 0 0 +16 10 5 0 0 +16 10 6 0 0 +16 10 7 10 0 +16 10 8 65 0 +16 10 9 124 0 +16 10 10 97 93 +16 10 11 218 96 +16 10 12 253 97 +16 10 13 302 192 +16 10 14 386 468 +16 10 15 156 88 +16 10 16 88 236 +16 10 17 24 105 +16 10 18 0 0 +16 10 19 0 0 +16 10 20 0 0 +16 10 21 0 0 +16 10 22 0 0 +16 10 23 0 0 +16 10 24 0 0 +17 10 1 0 0 +17 10 2 0 0 +17 10 3 0 0 +17 10 4 0 0 +17 10 5 0 0 +17 10 6 0 0 +17 10 7 24 170 +17 10 8 124 288 +17 10 9 155 86 +17 10 10 185 0 +17 10 11 359 94 +17 10 12 447 287 +17 10 13 406 573 +17 10 14 425 560 +17 10 15 284 354 +17 10 16 151 236 +17 10 17 55 256 +17 10 18 0 0 +17 10 19 0 0 +17 10 20 0 0 +17 10 21 0 0 +17 10 22 0 0 +17 10 23 0 0 +17 10 24 0 0 +18 10 1 0 0 +18 10 2 0 0 +18 10 3 0 0 +18 10 4 0 0 +18 10 5 0 0 +18 10 6 0 0 +18 10 7 25 187 +18 10 8 187 726 +18 10 9 356 861 +18 10 10 493 923 +18 10 11 584 953 +18 10 12 589 871 +18 10 13 570 866 +18 10 14 528 936 +18 10 15 406 888 +18 10 16 246 785 +18 10 17 70 504 +18 10 18 0 0 +18 10 19 0 0 +18 10 20 0 0 +18 10 21 0 0 +18 10 22 0 0 +18 10 23 0 0 +18 10 24 0 0 +19 10 1 0 0 +19 10 2 0 0 +19 10 3 0 0 +19 10 4 0 0 +19 10 5 0 0 +19 10 6 0 0 +19 10 7 21 140 +19 10 8 165 566 +19 10 9 321 679 +19 10 10 483 914 +19 10 11 573 943 +19 10 12 610 954 +19 10 13 568 853 +19 10 14 481 739 +19 10 15 315 439 +19 10 16 210 541 +19 10 17 62 439 +19 10 18 0 0 +19 10 19 0 0 +19 10 20 0 0 +19 10 21 0 0 +19 10 22 0 0 +19 10 23 0 0 +19 10 24 0 0 +20 10 1 0 0 +20 10 2 0 0 +20 10 3 0 0 +20 10 4 0 0 +20 10 5 0 0 +20 10 6 0 0 +20 10 7 16 89 +20 10 8 146 348 +20 10 9 305 419 +20 10 10 406 451 +20 10 11 540 749 +20 10 12 457 378 +20 10 13 493 565 +20 10 14 451 642 +20 10 15 270 259 +20 10 16 153 226 +20 10 17 39 183 +20 10 18 0 0 +20 10 19 0 0 +20 10 20 0 0 +20 10 21 0 0 +20 10 22 0 0 +20 10 23 0 0 +20 10 24 0 0 +21 10 1 0 0 +21 10 2 0 0 +21 10 3 0 0 +21 10 4 0 0 +21 10 5 0 0 +21 10 6 0 0 +21 10 7 8 17 +21 10 8 55 0 +21 10 9 32 0 +21 10 10 105 0 +21 10 11 108 0 +21 10 12 116 0 +21 10 13 112 0 +21 10 14 95 0 +21 10 15 181 170 +21 10 16 182 516 +21 10 17 46 263 +21 10 18 0 0 +21 10 19 0 0 +21 10 20 0 0 +21 10 21 0 0 +21 10 22 0 0 +21 10 23 0 0 +21 10 24 0 0 +22 10 1 0 0 +22 10 2 0 0 +22 10 3 0 0 +22 10 4 0 0 +22 10 5 0 0 +22 10 6 0 0 +22 10 7 3 0 +22 10 8 70 137 +22 10 9 194 331 +22 10 10 263 447 +22 10 11 516 830 +22 10 12 585 937 +22 10 13 564 929 +22 10 14 404 543 +22 10 15 289 340 +22 10 16 101 73 +22 10 17 22 43 +22 10 18 0 0 +22 10 19 0 0 +22 10 20 0 0 +22 10 21 0 0 +22 10 22 0 0 +22 10 23 0 0 +22 10 24 0 0 +23 10 1 0 0 +23 10 2 0 0 +23 10 3 0 0 +23 10 4 0 0 +23 10 5 0 0 +23 10 6 0 0 +23 10 7 4 0 +23 10 8 77 133 +23 10 9 173 245 +23 10 10 425 712 +23 10 11 244 93 +23 10 12 339 283 +23 10 13 364 376 +23 10 14 219 92 +23 10 15 162 87 +23 10 16 119 224 +23 10 17 23 87 +23 10 18 0 0 +23 10 19 0 0 +23 10 20 0 0 +23 10 21 0 0 +23 10 22 0 0 +23 10 23 0 0 +23 10 24 0 0 +24 10 1 0 0 +24 10 2 0 0 +24 10 3 0 0 +24 10 4 0 0 +24 10 5 0 0 +24 10 6 0 0 +24 10 7 1 0 +24 10 8 81 138 +24 10 9 226 422 +24 10 10 218 183 +24 10 11 311 285 +24 10 12 341 288 +24 10 13 436 573 +24 10 14 378 558 +24 10 15 348 784 +24 10 16 211 753 +24 10 17 44 412 +24 10 18 0 0 +24 10 19 0 0 +24 10 20 0 0 +24 10 21 0 0 +24 10 22 0 0 +24 10 23 0 0 +24 10 24 0 0 +25 10 1 0 0 +25 10 2 0 0 +25 10 3 0 0 +25 10 4 0 0 +25 10 5 0 0 +25 10 6 0 0 +25 10 7 1 17 +25 10 8 154 682 +25 10 9 318 837 +25 10 10 452 906 +25 10 11 541 939 +25 10 12 578 951 +25 10 13 558 946 +25 10 14 484 920 +25 10 15 358 775 +25 10 16 201 665 +25 10 17 39 327 +25 10 18 0 0 +25 10 19 0 0 +25 10 20 0 0 +25 10 21 0 0 +25 10 22 0 0 +25 10 23 0 0 +25 10 24 0 0 +26 10 1 0 0 +26 10 2 0 0 +26 10 3 0 0 +26 10 4 0 0 +26 10 5 0 0 +26 10 6 0 0 +26 10 7 1 9 +26 10 8 154 470 +26 10 9 266 332 +26 10 10 351 363 +26 10 11 394 281 +26 10 12 422 285 +26 10 13 361 283 +26 10 14 289 92 +26 10 15 301 428 +26 10 16 99 146 +26 10 17 28 157 +26 10 18 0 0 +26 10 19 0 0 +26 10 20 0 0 +26 10 21 0 0 +26 10 22 0 0 +26 10 23 0 0 +26 10 24 0 0 +27 10 1 0 0 +27 10 2 0 0 +27 10 3 0 0 +27 10 4 0 0 +27 10 5 0 0 +27 10 6 0 0 +27 10 7 0 0 +27 10 8 18 0 +27 10 9 62 0 +27 10 10 97 0 +27 10 11 111 0 +27 10 12 120 0 +27 10 13 139 0 +27 10 14 81 0 +27 10 15 84 0 +27 10 16 33 0 +27 10 17 5 0 +27 10 18 0 0 +27 10 19 0 0 +27 10 20 0 0 +27 10 21 0 0 +27 10 22 0 0 +27 10 23 0 0 +27 10 24 0 0 +28 10 1 0 0 +28 10 2 0 0 +28 10 3 0 0 +28 10 4 0 0 +28 10 5 0 0 +28 10 6 0 0 +28 10 7 0 0 +28 10 8 37 0 +28 10 9 97 0 +28 10 10 142 88 +28 10 11 218 92 +28 10 12 192 93 +28 10 13 201 0 +28 10 14 102 0 +28 10 15 119 83 +28 10 16 61 0 +28 10 17 10 0 +28 10 18 0 0 +28 10 19 0 0 +28 10 20 0 0 +28 10 21 0 0 +28 10 22 0 0 +28 10 23 0 0 +28 10 24 0 0 +29 10 1 0 0 +29 10 2 0 0 +29 10 3 0 0 +29 10 4 0 0 +29 10 5 0 0 +29 10 6 0 0 +29 10 7 0 0 +29 10 8 74 189 +29 10 9 304 804 +29 10 10 434 877 +29 10 11 385 456 +29 10 12 416 463 +29 10 13 494 733 +29 10 14 391 533 +29 10 15 179 165 +29 10 16 79 0 +29 10 17 9 0 +29 10 18 0 0 +29 10 19 0 0 +29 10 20 0 0 +29 10 21 0 0 +29 10 22 0 0 +29 10 23 0 0 +29 10 24 0 0 +30 10 1 0 0 +30 10 2 0 0 +30 10 3 0 0 +30 10 4 0 0 +30 10 5 0 0 +30 10 6 0 0 +30 10 7 0 0 +30 10 8 24 64 +30 10 9 95 83 +30 10 10 196 90 +30 10 11 426 565 +30 10 12 356 381 +30 10 13 309 284 +30 10 14 203 92 +30 10 15 175 257 +30 10 16 123 361 +30 10 17 22 153 +30 10 18 0 0 +30 10 19 0 0 +30 10 20 0 0 +30 10 21 0 0 +30 10 22 0 0 +30 10 23 0 0 +30 10 24 0 0 +31 10 1 0 0 +31 10 2 0 0 +31 10 3 0 0 +31 10 4 0 0 +31 10 5 0 0 +31 10 6 0 0 +31 10 7 0 0 +31 10 8 128 651 +31 10 9 290 829 +31 10 10 422 901 +31 10 11 511 938 +31 10 12 553 950 +31 10 13 532 941 +31 10 14 458 915 +31 10 15 334 851 +31 10 16 183 713 +31 10 17 23 157 +31 10 18 0 0 +31 10 19 0 0 +31 10 20 0 0 +31 10 21 0 0 +31 10 22 0 0 +31 10 23 0 0 +31 10 24 0 0 +1 11 1 0 0 +1 11 2 0 0 +1 11 3 0 0 +1 11 4 0 0 +1 11 5 0 0 +1 11 6 0 0 +1 11 7 0 0 +1 11 8 103 385 +1 11 9 104 82 +1 11 10 181 89 +1 11 11 198 93 +1 11 12 513 753 +1 11 13 458 652 +1 11 14 449 540 +1 11 15 284 333 +1 11 16 88 137 +1 11 17 6 13 +1 11 18 0 0 +1 11 19 0 0 +1 11 20 0 0 +1 11 21 0 0 +1 11 22 0 0 +1 11 23 0 0 +1 11 24 0 0 +2 11 1 0 0 +2 11 2 0 0 +2 11 3 0 0 +2 11 4 0 0 +2 11 5 0 0 +2 11 6 0 0 +2 11 7 0 0 +2 11 8 88 506 +2 11 9 198 575 +2 11 10 316 632 +2 11 11 476 851 +2 11 12 479 767 +2 11 13 433 670 +2 11 14 343 558 +2 11 15 308 782 +2 11 16 129 579 +2 11 17 15 106 +2 11 18 0 0 +2 11 19 0 0 +2 11 20 0 0 +2 11 21 0 0 +2 11 22 0 0 +2 11 23 0 0 +2 11 24 0 0 +3 11 1 0 0 +3 11 2 0 0 +3 11 3 0 0 +3 11 4 0 0 +3 11 5 0 0 +3 11 6 0 0 +3 11 7 0 0 +3 11 8 98 568 +3 11 9 257 815 +3 11 10 409 904 +3 11 11 497 941 +3 11 12 533 952 +3 11 13 515 946 +3 11 14 391 825 +3 11 15 322 855 +3 11 16 162 705 +3 11 17 3 35 +3 11 18 0 0 +3 11 19 0 0 +3 11 20 0 0 +3 11 21 0 0 +3 11 22 0 0 +3 11 23 0 0 +3 11 24 0 0 +4 11 1 0 0 +4 11 2 0 0 +4 11 3 0 0 +4 11 4 0 0 +4 11 5 0 0 +4 11 6 0 0 +4 11 7 0 0 +4 11 8 109 615 +4 11 9 267 809 +4 11 10 399 891 +4 11 11 488 932 +4 11 12 522 941 +4 11 13 404 749 +4 11 14 339 546 +4 11 15 184 170 +4 11 16 57 69 +4 11 17 8 9 +4 11 18 0 0 +4 11 19 0 0 +4 11 20 0 0 +4 11 21 0 0 +4 11 22 0 0 +4 11 23 0 0 +4 11 24 0 0 +5 11 1 0 0 +5 11 2 0 0 +5 11 3 0 0 +5 11 4 0 0 +5 11 5 0 0 +5 11 6 0 0 +5 11 7 0 0 +5 11 8 27 0 +5 11 9 67 0 +5 11 10 129 0 +5 11 11 162 0 +5 11 12 190 0 +5 11 13 153 0 +5 11 14 141 0 +5 11 15 88 0 +5 11 16 32 0 +5 11 17 1 0 +5 11 18 0 0 +5 11 19 0 0 +5 11 20 0 0 +5 11 21 0 0 +5 11 22 0 0 +5 11 23 0 0 +5 11 24 0 0 +6 11 1 0 0 +6 11 2 0 0 +6 11 3 0 0 +6 11 4 0 0 +6 11 5 0 0 +6 11 6 0 0 +6 11 7 0 0 +6 11 8 47 115 +6 11 9 75 79 +6 11 10 120 88 +6 11 11 233 183 +6 11 12 413 559 +6 11 13 333 371 +6 11 14 217 179 +6 11 15 128 248 +6 11 16 45 67 +6 11 17 4 0 +6 11 18 0 0 +6 11 19 0 0 +6 11 20 0 0 +6 11 21 0 0 +6 11 22 0 0 +6 11 23 0 0 +6 11 24 0 0 +7 11 1 0 0 +7 11 2 0 0 +7 11 3 0 0 +7 11 4 0 0 +7 11 5 0 0 +7 11 6 0 0 +7 11 7 0 0 +7 11 8 97 599 +7 11 9 256 810 +7 11 10 389 899 +7 11 11 477 937 +7 11 12 513 950 +7 11 13 491 939 +7 11 14 419 910 +7 11 15 298 842 +7 11 16 144 682 +7 11 17 2 26 +7 11 18 0 0 +7 11 19 0 0 +7 11 20 0 0 +7 11 21 0 0 +7 11 22 0 0 +7 11 23 0 0 +7 11 24 0 0 +8 11 1 0 0 +8 11 2 0 0 +8 11 3 0 0 +8 11 4 0 0 +8 11 5 0 0 +8 11 6 0 0 +8 11 7 0 0 +8 11 8 87 575 +8 11 9 268 795 +8 11 10 406 792 +8 11 11 439 832 +8 11 12 491 729 +8 11 13 471 723 +8 11 14 316 452 +8 11 15 192 167 +8 11 16 79 201 +8 11 17 0 0 +8 11 18 0 0 +8 11 19 0 0 +8 11 20 0 0 +8 11 21 0 0 +8 11 22 0 0 +8 11 23 0 0 +8 11 24 0 0 +9 11 1 0 0 +9 11 2 0 0 +9 11 3 0 0 +9 11 4 0 0 +9 11 5 0 0 +9 11 6 0 0 +9 11 7 0 0 +9 11 8 28 57 +9 11 9 70 0 +9 11 10 142 88 +9 11 11 203 92 +9 11 12 184 0 +9 11 13 178 0 +9 11 14 148 0 +9 11 15 100 0 +9 11 16 44 0 +9 11 17 0 0 +9 11 18 0 0 +9 11 19 0 0 +9 11 20 0 0 +9 11 21 0 0 +9 11 22 0 0 +9 11 23 0 0 +9 11 24 0 0 +10 11 1 0 0 +10 11 2 0 0 +10 11 3 0 0 +10 11 4 0 0 +10 11 5 0 0 +10 11 6 0 0 +10 11 7 0 0 +10 11 8 12 0 +10 11 9 69 0 +10 11 10 109 0 +10 11 11 165 0 +10 11 12 179 0 +10 11 13 172 0 +10 11 14 143 0 +10 11 15 80 0 +10 11 16 41 0 +10 11 17 0 0 +10 11 18 0 0 +10 11 19 0 0 +10 11 20 0 0 +10 11 21 0 0 +10 11 22 0 0 +10 11 23 0 0 +10 11 24 0 0 +11 11 1 0 0 +11 11 2 0 0 +11 11 3 0 0 +11 11 4 0 0 +11 11 5 0 0 +11 11 6 0 0 +11 11 7 0 0 +11 11 8 14 0 +11 11 9 56 0 +11 11 10 64 0 +11 11 11 72 0 +11 11 12 66 0 +11 11 13 38 0 +11 11 14 60 0 +11 11 15 33 0 +11 11 16 16 0 +11 11 17 0 0 +11 11 18 0 0 +11 11 19 0 0 +11 11 20 0 0 +11 11 21 0 0 +11 11 22 0 0 +11 11 23 0 0 +11 11 24 0 0 +12 11 1 0 0 +12 11 2 0 0 +12 11 3 0 0 +12 11 4 0 0 +12 11 5 0 0 +12 11 6 0 0 +12 11 7 0 0 +12 11 8 24 0 +12 11 9 70 0 +12 11 10 66 0 +12 11 11 55 0 +12 11 12 106 0 +12 11 13 71 0 +12 11 14 35 0 +12 11 15 28 0 +12 11 16 14 0 +12 11 17 0 0 +12 11 18 0 0 +12 11 19 0 0 +12 11 20 0 0 +12 11 21 0 0 +12 11 22 0 0 +12 11 23 0 0 +12 11 24 0 0 +13 11 1 0 0 +13 11 2 0 0 +13 11 3 0 0 +13 11 4 0 0 +13 11 5 0 0 +13 11 6 0 0 +13 11 7 0 0 +13 11 8 21 0 +13 11 9 64 0 +13 11 10 133 0 +13 11 11 114 0 +13 11 12 158 0 +13 11 13 154 0 +13 11 14 155 0 +13 11 15 111 0 +13 11 16 50 0 +13 11 17 0 0 +13 11 18 0 0 +13 11 19 0 0 +13 11 20 0 0 +13 11 21 0 0 +13 11 22 0 0 +13 11 23 0 0 +13 11 24 0 0 +14 11 1 0 0 +14 11 2 0 0 +14 11 3 0 0 +14 11 4 0 0 +14 11 5 0 0 +14 11 6 0 0 +14 11 7 0 0 +14 11 8 50 311 +14 11 9 228 781 +14 11 10 362 879 +14 11 11 453 923 +14 11 12 488 934 +14 11 13 469 927 +14 11 14 395 893 +14 11 15 268 814 +14 11 16 121 636 +14 11 17 0 0 +14 11 18 0 0 +14 11 19 0 0 +14 11 20 0 0 +14 11 21 0 0 +14 11 22 0 0 +14 11 23 0 0 +14 11 24 0 0 +15 11 1 0 0 +15 11 2 0 0 +15 11 3 0 0 +15 11 4 0 0 +15 11 5 0 0 +15 11 6 0 0 +15 11 7 0 0 +15 11 8 50 250 +15 11 9 170 384 +15 11 10 264 260 +15 11 11 261 91 +15 11 12 378 279 +15 11 13 366 368 +15 11 14 293 266 +15 11 15 144 80 +15 11 16 38 125 +15 11 17 0 0 +15 11 18 0 0 +15 11 19 0 0 +15 11 20 0 0 +15 11 21 0 0 +15 11 22 0 0 +15 11 23 0 0 +15 11 24 0 0 +16 11 1 0 0 +16 11 2 0 0 +16 11 3 0 0 +16 11 4 0 0 +16 11 5 0 0 +16 11 6 0 0 +16 11 7 0 0 +16 11 8 19 49 +16 11 9 81 75 +16 11 10 72 86 +16 11 11 100 0 +16 11 12 114 0 +16 11 13 88 0 +16 11 14 64 0 +16 11 15 45 0 +16 11 16 17 0 +16 11 17 0 0 +16 11 18 0 0 +16 11 19 0 0 +16 11 20 0 0 +16 11 21 0 0 +16 11 22 0 0 +16 11 23 0 0 +16 11 24 0 0 +17 11 1 0 0 +17 11 2 0 0 +17 11 3 0 0 +17 11 4 0 0 +17 11 5 0 0 +17 11 6 0 0 +17 11 7 0 0 +17 11 8 30 199 +17 11 9 127 310 +17 11 10 153 88 +17 11 11 244 370 +17 11 12 331 471 +17 11 13 197 93 +17 11 14 163 90 +17 11 15 80 83 +17 11 16 38 63 +17 11 17 0 0 +17 11 18 0 0 +17 11 19 0 0 +17 11 20 0 0 +17 11 21 0 0 +17 11 22 0 0 +17 11 23 0 0 +17 11 24 0 0 +18 11 1 0 0 +18 11 2 0 0 +18 11 3 0 0 +18 11 4 0 0 +18 11 5 0 0 +18 11 6 0 0 +18 11 7 0 0 +18 11 8 18 0 +18 11 9 57 0 +18 11 10 66 0 +18 11 11 154 0 +18 11 12 141 0 +18 11 13 161 0 +18 11 14 79 0 +18 11 15 44 0 +18 11 16 31 0 +18 11 17 0 0 +18 11 18 0 0 +18 11 19 0 0 +18 11 20 0 0 +18 11 21 0 0 +18 11 22 0 0 +18 11 23 0 0 +18 11 24 0 0 +19 11 1 0 0 +19 11 2 0 0 +19 11 3 0 0 +19 11 4 0 0 +19 11 5 0 0 +19 11 6 0 0 +19 11 7 0 0 +19 11 8 51 479 +19 11 9 204 768 +19 11 10 226 438 +19 11 11 221 92 +19 11 12 298 188 +19 11 13 285 185 +19 11 14 235 178 +19 11 15 167 243 +19 11 16 95 366 +19 11 17 0 0 +19 11 18 0 0 +19 11 19 0 0 +19 11 20 0 0 +19 11 21 0 0 +19 11 22 0 0 +19 11 23 0 0 +19 11 24 0 0 +20 11 1 0 0 +20 11 2 0 0 +20 11 3 0 0 +20 11 4 0 0 +20 11 5 0 0 +20 11 6 0 0 +20 11 7 0 0 +20 11 8 20 191 +20 11 9 59 76 +20 11 10 108 87 +20 11 11 96 91 +20 11 12 141 186 +20 11 13 62 92 +20 11 14 122 0 +20 11 15 78 81 +20 11 16 40 61 +20 11 17 0 0 +20 11 18 0 0 +20 11 19 0 0 +20 11 20 0 0 +20 11 21 0 0 +20 11 22 0 0 +20 11 23 0 0 +20 11 24 0 0 +21 11 1 0 0 +21 11 2 0 0 +21 11 3 0 0 +21 11 4 0 0 +21 11 5 0 0 +21 11 6 0 0 +21 11 7 0 0 +21 11 8 12 72 +21 11 9 118 266 +21 11 10 177 513 +21 11 11 137 271 +21 11 12 153 93 +21 11 13 146 91 +21 11 14 120 0 +21 11 15 77 0 +21 11 16 29 0 +21 11 17 0 0 +21 11 18 0 0 +21 11 19 0 0 +21 11 20 0 0 +21 11 21 0 0 +21 11 22 0 0 +21 11 23 0 0 +21 11 24 0 0 +22 11 1 0 0 +22 11 2 0 0 +22 11 3 0 0 +22 11 4 0 0 +22 11 5 0 0 +22 11 6 0 0 +22 11 7 0 0 +22 11 8 11 0 +22 11 9 61 0 +22 11 10 136 85 +22 11 11 176 91 +22 11 12 193 93 +22 11 13 366 640 +22 11 14 262 439 +22 11 15 159 556 +22 11 16 38 234 +22 11 17 0 0 +22 11 18 0 0 +22 11 19 0 0 +22 11 20 0 0 +22 11 21 0 0 +22 11 22 0 0 +22 11 23 0 0 +22 11 24 0 0 +23 11 1 0 0 +23 11 2 0 0 +23 11 3 0 0 +23 11 4 0 0 +23 11 5 0 0 +23 11 6 0 0 +23 11 7 0 0 +23 11 8 12 0 +23 11 9 29 0 +23 11 10 37 0 +23 11 11 63 0 +23 11 12 57 0 +23 11 13 123 89 +23 11 14 59 86 +23 11 15 28 78 +23 11 16 26 0 +23 11 17 0 0 +23 11 18 0 0 +23 11 19 0 0 +23 11 20 0 0 +23 11 21 0 0 +23 11 22 0 0 +23 11 23 0 0 +23 11 24 0 0 +24 11 1 0 0 +24 11 2 0 0 +24 11 3 0 0 +24 11 4 0 0 +24 11 5 0 0 +24 11 6 0 0 +24 11 7 0 0 +24 11 8 4 0 +24 11 9 57 0 +24 11 10 107 0 +24 11 11 104 0 +24 11 12 136 0 +24 11 13 70 0 +24 11 14 107 0 +24 11 15 74 0 +24 11 16 26 56 +24 11 17 0 0 +24 11 18 0 0 +24 11 19 0 0 +24 11 20 0 0 +24 11 21 0 0 +24 11 22 0 0 +24 11 23 0 0 +24 11 24 0 0 +25 11 1 0 0 +25 11 2 0 0 +25 11 3 0 0 +25 11 4 0 0 +25 11 5 0 0 +25 11 6 0 0 +25 11 7 0 0 +25 11 8 11 0 +25 11 9 56 0 +25 11 10 99 0 +25 11 11 39 0 +25 11 12 118 0 +25 11 13 89 0 +25 11 14 53 0 +25 11 15 35 0 +25 11 16 13 0 +25 11 17 0 0 +25 11 18 0 0 +25 11 19 0 0 +25 11 20 0 0 +25 11 21 0 0 +25 11 22 0 0 +25 11 23 0 0 +25 11 24 0 0 +26 11 1 0 0 +26 11 2 0 0 +26 11 3 0 0 +26 11 4 0 0 +26 11 5 0 0 +26 11 6 0 0 +26 11 7 0 0 +26 11 8 6 0 +26 11 9 35 0 +26 11 10 59 0 +26 11 11 73 87 +26 11 12 85 89 +26 11 13 366 659 +26 11 14 296 697 +26 11 15 215 754 +26 11 16 72 479 +26 11 17 0 0 +26 11 18 0 0 +26 11 19 0 0 +26 11 20 0 0 +26 11 21 0 0 +26 11 22 0 0 +26 11 23 0 0 +26 11 24 0 0 +27 11 1 0 0 +27 11 2 0 0 +27 11 3 0 0 +27 11 4 0 0 +27 11 5 0 0 +27 11 6 0 0 +27 11 7 0 0 +27 11 8 6 0 +27 11 9 34 0 +27 11 10 59 0 +27 11 11 296 263 +27 11 12 359 623 +27 11 13 288 619 +27 11 14 299 592 +27 11 15 164 228 +27 11 16 60 105 +27 11 17 0 0 +27 11 18 0 0 +27 11 19 0 0 +27 11 20 0 0 +27 11 21 0 0 +27 11 22 0 0 +27 11 23 0 0 +27 11 24 0 0 +28 11 1 0 0 +28 11 2 0 0 +28 11 3 0 0 +28 11 4 0 0 +28 11 5 0 0 +28 11 6 0 0 +28 11 7 0 0 +28 11 8 21 132 +28 11 9 109 406 +28 11 10 239 566 +28 11 11 318 690 +28 11 12 368 705 +28 11 13 315 611 +28 11 14 278 499 +28 11 15 179 372 +28 11 16 65 255 +28 11 17 0 0 +28 11 18 0 0 +28 11 19 0 0 +28 11 20 0 0 +28 11 21 0 0 +28 11 22 0 0 +28 11 23 0 0 +28 11 24 0 0 +29 11 1 0 0 +29 11 2 0 0 +29 11 3 0 0 +29 11 4 0 0 +29 11 5 0 0 +29 11 6 0 0 +29 11 7 0 0 +29 11 8 3 0 +29 11 9 24 0 +29 11 10 42 0 +29 11 11 28 0 +29 11 12 88 0 +29 11 13 76 0 +29 11 14 40 0 +29 11 15 29 0 +29 11 16 6 0 +29 11 17 0 0 +29 11 18 0 0 +29 11 19 0 0 +29 11 20 0 0 +29 11 21 0 0 +29 11 22 0 0 +29 11 23 0 0 +29 11 24 0 0 +30 11 1 0 0 +30 11 2 0 0 +30 11 3 0 0 +30 11 4 0 0 +30 11 5 0 0 +30 11 6 0 0 +30 11 7 0 0 +30 11 8 8 13 +30 11 9 49 137 +30 11 10 185 296 +30 11 11 337 736 +30 11 12 334 715 +30 11 13 240 444 +30 11 14 140 255 +30 11 15 111 382 +30 11 16 29 263 +30 11 17 0 0 +30 11 18 0 0 +30 11 19 0 0 +30 11 20 0 0 +30 11 21 0 0 +30 11 22 0 0 +30 11 23 0 0 +30 11 24 0 0 +1 12 1 0 0 +1 12 2 0 0 +1 12 3 0 0 +1 12 4 0 0 +1 12 5 0 0 +1 12 6 0 0 +1 12 7 0 0 +1 12 8 11 17 +1 12 9 61 71 +1 12 10 122 86 +1 12 11 216 91 +1 12 12 240 93 +1 12 13 178 92 +1 12 14 179 88 +1 12 15 187 552 +1 12 16 38 109 +1 12 17 0 0 +1 12 18 0 0 +1 12 19 0 0 +1 12 20 0 0 +1 12 21 0 0 +1 12 22 0 0 +1 12 23 0 0 +1 12 24 0 0 +2 12 1 0 0 +2 12 2 0 0 +2 12 3 0 0 +2 12 4 0 0 +2 12 5 0 0 +2 12 6 0 0 +2 12 7 0 0 +2 12 8 17 89 +2 12 9 122 493 +2 12 10 278 760 +2 12 11 381 904 +2 12 12 423 927 +2 12 13 409 919 +2 12 14 271 792 +2 12 15 186 712 +2 12 16 73 445 +2 12 17 0 0 +2 12 18 0 0 +2 12 19 0 0 +2 12 20 0 0 +2 12 21 0 0 +2 12 22 0 0 +2 12 23 0 0 +2 12 24 0 0 +3 12 1 0 0 +3 12 2 0 0 +3 12 3 0 0 +3 12 4 0 0 +3 12 5 0 0 +3 12 6 0 0 +3 12 7 0 0 +3 12 8 15 64 +3 12 9 88 361 +3 12 10 176 343 +3 12 11 208 183 +3 12 12 243 188 +3 12 13 235 93 +3 12 14 180 0 +3 12 15 128 80 +3 12 16 17 0 +3 12 17 0 0 +3 12 18 0 0 +3 12 19 0 0 +3 12 20 0 0 +3 12 21 0 0 +3 12 22 0 0 +3 12 23 0 0 +3 12 24 0 0 +4 12 1 0 0 +4 12 2 0 0 +4 12 3 0 0 +4 12 4 0 0 +4 12 5 0 0 +4 12 6 0 0 +4 12 7 0 0 +4 12 8 8 0 +4 12 9 19 0 +4 12 10 73 0 +4 12 11 79 0 +4 12 12 81 89 +4 12 13 67 0 +4 12 14 116 0 +4 12 15 183 528 +4 12 16 39 51 +4 12 17 0 0 +4 12 18 0 0 +4 12 19 0 0 +4 12 20 0 0 +4 12 21 0 0 +4 12 22 0 0 +4 12 23 0 0 +4 12 24 0 0 +5 12 1 0 0 +5 12 2 0 0 +5 12 3 0 0 +5 12 4 0 0 +5 12 5 0 0 +5 12 6 0 0 +5 12 7 0 0 +5 12 8 5 0 +5 12 9 32 0 +5 12 10 75 0 +5 12 11 249 353 +5 12 12 146 0 +5 12 13 232 89 +5 12 14 172 171 +5 12 15 114 77 +5 12 16 31 106 +5 12 17 0 0 +5 12 18 0 0 +5 12 19 0 0 +5 12 20 0 0 +5 12 21 0 0 +5 12 22 0 0 +5 12 23 0 0 +5 12 24 0 0 +6 12 1 0 0 +6 12 2 0 0 +6 12 3 0 0 +6 12 4 0 0 +6 12 5 0 0 +6 12 6 0 0 +6 12 7 0 0 +6 12 8 8 9 +6 12 9 74 65 +6 12 10 154 81 +6 12 11 198 174 +6 12 12 258 90 +6 12 13 249 89 +6 12 14 142 85 +6 12 15 113 75 +6 12 16 52 307 +6 12 17 0 0 +6 12 18 0 0 +6 12 19 0 0 +6 12 20 0 0 +6 12 21 0 0 +6 12 22 0 0 +6 12 23 0 0 +6 12 24 0 0 +7 12 1 0 0 +7 12 2 0 0 +7 12 3 0 0 +7 12 4 0 0 +7 12 5 0 0 +7 12 6 0 0 +7 12 7 0 0 +7 12 8 2 21 +7 12 9 104 135 +7 12 10 131 83 +7 12 11 291 265 +7 12 12 345 91 +7 12 13 224 0 +7 12 14 186 0 +7 12 15 95 0 +7 12 16 39 0 +7 12 17 0 0 +7 12 18 0 0 +7 12 19 0 0 +7 12 20 0 0 +7 12 21 0 0 +7 12 22 0 0 +7 12 23 0 0 +7 12 24 0 0 +8 12 1 0 0 +8 12 2 0 0 +8 12 3 0 0 +8 12 4 0 0 +8 12 5 0 0 +8 12 6 0 0 +8 12 7 0 0 +8 12 8 2 0 +8 12 9 74 0 +8 12 10 75 0 +8 12 11 114 0 +8 12 12 131 0 +8 12 13 129 0 +8 12 14 45 0 +8 12 15 51 0 +8 12 16 8 0 +8 12 17 0 0 +8 12 18 0 0 +8 12 19 0 0 +8 12 20 0 0 +8 12 21 0 0 +8 12 22 0 0 +8 12 23 0 0 +8 12 24 0 0 +9 12 1 0 0 +9 12 2 0 0 +9 12 3 0 0 +9 12 4 0 0 +9 12 5 0 0 +9 12 6 0 0 +9 12 7 0 0 +9 12 8 5 0 +9 12 9 14 0 +9 12 10 123 0 +9 12 11 131 0 +9 12 12 118 0 +9 12 13 172 0 +9 12 14 134 0 +9 12 15 89 0 +9 12 16 24 0 +9 12 17 0 0 +9 12 18 0 0 +9 12 19 0 0 +9 12 20 0 0 +9 12 21 0 0 +9 12 22 0 0 +9 12 23 0 0 +9 12 24 0 0 +10 12 1 0 0 +10 12 2 0 0 +10 12 3 0 0 +10 12 4 0 0 +10 12 5 0 0 +10 12 6 0 0 +10 12 7 0 0 +10 12 8 11 72 +10 12 9 135 692 +10 12 10 269 847 +10 12 11 366 915 +10 12 12 424 846 +10 12 13 386 936 +10 12 14 335 900 +10 12 15 221 809 +10 12 16 73 515 +10 12 17 0 0 +10 12 18 0 0 +10 12 19 0 0 +10 12 20 0 0 +10 12 21 0 0 +10 12 22 0 0 +10 12 23 0 0 +10 12 24 0 0 +11 12 1 0 0 +11 12 2 0 0 +11 12 3 0 0 +11 12 4 0 0 +11 12 5 0 0 +11 12 6 0 0 +11 12 7 0 0 +11 12 8 0 0 +11 12 9 103 138 +11 12 10 234 251 +11 12 11 346 451 +11 12 12 267 184 +11 12 13 191 91 +11 12 14 179 87 +11 12 15 141 78 +11 12 16 47 53 +11 12 17 0 0 +11 12 18 0 0 +11 12 19 0 0 +11 12 20 0 0 +11 12 21 0 0 +11 12 22 0 0 +11 12 23 0 0 +11 12 24 0 0 +12 12 1 0 0 +12 12 2 0 0 +12 12 3 0 0 +12 12 4 0 0 +12 12 5 0 0 +12 12 6 0 0 +12 12 7 0 0 +12 12 8 0 0 +12 12 9 22 0 +12 12 10 87 82 +12 12 11 114 0 +12 12 12 104 0 +12 12 13 56 0 +12 12 14 66 0 +12 12 15 82 0 +12 12 16 33 0 +12 12 17 0 0 +12 12 18 0 0 +12 12 19 0 0 +12 12 20 0 0 +12 12 21 0 0 +12 12 22 0 0 +12 12 23 0 0 +12 12 24 0 0 +13 12 1 0 0 +13 12 2 0 0 +13 12 3 0 0 +13 12 4 0 0 +13 12 5 0 0 +13 12 6 0 0 +13 12 7 0 0 +13 12 8 0 0 +13 12 9 36 0 +13 12 10 116 0 +13 12 11 76 0 +13 12 12 112 0 +13 12 13 109 0 +13 12 14 39 0 +13 12 15 49 0 +13 12 16 23 0 +13 12 17 0 0 +13 12 18 0 0 +13 12 19 0 0 +13 12 20 0 0 +13 12 21 0 0 +13 12 22 0 0 +13 12 23 0 0 +13 12 24 0 0 +14 12 1 0 0 +14 12 2 0 0 +14 12 3 0 0 +14 12 4 0 0 +14 12 5 0 0 +14 12 6 0 0 +14 12 7 0 0 +14 12 8 0 0 +14 12 9 26 0 +14 12 10 61 0 +14 12 11 143 178 +14 12 12 184 183 +14 12 13 175 274 +14 12 14 208 175 +14 12 15 154 548 +14 12 16 59 489 +14 12 17 0 0 +14 12 18 0 0 +14 12 19 0 0 +14 12 20 0 0 +14 12 21 0 0 +14 12 22 0 0 +14 12 23 0 0 +14 12 24 0 0 +15 12 1 0 0 +15 12 2 0 0 +15 12 3 0 0 +15 12 4 0 0 +15 12 5 0 0 +15 12 6 0 0 +15 12 7 0 0 +15 12 8 0 0 +15 12 9 53 0 +15 12 10 116 0 +15 12 11 168 0 +15 12 12 160 0 +15 12 13 73 0 +15 12 14 44 0 +15 12 15 71 0 +15 12 16 31 0 +15 12 17 0 0 +15 12 18 0 0 +15 12 19 0 0 +15 12 20 0 0 +15 12 21 0 0 +15 12 22 0 0 +15 12 23 0 0 +15 12 24 0 0 +16 12 1 0 0 +16 12 2 0 0 +16 12 3 0 0 +16 12 4 0 0 +16 12 5 0 0 +16 12 6 0 0 +16 12 7 0 0 +16 12 8 0 0 +16 12 9 110 499 +16 12 10 236 713 +16 12 11 339 862 +16 12 12 371 888 +16 12 13 375 884 +16 12 14 291 704 +16 12 15 173 595 +16 12 16 70 459 +16 12 17 0 0 +16 12 18 0 0 +16 12 19 0 0 +16 12 20 0 0 +16 12 21 0 0 +16 12 22 0 0 +16 12 23 0 0 +16 12 24 0 0 +17 12 1 0 0 +17 12 2 0 0 +17 12 3 0 0 +17 12 4 0 0 +17 12 5 0 0 +17 12 6 0 0 +17 12 7 0 0 +17 12 8 0 0 +17 12 9 9 0 +17 12 10 63 0 +17 12 11 90 0 +17 12 12 85 0 +17 12 13 94 0 +17 12 14 88 0 +17 12 15 87 0 +17 12 16 31 0 +17 12 17 0 0 +17 12 18 0 0 +17 12 19 0 0 +17 12 20 0 0 +17 12 21 0 0 +17 12 22 0 0 +17 12 23 0 0 +17 12 24 0 0 +18 12 1 0 0 +18 12 2 0 0 +18 12 3 0 0 +18 12 4 0 0 +18 12 5 0 0 +18 12 6 0 0 +18 12 7 0 0 +18 12 8 0 0 +18 12 9 119 670 +18 12 10 254 839 +18 12 11 352 909 +18 12 12 399 935 +18 12 13 345 743 +18 12 14 289 803 +18 12 15 195 562 +18 12 16 54 398 +18 12 17 0 0 +18 12 18 0 0 +18 12 19 0 0 +18 12 20 0 0 +18 12 21 0 0 +18 12 22 0 0 +18 12 23 0 0 +18 12 24 0 0 +19 12 1 0 0 +19 12 2 0 0 +19 12 3 0 0 +19 12 4 0 0 +19 12 5 0 0 +19 12 6 0 0 +19 12 7 0 0 +19 12 8 0 0 +19 12 9 117 666 +19 12 10 253 836 +19 12 11 351 906 +19 12 12 398 931 +19 12 13 389 924 +19 12 14 327 888 +19 12 15 218 799 +19 12 16 76 561 +19 12 17 0 0 +19 12 18 0 0 +19 12 19 0 0 +19 12 20 0 0 +19 12 21 0 0 +19 12 22 0 0 +19 12 23 0 0 +19 12 24 0 0 +20 12 1 0 0 +20 12 2 0 0 +20 12 3 0 0 +20 12 4 0 0 +20 12 5 0 0 +20 12 6 0 0 +20 12 7 0 0 +20 12 8 0 0 +20 12 9 131 468 +20 12 10 203 167 +20 12 11 357 453 +20 12 12 367 278 +20 12 13 329 185 +20 12 14 253 89 +20 12 15 160 79 +20 12 16 56 55 +20 12 17 0 0 +20 12 18 0 0 +20 12 19 0 0 +20 12 20 0 0 +20 12 21 0 0 +20 12 22 0 0 +20 12 23 0 0 +20 12 24 0 0 +21 12 1 0 0 +21 12 2 0 0 +21 12 3 0 0 +21 12 4 0 0 +21 12 5 0 0 +21 12 6 0 0 +21 12 7 0 0 +21 12 8 0 0 +21 12 9 26 0 +21 12 10 94 0 +21 12 11 56 0 +21 12 12 127 0 +21 12 13 135 0 +21 12 14 122 0 +21 12 15 84 0 +21 12 16 11 0 +21 12 17 0 0 +21 12 18 0 0 +21 12 19 0 0 +21 12 20 0 0 +21 12 21 0 0 +21 12 22 0 0 +21 12 23 0 0 +21 12 24 0 0 +22 12 1 0 0 +22 12 2 0 0 +22 12 3 0 0 +22 12 4 0 0 +22 12 5 0 0 +22 12 6 0 0 +22 12 7 0 0 +22 12 8 0 0 +22 12 9 111 643 +22 12 10 233 745 +22 12 11 375 716 +22 12 12 480 825 +22 12 13 475 637 +22 12 14 378 701 +22 12 15 180 551 +22 12 16 59 167 +22 12 17 0 0 +22 12 18 0 0 +22 12 19 0 0 +22 12 20 0 0 +22 12 21 0 0 +22 12 22 0 0 +22 12 23 0 0 +22 12 24 0 0 +23 12 1 0 0 +23 12 2 0 0 +23 12 3 0 0 +23 12 4 0 0 +23 12 5 0 0 +23 12 6 0 0 +23 12 7 0 0 +23 12 8 0 0 +23 12 9 68 128 +23 12 10 212 561 +23 12 11 337 873 +23 12 12 384 897 +23 12 13 337 803 +23 12 14 319 858 +23 12 15 193 539 +23 12 16 71 424 +23 12 17 0 0 +23 12 18 0 0 +23 12 19 0 0 +23 12 20 0 0 +23 12 21 0 0 +23 12 22 0 0 +23 12 23 0 0 +23 12 24 0 0 +24 12 1 0 0 +24 12 2 0 0 +24 12 3 0 0 +24 12 4 0 0 +24 12 5 0 0 +24 12 6 0 0 +24 12 7 0 0 +24 12 8 0 0 +24 12 9 41 62 +24 12 10 90 80 +24 12 11 126 88 +24 12 12 143 90 +24 12 13 108 0 +24 12 14 206 259 +24 12 15 175 77 +24 12 16 49 55 +24 12 17 0 0 +24 12 18 0 0 +24 12 19 0 0 +24 12 20 0 0 +24 12 21 0 0 +24 12 22 0 0 +24 12 23 0 0 +24 12 24 0 0 +25 12 1 0 0 +25 12 2 0 0 +25 12 3 0 0 +25 12 4 0 0 +25 12 5 0 0 +25 12 6 0 0 +25 12 7 0 0 +25 12 8 0 0 +25 12 9 30 0 +25 12 10 67 0 +25 12 11 91 0 +25 12 12 103 0 +25 12 13 108 0 +25 12 14 67 0 +25 12 15 99 0 +25 12 16 18 0 +25 12 17 0 0 +25 12 18 0 0 +25 12 19 0 0 +25 12 20 0 0 +25 12 21 0 0 +25 12 22 0 0 +25 12 23 0 0 +25 12 24 0 0 +26 12 1 0 0 +26 12 2 0 0 +26 12 3 0 0 +26 12 4 0 0 +26 12 5 0 0 +26 12 6 0 0 +26 12 7 0 0 +26 12 8 0 0 +26 12 9 36 0 +26 12 10 61 0 +26 12 11 150 0 +26 12 12 163 90 +26 12 13 161 0 +26 12 14 135 86 +26 12 15 87 156 +26 12 16 51 334 +26 12 17 0 0 +26 12 18 0 0 +26 12 19 0 0 +26 12 20 0 0 +26 12 21 0 0 +26 12 22 0 0 +26 12 23 0 0 +26 12 24 0 0 +27 12 1 0 0 +27 12 2 0 0 +27 12 3 0 0 +27 12 4 0 0 +27 12 5 0 0 +27 12 6 0 0 +27 12 7 0 0 +27 12 8 0 0 +27 12 9 88 314 +27 12 10 97 0 +27 12 11 169 89 +27 12 12 113 0 +27 12 13 256 92 +27 12 14 159 353 +27 12 15 133 79 +27 12 16 27 59 +27 12 17 0 0 +27 12 18 0 0 +27 12 19 0 0 +27 12 20 0 0 +27 12 21 0 0 +27 12 22 0 0 +27 12 23 0 0 +27 12 24 0 0 +28 12 1 0 0 +28 12 2 0 0 +28 12 3 0 0 +28 12 4 0 0 +28 12 5 0 0 +28 12 6 0 0 +28 12 7 0 0 +28 12 8 0 0 +28 12 9 89 512 +28 12 10 198 580 +28 12 11 173 270 +28 12 12 271 278 +28 12 13 284 369 +28 12 14 177 267 +28 12 15 159 241 +28 12 16 39 58 +28 12 17 0 0 +28 12 18 0 0 +28 12 19 0 0 +28 12 20 0 0 +28 12 21 0 0 +28 12 22 0 0 +28 12 23 0 0 +28 12 24 0 0 +29 12 1 0 0 +29 12 2 0 0 +29 12 3 0 0 +29 12 4 0 0 +29 12 5 0 0 +29 12 6 0 0 +29 12 7 0 0 +29 12 8 0 0 +29 12 9 16 63 +29 12 10 153 164 +29 12 11 309 446 +29 12 12 374 830 +29 12 13 399 827 +29 12 14 339 796 +29 12 15 239 721 +29 12 16 100 528 +29 12 17 0 0 +29 12 18 0 0 +29 12 19 0 0 +29 12 20 0 0 +29 12 21 0 0 +29 12 22 0 0 +29 12 23 0 0 +29 12 24 0 0 +30 12 1 0 0 +30 12 2 0 0 +30 12 3 0 0 +30 12 4 0 0 +30 12 5 0 0 +30 12 6 0 0 +30 12 7 0 0 +30 12 8 0 0 +30 12 9 65 254 +30 12 10 178 410 +30 12 11 183 177 +30 12 12 254 0 +30 12 13 261 0 +30 12 14 181 88 +30 12 15 66 0 +30 12 16 51 58 +30 12 17 0 0 +30 12 18 0 0 +30 12 19 0 0 +30 12 20 0 0 +30 12 21 0 0 +30 12 22 0 0 +30 12 23 0 0 +30 12 24 0 0 +31 12 1 0 0 +31 12 2 0 0 +31 12 3 0 0 +31 12 4 0 0 +31 12 5 0 0 +31 12 6 0 0 +31 12 7 0 0 +31 12 8 0 0 +31 12 9 52 0 +31 12 10 111 0 +31 12 11 63 0 +31 12 12 189 0 +31 12 13 187 0 +31 12 14 121 0 +31 12 15 109 0 +31 12 16 49 0 +31 12 17 0 0 +31 12 18 0 0 +31 12 19 0 0 +31 12 20 0 0 +31 12 21 0 0 +31 12 22 0 0 +31 12 23 0 0 +31 12 24 0 0 From 820b1cdde8d1dd36214d841f066f6a58afd6e4ef Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:55:16 -0500 Subject: [PATCH 15/25] Tests_output to tests_outputs --- tests/test_db_factory.py | 2 +- tests/tests_outputs/Montreal.cli | 8764 ------------------------------ 2 files changed, 1 insertion(+), 8765 deletions(-) delete mode 100644 tests/tests_outputs/Montreal.cli diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 35c25c7..c9141dd 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -72,7 +72,7 @@ class Control: SimulationResults.__table__.create(bind=repository.engine, checkfirst=True) city_file = (Path(__file__).parent / 'tests_data/test.geojson').resolve() - output_path = (Path(__file__).parent / 'tests_output').resolve() + output_path = (Path(__file__).parent / 'tests_outputs').resolve() self._city = GeometryFactory('geojson', city_file, height_field='citygml_me', diff --git a/tests/tests_outputs/Montreal.cli b/tests/tests_outputs/Montreal.cli deleted file mode 100644 index cde63ef..0000000 --- a/tests/tests_outputs/Montreal.cli +++ /dev/null @@ -1,8764 +0,0 @@ -Concordia current status 12494 12494 -45.47,-73.75,0.0,-5.0 - -dm m h G_Dh G_Bn -1 1 1 0 0 -1 1 2 0 0 -1 1 3 0 0 -1 1 4 0 0 -1 1 5 0 0 -1 1 6 0 0 -1 1 7 0 0 -1 1 8 0 0 -1 1 9 78 357 -1 1 10 204 628 -1 1 11 291 688 -1 1 12 338 714 -1 1 13 214 267 -1 1 14 181 258 -1 1 15 116 234 -1 1 16 39 115 -1 1 17 0 0 -1 1 18 0 0 -1 1 19 0 0 -1 1 20 0 0 -1 1 21 0 0 -1 1 22 0 0 -1 1 23 0 0 -1 1 24 0 0 -2 1 1 0 0 -2 1 2 0 0 -2 1 3 0 0 -2 1 4 0 0 -2 1 5 0 0 -2 1 6 0 0 -2 1 7 0 0 -2 1 8 0 0 -2 1 9 67 63 -2 1 10 188 406 -2 1 11 239 444 -2 1 12 235 275 -2 1 13 256 366 -2 1 14 169 0 -2 1 15 94 0 -2 1 16 28 0 -2 1 17 0 0 -2 1 18 0 0 -2 1 19 0 0 -2 1 20 0 0 -2 1 21 0 0 -2 1 22 0 0 -2 1 23 0 0 -2 1 24 0 0 -3 1 1 0 0 -3 1 2 0 0 -3 1 3 0 0 -3 1 4 0 0 -3 1 5 0 0 -3 1 6 0 0 -3 1 7 0 0 -3 1 8 0 0 -3 1 9 29 0 -3 1 10 44 0 -3 1 11 114 0 -3 1 12 159 0 -3 1 13 168 89 -3 1 14 129 86 -3 1 15 117 157 -3 1 16 16 0 -3 1 17 0 0 -3 1 18 0 0 -3 1 19 0 0 -3 1 20 0 0 -3 1 21 0 0 -3 1 22 0 0 -3 1 23 0 0 -3 1 24 0 0 -4 1 1 0 0 -4 1 2 0 0 -4 1 3 0 0 -4 1 4 0 0 -4 1 5 0 0 -4 1 6 0 0 -4 1 7 0 0 -4 1 8 0 0 -4 1 9 106 504 -4 1 10 242 732 -4 1 11 345 801 -4 1 12 414 824 -4 1 13 413 826 -4 1 14 349 711 -4 1 15 145 162 -4 1 16 58 123 -4 1 17 0 0 -4 1 18 0 0 -4 1 19 0 0 -4 1 20 0 0 -4 1 21 0 0 -4 1 22 0 0 -4 1 23 0 0 -4 1 24 0 0 -5 1 1 0 0 -5 1 2 0 0 -5 1 3 0 0 -5 1 4 0 0 -5 1 5 0 0 -5 1 6 0 0 -5 1 7 0 0 -5 1 8 0 0 -5 1 9 54 60 -5 1 10 127 79 -5 1 11 139 86 -5 1 12 189 89 -5 1 13 221 89 -5 1 14 194 174 -5 1 15 109 0 -5 1 16 39 0 -5 1 17 0 0 -5 1 18 0 0 -5 1 19 0 0 -5 1 20 0 0 -5 1 21 0 0 -5 1 22 0 0 -5 1 23 0 0 -5 1 24 0 0 -6 1 1 0 0 -6 1 2 0 0 -6 1 3 0 0 -6 1 4 0 0 -6 1 5 0 0 -6 1 6 0 0 -6 1 7 0 0 -6 1 8 0 0 -6 1 9 102 437 -6 1 10 224 406 -6 1 11 328 442 -6 1 12 280 91 -6 1 13 173 0 -6 1 14 113 0 -6 1 15 61 0 -6 1 16 24 0 -6 1 17 0 0 -6 1 18 0 0 -6 1 19 0 0 -6 1 20 0 0 -6 1 21 0 0 -6 1 22 0 0 -6 1 23 0 0 -6 1 24 0 0 -7 1 1 0 0 -7 1 2 0 0 -7 1 3 0 0 -7 1 4 0 0 -7 1 5 0 0 -7 1 6 0 0 -7 1 7 0 0 -7 1 8 0 0 -7 1 9 101 384 -7 1 10 195 247 -7 1 11 187 180 -7 1 12 234 93 -7 1 13 252 93 -7 1 14 218 90 -7 1 15 240 578 -7 1 16 103 523 -7 1 17 0 0 -7 1 18 0 0 -7 1 19 0 0 -7 1 20 0 0 -7 1 21 0 0 -7 1 22 0 0 -7 1 23 0 0 -7 1 24 0 0 -8 1 1 0 0 -8 1 2 0 0 -8 1 3 0 0 -8 1 4 0 0 -8 1 5 0 0 -8 1 6 0 0 -8 1 7 0 0 -8 1 8 0 0 -8 1 9 46 194 -8 1 10 128 249 -8 1 11 238 362 -8 1 12 365 468 -8 1 13 358 281 -8 1 14 278 273 -8 1 15 224 418 -8 1 16 117 463 -8 1 17 0 0 -8 1 18 0 0 -8 1 19 0 0 -8 1 20 0 0 -8 1 21 0 0 -8 1 22 0 0 -8 1 23 0 0 -8 1 24 0 0 -9 1 1 0 0 -9 1 2 0 0 -9 1 3 0 0 -9 1 4 0 0 -9 1 5 0 0 -9 1 6 0 0 -9 1 7 0 0 -9 1 8 0 0 -9 1 9 111 598 -9 1 10 250 758 -9 1 11 355 823 -9 1 12 413 854 -9 1 13 429 948 -9 1 14 372 915 -9 1 15 267 754 -9 1 16 123 531 -9 1 17 0 0 -9 1 18 0 0 -9 1 19 0 0 -9 1 20 0 0 -9 1 21 0 0 -9 1 22 0 0 -9 1 23 0 0 -9 1 24 0 0 -10 1 1 0 0 -10 1 2 0 0 -10 1 3 0 0 -10 1 4 0 0 -10 1 5 0 0 -10 1 6 0 0 -10 1 7 0 0 -10 1 8 0 0 -10 1 9 49 0 -10 1 10 116 0 -10 1 11 173 0 -10 1 12 203 0 -10 1 13 204 0 -10 1 14 175 0 -10 1 15 119 0 -10 1 16 53 0 -10 1 17 0 0 -10 1 18 0 0 -10 1 19 0 0 -10 1 20 0 0 -10 1 21 0 0 -10 1 22 0 0 -10 1 23 0 0 -10 1 24 0 0 -11 1 1 0 0 -11 1 2 0 0 -11 1 3 0 0 -11 1 4 0 0 -11 1 5 0 0 -11 1 6 0 0 -11 1 7 0 0 -11 1 8 0 0 -11 1 9 74 64 -11 1 10 124 84 -11 1 11 140 0 -11 1 12 189 0 -11 1 13 252 188 -11 1 14 117 0 -11 1 15 253 593 -11 1 16 118 545 -11 1 17 0 0 -11 1 18 0 0 -11 1 19 0 0 -11 1 20 0 0 -11 1 21 0 0 -11 1 22 0 0 -11 1 23 0 0 -11 1 24 0 0 -12 1 1 0 0 -12 1 2 0 0 -12 1 3 0 0 -12 1 4 0 0 -12 1 5 0 0 -12 1 6 0 0 -12 1 7 0 0 -12 1 8 0 0 -12 1 9 112 607 -12 1 10 250 767 -12 1 11 354 833 -12 1 12 409 858 -12 1 13 412 859 -12 1 14 359 831 -12 1 15 259 770 -12 1 16 123 621 -12 1 17 0 0 -12 1 18 0 0 -12 1 19 0 0 -12 1 20 0 0 -12 1 21 0 0 -12 1 22 0 0 -12 1 23 0 0 -12 1 24 0 0 -13 1 1 0 0 -13 1 2 0 0 -13 1 3 0 0 -13 1 4 0 0 -13 1 5 0 0 -13 1 6 0 0 -13 1 7 0 0 -13 1 8 0 0 -13 1 9 116 398 -13 1 10 229 336 -13 1 11 365 273 -13 1 12 437 377 -13 1 13 441 283 -13 1 14 307 0 -13 1 15 166 0 -13 1 16 80 0 -13 1 17 0 0 -13 1 18 0 0 -13 1 19 0 0 -13 1 20 0 0 -13 1 21 0 0 -13 1 22 0 0 -13 1 23 0 0 -13 1 24 0 0 -14 1 1 0 0 -14 1 2 0 0 -14 1 3 0 0 -14 1 4 0 0 -14 1 5 0 0 -14 1 6 0 0 -14 1 7 0 0 -14 1 8 0 0 -14 1 9 52 0 -14 1 10 234 586 -14 1 11 371 909 -14 1 12 421 845 -14 1 13 429 842 -14 1 14 390 731 -14 1 15 276 673 -14 1 16 131 613 -14 1 17 0 0 -14 1 18 0 0 -14 1 19 0 0 -14 1 20 0 0 -14 1 21 0 0 -14 1 22 0 0 -14 1 23 0 0 -14 1 24 0 0 -15 1 1 0 0 -15 1 2 0 0 -15 1 3 0 0 -15 1 4 0 0 -15 1 5 0 0 -15 1 6 0 0 -15 1 7 0 0 -15 1 8 0 0 -15 1 9 116 603 -15 1 10 257 762 -15 1 11 364 829 -15 1 12 421 853 -15 1 13 426 955 -15 1 14 387 926 -15 1 15 284 866 -15 1 16 140 705 -15 1 17 2 29 -15 1 18 0 0 -15 1 19 0 0 -15 1 20 0 0 -15 1 21 0 0 -15 1 22 0 0 -15 1 23 0 0 -15 1 24 0 0 -16 1 1 0 0 -16 1 2 0 0 -16 1 3 0 0 -16 1 4 0 0 -16 1 5 0 0 -16 1 6 0 0 -16 1 7 0 0 -16 1 8 0 0 -16 1 9 55 0 -16 1 10 126 0 -16 1 11 202 92 -16 1 12 242 190 -16 1 13 303 380 -16 1 14 229 278 -16 1 15 263 686 -16 1 16 137 632 -16 1 17 12 72 -16 1 18 0 0 -16 1 19 0 0 -16 1 20 0 0 -16 1 21 0 0 -16 1 22 0 0 -16 1 23 0 0 -16 1 24 0 0 -17 1 1 0 0 -17 1 2 0 0 -17 1 3 0 0 -17 1 4 0 0 -17 1 5 0 0 -17 1 6 0 0 -17 1 7 0 0 -17 1 8 0 0 -17 1 9 58 66 -17 1 10 215 250 -17 1 11 184 91 -17 1 12 246 93 -17 1 13 248 93 -17 1 14 217 91 -17 1 15 174 168 -17 1 16 95 207 -17 1 17 9 21 -17 1 18 0 0 -17 1 19 0 0 -17 1 20 0 0 -17 1 21 0 0 -17 1 22 0 0 -17 1 23 0 0 -17 1 24 0 0 -18 1 1 0 0 -18 1 2 0 0 -18 1 3 0 0 -18 1 4 0 0 -18 1 5 0 0 -18 1 6 0 0 -18 1 7 0 0 -18 1 8 0 0 -18 1 9 80 197 -18 1 10 164 166 -18 1 11 211 90 -18 1 12 212 93 -18 1 13 258 186 -18 1 14 197 91 -18 1 15 134 84 -18 1 16 76 139 -18 1 17 10 26 -18 1 18 0 0 -18 1 19 0 0 -18 1 20 0 0 -18 1 21 0 0 -18 1 22 0 0 -18 1 23 0 0 -18 1 24 0 0 -19 1 1 0 0 -19 1 2 0 0 -19 1 3 0 0 -19 1 4 0 0 -19 1 5 0 0 -19 1 6 0 0 -19 1 7 0 0 -19 1 8 0 0 -19 1 9 42 0 -19 1 10 84 0 -19 1 11 123 0 -19 1 12 148 0 -19 1 13 200 0 -19 1 14 109 0 -19 1 15 125 0 -19 1 16 60 0 -19 1 17 6 0 -19 1 18 0 0 -19 1 19 0 0 -19 1 20 0 0 -19 1 21 0 0 -19 1 22 0 0 -19 1 23 0 0 -19 1 24 0 0 -20 1 1 0 0 -20 1 2 0 0 -20 1 3 0 0 -20 1 4 0 0 -20 1 5 0 0 -20 1 6 0 0 -20 1 7 0 0 -20 1 8 0 0 -20 1 9 33 0 -20 1 10 82 0 -20 1 11 109 0 -20 1 12 124 0 -20 1 13 85 0 -20 1 14 113 0 -20 1 15 73 0 -20 1 16 51 67 -20 1 17 6 0 -20 1 18 0 0 -20 1 19 0 0 -20 1 20 0 0 -20 1 21 0 0 -20 1 22 0 0 -20 1 23 0 0 -20 1 24 0 0 -21 1 1 0 0 -21 1 2 0 0 -21 1 3 0 0 -21 1 4 0 0 -21 1 5 0 0 -21 1 6 0 0 -21 1 7 0 0 -21 1 8 0 0 -21 1 9 110 392 -21 1 10 268 737 -21 1 11 376 803 -21 1 12 435 828 -21 1 13 432 739 -21 1 14 353 449 -21 1 15 229 334 -21 1 16 116 278 -21 1 17 14 34 -21 1 18 0 0 -21 1 19 0 0 -21 1 20 0 0 -21 1 21 0 0 -21 1 22 0 0 -21 1 23 0 0 -21 1 24 0 0 -22 1 1 0 0 -22 1 2 0 0 -22 1 3 0 0 -22 1 4 0 0 -22 1 5 0 0 -22 1 6 0 0 -22 1 7 0 0 -22 1 8 0 0 -22 1 9 30 0 -22 1 10 72 0 -22 1 11 51 0 -22 1 12 132 0 -22 1 13 102 0 -22 1 14 70 0 -22 1 15 143 0 -22 1 16 71 0 -22 1 17 9 0 -22 1 18 0 0 -22 1 19 0 0 -22 1 20 0 0 -22 1 21 0 0 -22 1 22 0 0 -22 1 23 0 0 -22 1 24 0 0 -23 1 1 0 0 -23 1 2 0 0 -23 1 3 0 0 -23 1 4 0 0 -23 1 5 0 0 -23 1 6 0 0 -23 1 7 0 0 -23 1 8 0 0 -23 1 9 83 0 -23 1 10 149 0 -23 1 11 144 0 -23 1 12 119 0 -23 1 13 121 0 -23 1 14 109 0 -23 1 15 83 0 -23 1 16 48 0 -23 1 17 6 0 -23 1 18 0 0 -23 1 19 0 0 -23 1 20 0 0 -23 1 21 0 0 -23 1 22 0 0 -23 1 23 0 0 -23 1 24 0 0 -24 1 1 0 0 -24 1 2 0 0 -24 1 3 0 0 -24 1 4 0 0 -24 1 5 0 0 -24 1 6 0 0 -24 1 7 0 0 -24 1 8 0 0 -24 1 9 40 0 -24 1 10 89 0 -24 1 11 105 0 -24 1 12 117 0 -24 1 13 94 0 -24 1 14 80 0 -24 1 15 34 0 -24 1 16 26 0 -24 1 17 8 0 -24 1 18 0 0 -24 1 19 0 0 -24 1 20 0 0 -24 1 21 0 0 -24 1 22 0 0 -24 1 23 0 0 -24 1 24 0 0 -25 1 1 0 0 -25 1 2 0 0 -25 1 3 0 0 -25 1 4 0 0 -25 1 5 0 0 -25 1 6 0 0 -25 1 7 0 0 -25 1 8 2 26 -25 1 9 152 645 -25 1 10 308 782 -25 1 11 428 843 -25 1 12 474 865 -25 1 13 480 866 -25 1 14 430 849 -25 1 15 326 881 -25 1 16 182 755 -25 1 17 29 238 -25 1 18 0 0 -25 1 19 0 0 -25 1 20 0 0 -25 1 21 0 0 -25 1 22 0 0 -25 1 23 0 0 -25 1 24 0 0 -26 1 1 0 0 -26 1 2 0 0 -26 1 3 0 0 -26 1 4 0 0 -26 1 5 0 0 -26 1 6 0 0 -26 1 7 0 0 -26 1 8 3 30 -26 1 9 147 657 -26 1 10 290 879 -26 1 11 433 847 -26 1 12 466 872 -26 1 13 488 968 -26 1 14 438 947 -26 1 15 334 894 -26 1 16 178 691 -26 1 17 31 246 -26 1 18 0 0 -26 1 19 0 0 -26 1 20 0 0 -26 1 21 0 0 -26 1 22 0 0 -26 1 23 0 0 -26 1 24 0 0 -27 1 1 0 0 -27 1 2 0 0 -27 1 3 0 0 -27 1 4 0 0 -27 1 5 0 0 -27 1 6 0 0 -27 1 7 0 0 -27 1 8 14 55 -27 1 9 153 437 -27 1 10 316 705 -27 1 11 423 944 -27 1 12 489 976 -27 1 13 486 878 -27 1 14 456 381 -27 1 15 297 179 -27 1 16 112 0 -27 1 17 13 0 -27 1 18 0 0 -27 1 19 0 0 -27 1 20 0 0 -27 1 21 0 0 -27 1 22 0 0 -27 1 23 0 0 -27 1 24 0 0 -28 1 1 0 0 -28 1 2 0 0 -28 1 3 0 0 -28 1 4 0 0 -28 1 5 0 0 -28 1 6 0 0 -28 1 7 0 0 -28 1 8 14 68 -28 1 9 173 588 -28 1 10 362 442 -28 1 11 515 378 -28 1 12 597 390 -28 1 13 555 390 -28 1 14 490 478 -28 1 15 361 181 -28 1 16 156 78 -28 1 17 21 0 -28 1 18 0 0 -28 1 19 0 0 -28 1 20 0 0 -28 1 21 0 0 -28 1 22 0 0 -28 1 23 0 0 -28 1 24 0 0 -29 1 1 0 0 -29 1 2 0 0 -29 1 3 0 0 -29 1 4 0 0 -29 1 5 0 0 -29 1 6 0 0 -29 1 7 0 0 -29 1 8 12 43 -29 1 9 105 223 -29 1 10 196 178 -29 1 11 273 191 -29 1 12 346 294 -29 1 13 404 489 -29 1 14 421 766 -29 1 15 329 724 -29 1 16 203 784 -29 1 17 42 382 -29 1 18 0 0 -29 1 19 0 0 -29 1 20 0 0 -29 1 21 0 0 -29 1 22 0 0 -29 1 23 0 0 -29 1 24 0 0 -30 1 1 0 0 -30 1 2 0 0 -30 1 3 0 0 -30 1 4 0 0 -30 1 5 0 0 -30 1 6 0 0 -30 1 7 0 0 -30 1 8 2 0 -30 1 9 47 0 -30 1 10 51 0 -30 1 11 66 0 -30 1 12 130 0 -30 1 13 127 0 -30 1 14 103 0 -30 1 15 121 0 -30 1 16 57 0 -30 1 17 9 0 -30 1 18 0 0 -30 1 19 0 0 -30 1 20 0 0 -30 1 21 0 0 -30 1 22 0 0 -30 1 23 0 0 -30 1 24 0 0 -31 1 1 0 0 -31 1 2 0 0 -31 1 3 0 0 -31 1 4 0 0 -31 1 5 0 0 -31 1 6 0 0 -31 1 7 0 0 -31 1 8 4 0 -31 1 9 48 0 -31 1 10 156 0 -31 1 11 317 188 -31 1 12 231 96 -31 1 13 243 97 -31 1 14 218 95 -31 1 15 161 90 -31 1 16 74 0 -31 1 17 19 47 -31 1 18 0 0 -31 1 19 0 0 -31 1 20 0 0 -31 1 21 0 0 -31 1 22 0 0 -31 1 23 0 0 -31 1 24 0 0 -1 2 1 0 0 -1 2 2 0 0 -1 2 3 0 0 -1 2 4 0 0 -1 2 5 0 0 -1 2 6 0 0 -1 2 7 0 0 -1 2 8 15 68 -1 2 9 98 141 -1 2 10 176 85 -1 2 11 247 0 -1 2 12 446 469 -1 2 13 564 659 -1 2 14 412 829 -1 2 15 350 521 -1 2 16 209 377 -1 2 17 49 313 -1 2 18 0 0 -1 2 19 0 0 -1 2 20 0 0 -1 2 21 0 0 -1 2 22 0 0 -1 2 23 0 0 -1 2 24 0 0 -2 2 1 0 0 -2 2 2 0 0 -2 2 3 0 0 -2 2 4 0 0 -2 2 5 0 0 -2 2 6 0 0 -2 2 7 0 0 -2 2 8 13 26 -2 2 9 91 215 -2 2 10 226 256 -2 2 11 169 0 -2 2 12 149 189 -2 2 13 176 0 -2 2 14 135 0 -2 2 15 103 0 -2 2 16 48 0 -2 2 17 13 0 -2 2 18 0 0 -2 2 19 0 0 -2 2 20 0 0 -2 2 21 0 0 -2 2 22 0 0 -2 2 23 0 0 -2 2 24 0 0 -3 2 1 0 0 -3 2 2 0 0 -3 2 3 0 0 -3 2 4 0 0 -3 2 5 0 0 -3 2 6 0 0 -3 2 7 0 0 -3 2 8 10 0 -3 2 9 77 0 -3 2 10 158 0 -3 2 11 111 0 -3 2 12 174 0 -3 2 13 174 0 -3 2 14 124 0 -3 2 15 99 0 -3 2 16 63 0 -3 2 17 17 0 -3 2 18 0 0 -3 2 19 0 0 -3 2 20 0 0 -3 2 21 0 0 -3 2 22 0 0 -3 2 23 0 0 -3 2 24 0 0 -4 2 1 0 0 -4 2 2 0 0 -4 2 3 0 0 -4 2 4 0 0 -4 2 5 0 0 -4 2 6 0 0 -4 2 7 0 0 -4 2 8 17 0 -4 2 9 131 156 -4 2 10 271 276 -4 2 11 431 683 -4 2 12 518 901 -4 2 13 526 902 -4 2 14 476 884 -4 2 15 374 843 -4 2 16 238 833 -4 2 17 66 556 -4 2 18 0 0 -4 2 19 0 0 -4 2 20 0 0 -4 2 21 0 0 -4 2 22 0 0 -4 2 23 0 0 -4 2 24 0 0 -5 2 1 0 0 -5 2 2 0 0 -5 2 3 0 0 -5 2 4 0 0 -5 2 5 0 0 -5 2 6 0 0 -5 2 7 0 0 -5 2 8 13 0 -5 2 9 91 0 -5 2 10 169 89 -5 2 11 375 287 -5 2 12 553 294 -5 2 13 436 0 -5 2 14 485 0 -5 2 15 274 0 -5 2 16 257 485 -5 2 17 74 312 -5 2 18 0 0 -5 2 19 0 0 -5 2 20 0 0 -5 2 21 0 0 -5 2 22 0 0 -5 2 23 0 0 -5 2 24 0 0 -6 2 1 0 0 -6 2 2 0 0 -6 2 3 0 0 -6 2 4 0 0 -6 2 5 0 0 -6 2 6 0 0 -6 2 7 0 0 -6 2 8 13 0 -6 2 9 83 0 -6 2 10 165 88 -6 2 11 227 0 -6 2 12 263 0 -6 2 13 400 287 -6 2 14 194 93 -6 2 15 264 266 -6 2 16 144 156 -6 2 17 63 204 -6 2 18 0 0 -6 2 19 0 0 -6 2 20 0 0 -6 2 21 0 0 -6 2 22 0 0 -6 2 23 0 0 -6 2 24 0 0 -7 2 1 0 0 -7 2 2 0 0 -7 2 3 0 0 -7 2 4 0 0 -7 2 5 0 0 -7 2 6 0 0 -7 2 7 0 0 -7 2 8 8 55 -7 2 9 95 226 -7 2 10 168 175 -7 2 11 229 0 -7 2 12 264 0 -7 2 13 268 0 -7 2 14 403 467 -7 2 15 412 799 -7 2 16 254 628 -7 2 17 80 365 -7 2 18 0 0 -7 2 19 0 0 -7 2 20 0 0 -7 2 21 0 0 -7 2 22 0 0 -7 2 23 0 0 -7 2 24 0 0 -8 2 1 0 0 -8 2 2 0 0 -8 2 3 0 0 -8 2 4 0 0 -8 2 5 0 0 -8 2 6 0 0 -8 2 7 0 0 -8 2 8 29 212 -8 2 9 194 608 -8 2 10 366 791 -8 2 11 477 932 -8 2 12 535 956 -8 2 13 544 960 -8 2 14 495 943 -8 2 15 392 896 -8 2 16 246 793 -8 2 17 78 533 -8 2 18 0 0 -8 2 19 0 0 -8 2 20 0 0 -8 2 21 0 0 -8 2 22 0 0 -8 2 23 0 0 -8 2 24 0 0 -9 2 1 0 0 -9 2 2 0 0 -9 2 3 0 0 -9 2 4 0 0 -9 2 5 0 0 -9 2 6 0 0 -9 2 7 0 0 -9 2 8 34 268 -9 2 9 193 688 -9 2 10 258 710 -9 2 11 234 471 -9 2 12 421 677 -9 2 13 495 775 -9 2 14 193 0 -9 2 15 278 271 -9 2 16 129 161 -9 2 17 49 111 -9 2 18 0 0 -9 2 19 0 0 -9 2 20 0 0 -9 2 21 0 0 -9 2 22 0 0 -9 2 23 0 0 -9 2 24 0 0 -10 2 1 0 0 -10 2 2 0 0 -10 2 3 0 0 -10 2 4 0 0 -10 2 5 0 0 -10 2 6 0 0 -10 2 7 0 0 -10 2 8 18 0 -10 2 9 92 0 -10 2 10 207 0 -10 2 11 125 0 -10 2 12 305 0 -10 2 13 144 0 -10 2 14 252 0 -10 2 15 196 0 -10 2 16 59 0 -10 2 17 18 0 -10 2 18 0 0 -10 2 19 0 0 -10 2 20 0 0 -10 2 21 0 0 -10 2 22 0 0 -10 2 23 0 0 -10 2 24 0 0 -11 2 1 0 0 -11 2 2 0 0 -11 2 3 0 0 -11 2 4 0 0 -11 2 5 0 0 -11 2 6 0 0 -11 2 7 0 0 -11 2 8 6 0 -11 2 9 51 0 -11 2 10 149 0 -11 2 11 225 0 -11 2 12 247 0 -11 2 13 206 0 -11 2 14 255 0 -11 2 15 119 0 -11 2 16 68 0 -11 2 17 21 0 -11 2 18 0 0 -11 2 19 0 0 -11 2 20 0 0 -11 2 21 0 0 -11 2 22 0 0 -11 2 23 0 0 -11 2 24 0 0 -12 2 1 0 0 -12 2 2 0 0 -12 2 3 0 0 -12 2 4 0 0 -12 2 5 0 0 -12 2 6 0 0 -12 2 7 0 0 -12 2 8 14 0 -12 2 9 63 0 -12 2 10 156 91 -12 2 11 557 579 -12 2 12 619 593 -12 2 13 591 793 -12 2 14 550 878 -12 2 15 434 936 -12 2 16 276 847 -12 2 17 101 624 -12 2 18 0 0 -12 2 19 0 0 -12 2 20 0 0 -12 2 21 0 0 -12 2 22 0 0 -12 2 23 0 0 -12 2 24 0 0 -13 2 1 0 0 -13 2 2 0 0 -13 2 3 0 0 -13 2 4 0 0 -13 2 5 0 0 -13 2 6 0 0 -13 2 7 0 0 -13 2 8 43 318 -13 2 9 141 248 -13 2 10 352 750 -13 2 11 510 889 -13 2 12 568 908 -13 2 13 576 910 -13 2 14 527 896 -13 2 15 424 859 -13 2 16 276 780 -13 2 17 105 591 -13 2 18 0 0 -13 2 19 0 0 -13 2 20 0 0 -13 2 21 0 0 -13 2 22 0 0 -13 2 23 0 0 -13 2 24 0 0 -14 2 1 0 0 -14 2 2 0 0 -14 2 3 0 0 -14 2 4 0 0 -14 2 5 0 0 -14 2 6 0 0 -14 2 7 0 0 -14 2 8 59 535 -14 2 9 239 827 -14 2 10 402 934 -14 2 11 523 983 -14 2 12 590 1003 -14 2 13 599 1004 -14 2 14 549 990 -14 2 15 443 949 -14 2 16 291 864 -14 2 17 114 655 -14 2 18 0 0 -14 2 19 0 0 -14 2 20 0 0 -14 2 21 0 0 -14 2 22 0 0 -14 2 23 0 0 -14 2 24 0 0 -15 2 1 0 0 -15 2 2 0 0 -15 2 3 0 0 -15 2 4 0 0 -15 2 5 0 0 -15 2 6 0 0 -15 2 7 0 0 -15 2 8 46 161 -15 2 9 114 0 -15 2 10 141 0 -15 2 11 198 0 -15 2 12 225 0 -15 2 13 156 0 -15 2 14 143 0 -15 2 15 128 0 -15 2 16 79 0 -15 2 17 33 0 -15 2 18 0 0 -15 2 19 0 0 -15 2 20 0 0 -15 2 21 0 0 -15 2 22 0 0 -15 2 23 0 0 -15 2 24 0 0 -16 2 1 0 0 -16 2 2 0 0 -16 2 3 0 0 -16 2 4 0 0 -16 2 5 0 0 -16 2 6 0 0 -16 2 7 0 0 -16 2 8 62 427 -16 2 9 223 575 -16 2 10 382 734 -16 2 11 507 869 -16 2 12 571 885 -16 2 13 600 987 -16 2 14 550 971 -16 2 15 446 932 -16 2 16 295 848 -16 2 17 119 648 -16 2 18 0 0 -16 2 19 0 0 -16 2 20 0 0 -16 2 21 0 0 -16 2 22 0 0 -16 2 23 0 0 -16 2 24 0 0 -17 2 1 0 0 -17 2 2 0 0 -17 2 3 0 0 -17 2 4 0 0 -17 2 5 0 0 -17 2 6 0 0 -17 2 7 0 0 -17 2 8 42 0 -17 2 9 112 0 -17 2 10 134 0 -17 2 11 152 0 -17 2 12 451 0 -17 2 13 458 0 -17 2 14 426 390 -17 2 15 433 840 -17 2 16 300 849 -17 2 17 123 656 -17 2 18 0 0 -17 2 19 0 0 -17 2 20 0 0 -17 2 21 0 0 -17 2 22 0 0 -17 2 23 0 0 -17 2 24 0 0 -18 2 1 0 0 -18 2 2 0 0 -18 2 3 0 0 -18 2 4 0 0 -18 2 5 0 0 -18 2 6 0 0 -18 2 7 0 0 -18 2 8 68 436 -18 2 9 252 653 -18 2 10 443 459 -18 2 11 432 193 -18 2 12 449 98 -18 2 13 438 295 -18 2 14 525 386 -18 2 15 302 369 -18 2 16 184 168 -18 2 17 83 194 -18 2 18 0 0 -18 2 19 0 0 -18 2 20 0 0 -18 2 21 0 0 -18 2 22 0 0 -18 2 23 0 0 -18 2 24 0 0 -19 2 1 0 0 -19 2 2 0 0 -19 2 3 0 0 -19 2 4 0 0 -19 2 5 0 0 -19 2 6 0 0 -19 2 7 0 0 -19 2 8 29 0 -19 2 9 113 0 -19 2 10 244 93 -19 2 11 534 686 -19 2 12 625 798 -19 2 13 646 900 -19 2 14 592 884 -19 2 15 474 946 -19 2 16 319 868 -19 2 17 137 686 -19 2 18 0 0 -19 2 19 0 0 -19 2 20 0 0 -19 2 21 0 0 -19 2 22 0 0 -19 2 23 0 0 -19 2 24 0 0 -20 2 1 0 0 -20 2 2 0 0 -20 2 3 0 0 -20 2 4 0 0 -20 2 5 0 0 -20 2 6 0 0 -20 2 7 0 0 -20 2 8 84 533 -20 2 9 272 847 -20 2 10 436 941 -20 2 11 557 987 -20 2 12 625 1006 -20 2 13 634 1008 -20 2 14 580 988 -20 2 15 438 757 -20 2 16 297 698 -20 2 17 134 618 -20 2 18 0 0 -20 2 19 0 0 -20 2 20 0 0 -20 2 21 0 0 -20 2 22 0 0 -20 2 23 0 0 -20 2 24 0 0 -21 2 1 0 0 -21 2 2 0 0 -21 2 3 0 0 -21 2 4 0 0 -21 2 5 0 0 -21 2 6 0 0 -21 2 7 0 0 -21 2 8 87 412 -21 2 9 269 756 -21 2 10 423 841 -21 2 11 539 880 -21 2 12 605 899 -21 2 13 613 900 -21 2 14 564 886 -21 2 15 476 757 -21 2 16 345 694 -21 2 17 141 550 -21 2 18 0 0 -21 2 19 0 0 -21 2 20 0 0 -21 2 21 0 0 -21 2 22 0 0 -21 2 23 0 0 -21 2 24 0 0 -22 2 1 0 0 -22 2 2 0 0 -22 2 3 0 0 -22 2 4 0 0 -22 2 5 0 0 -22 2 6 0 0 -22 2 7 0 0 -22 2 8 34 0 -22 2 9 72 0 -22 2 10 107 0 -22 2 11 142 0 -22 2 12 240 0 -22 2 13 319 0 -22 2 14 298 0 -22 2 15 364 185 -22 2 16 200 170 -22 2 17 86 135 -22 2 18 0 0 -22 2 19 0 0 -22 2 20 0 0 -22 2 21 0 0 -22 2 22 0 0 -22 2 23 0 0 -22 2 24 0 0 -23 2 1 0 0 -23 2 2 0 0 -23 2 3 0 0 -23 2 4 0 0 -23 2 5 0 0 -23 2 6 0 0 -23 2 7 0 0 -23 2 8 95 512 -23 2 9 281 779 -23 2 10 442 861 -23 2 11 539 799 -23 2 12 578 712 -23 2 13 587 715 -23 2 14 485 502 -23 2 15 344 290 -23 2 16 253 357 -23 2 17 138 508 -23 2 18 0 0 -23 2 19 0 0 -23 2 20 0 0 -23 2 21 0 0 -23 2 22 0 0 -23 2 23 0 0 -23 2 24 0 0 -24 2 1 0 0 -24 2 2 0 0 -24 2 3 0 0 -24 2 4 0 0 -24 2 5 0 0 -24 2 6 0 0 -24 2 7 0 0 -24 2 8 49 0 -24 2 9 204 86 -24 2 10 354 381 -24 2 11 526 697 -24 2 12 654 713 -24 2 13 689 714 -24 2 14 664 704 -24 2 15 456 194 -24 2 16 326 270 -24 2 17 57 0 -24 2 18 0 0 -24 2 19 0 0 -24 2 20 0 0 -24 2 21 0 0 -24 2 22 0 0 -24 2 23 0 0 -24 2 24 0 0 -25 2 1 0 0 -25 2 2 0 0 -25 2 3 0 0 -25 2 4 0 0 -25 2 5 0 0 -25 2 6 0 0 -25 2 7 0 0 -25 2 8 50 0 -25 2 9 198 259 -25 2 10 427 861 -25 2 11 590 995 -25 2 12 656 1011 -25 2 13 653 910 -25 2 14 589 995 -25 2 15 467 768 -25 2 16 201 177 -25 2 17 103 218 -25 2 18 0 0 -25 2 19 0 0 -25 2 20 0 0 -25 2 21 0 0 -25 2 22 0 0 -25 2 23 0 0 -25 2 24 0 0 -26 2 1 0 0 -26 2 2 0 0 -26 2 3 0 0 -26 2 4 0 0 -26 2 5 0 0 -26 2 6 0 0 -26 2 7 0 0 -26 2 8 123 689 -26 2 9 315 890 -26 2 10 465 875 -26 2 11 604 1011 -26 2 12 673 1028 -26 2 13 681 1030 -26 2 14 665 915 -26 2 15 519 982 -26 2 16 381 821 -26 2 17 187 604 -26 2 18 3 30 -26 2 19 0 0 -26 2 20 0 0 -26 2 21 0 0 -26 2 22 0 0 -26 2 23 0 0 -26 2 24 0 0 -27 2 1 0 0 -27 2 2 0 0 -27 2 3 0 0 -27 2 4 0 0 -27 2 5 0 0 -27 2 6 0 0 -27 2 7 0 0 -27 2 8 127 687 -27 2 9 302 795 -27 2 10 484 964 -27 2 11 606 1003 -27 2 12 672 1017 -27 2 13 466 203 -27 2 14 318 0 -27 2 15 384 482 -27 2 16 175 0 -27 2 17 77 0 -27 2 18 3 0 -27 2 19 0 0 -27 2 20 0 0 -27 2 21 0 0 -27 2 22 0 0 -27 2 23 0 0 -27 2 24 0 0 -28 2 1 0 0 -28 2 2 0 0 -28 2 3 0 0 -28 2 4 0 0 -28 2 5 0 0 -28 2 6 0 0 -28 2 7 0 0 -28 2 8 32 0 -28 2 9 85 0 -28 2 10 237 0 -28 2 11 451 98 -28 2 12 273 0 -28 2 13 512 0 -28 2 14 381 0 -28 2 15 315 284 -28 2 16 284 351 -28 2 17 101 217 -28 2 18 1 4 -28 2 19 0 0 -28 2 20 0 0 -28 2 21 0 0 -28 2 22 0 0 -28 2 23 0 0 -28 2 24 0 0 -1 3 1 0 0 -1 3 2 0 0 -1 3 3 0 0 -1 3 4 0 0 -1 3 5 0 0 -1 3 6 0 0 -1 3 7 0 0 -1 3 8 127 328 -1 3 9 340 425 -1 3 10 515 373 -1 3 11 625 195 -1 3 12 539 99 -1 3 13 614 297 -1 3 14 469 98 -1 3 15 303 0 -1 3 16 241 0 -1 3 17 106 0 -1 3 18 9 9 -1 3 19 0 0 -1 3 20 0 0 -1 3 21 0 0 -1 3 22 0 0 -1 3 23 0 0 -1 3 24 0 0 -2 3 1 0 0 -2 3 2 0 0 -2 3 3 0 0 -2 3 4 0 0 -2 3 5 0 0 -2 3 6 0 0 -2 3 7 0 0 -2 3 8 114 400 -2 3 9 228 342 -2 3 10 107 0 -2 3 11 210 0 -2 3 12 123 0 -2 3 13 477 296 -2 3 14 593 781 -2 3 15 491 753 -2 3 16 336 611 -2 3 17 118 146 -2 3 18 10 21 -2 3 19 0 0 -2 3 20 0 0 -2 3 21 0 0 -2 3 22 0 0 -2 3 23 0 0 -2 3 24 0 0 -3 3 1 0 0 -3 3 2 0 0 -3 3 3 0 0 -3 3 4 0 0 -3 3 5 0 0 -3 3 6 0 0 -3 3 7 0 0 -3 3 8 101 264 -3 3 9 303 423 -3 3 10 428 557 -3 3 11 561 676 -3 3 12 558 491 -3 3 13 353 98 -3 3 14 434 291 -3 3 15 262 94 -3 3 16 220 175 -3 3 17 169 436 -3 3 18 18 93 -3 3 19 0 0 -3 3 20 0 0 -3 3 21 0 0 -3 3 22 0 0 -3 3 23 0 0 -3 3 24 0 0 -4 3 1 0 0 -4 3 2 0 0 -4 3 3 0 0 -4 3 4 0 0 -4 3 5 0 0 -4 3 6 0 0 -4 3 7 0 0 -4 3 8 103 69 -4 3 9 253 86 -4 3 10 408 189 -4 3 11 466 198 -4 3 12 437 100 -4 3 13 659 504 -4 3 14 662 698 -4 3 15 552 680 -4 3 16 390 808 -4 3 17 196 451 -4 3 18 23 123 -4 3 19 0 0 -4 3 20 0 0 -4 3 21 0 0 -4 3 22 0 0 -4 3 23 0 0 -4 3 24 0 0 -5 3 1 0 0 -5 3 2 0 0 -5 3 3 0 0 -5 3 4 0 0 -5 3 5 0 0 -5 3 6 0 0 -5 3 7 0 0 -5 3 8 69 0 -5 3 9 166 0 -5 3 10 69 0 -5 3 11 73 0 -5 3 12 83 0 -5 3 13 226 0 -5 3 14 207 0 -5 3 15 167 0 -5 3 16 128 0 -5 3 17 90 0 -5 3 18 12 0 -5 3 19 0 0 -5 3 20 0 0 -5 3 21 0 0 -5 3 22 0 0 -5 3 23 0 0 -5 3 24 0 0 -6 3 1 0 0 -6 3 2 0 0 -6 3 3 0 0 -6 3 4 0 0 -6 3 5 0 0 -6 3 6 0 0 -6 3 7 0 0 -6 3 8 84 71 -6 3 9 219 175 -6 3 10 296 95 -6 3 11 324 0 -6 3 12 337 0 -6 3 13 349 100 -6 3 14 313 0 -6 3 15 147 0 -6 3 16 100 0 -6 3 17 38 0 -6 3 18 5 0 -6 3 19 0 0 -6 3 20 0 0 -6 3 21 0 0 -6 3 22 0 0 -6 3 23 0 0 -6 3 24 0 0 -7 3 1 0 0 -7 3 2 0 0 -7 3 3 0 0 -7 3 4 0 0 -7 3 5 0 0 -7 3 6 0 0 -7 3 7 9 34 -7 3 8 136 422 -7 3 9 330 696 -7 3 10 484 757 -7 3 11 544 590 -7 3 12 499 301 -7 3 13 461 200 -7 3 14 532 494 -7 3 15 513 765 -7 3 16 384 806 -7 3 17 203 682 -7 3 18 30 183 -7 3 19 0 0 -7 3 20 0 0 -7 3 21 0 0 -7 3 22 0 0 -7 3 23 0 0 -7 3 24 0 0 -8 3 1 0 0 -8 3 2 0 0 -8 3 3 0 0 -8 3 4 0 0 -8 3 5 0 0 -8 3 6 0 0 -8 3 7 1 18 -8 3 8 192 652 -8 3 9 431 709 -8 3 10 628 476 -8 3 11 538 0 -8 3 12 596 0 -8 3 13 555 0 -8 3 14 511 0 -8 3 15 422 0 -8 3 16 294 0 -8 3 17 143 0 -8 3 18 23 0 -8 3 19 0 0 -8 3 20 0 0 -8 3 21 0 0 -8 3 22 0 0 -8 3 23 0 0 -8 3 24 0 0 -9 3 1 0 0 -9 3 2 0 0 -9 3 3 0 0 -9 3 4 0 0 -9 3 5 0 0 -9 3 6 0 0 -9 3 7 4 0 -9 3 8 52 0 -9 3 9 99 0 -9 3 10 140 0 -9 3 11 169 0 -9 3 12 186 0 -9 3 13 99 0 -9 3 14 217 0 -9 3 15 288 0 -9 3 16 120 0 -9 3 17 55 0 -9 3 18 15 34 -9 3 19 0 0 -9 3 20 0 0 -9 3 21 0 0 -9 3 22 0 0 -9 3 23 0 0 -9 3 24 0 0 -10 3 1 0 0 -10 3 2 0 0 -10 3 3 0 0 -10 3 4 0 0 -10 3 5 0 0 -10 3 6 0 0 -10 3 7 11 13 -10 3 8 117 75 -10 3 9 344 363 -10 3 10 568 195 -10 3 11 711 202 -10 3 12 761 718 -10 3 13 831 513 -10 3 14 734 709 -10 3 15 612 491 -10 3 16 402 644 -10 3 17 226 477 -10 3 18 41 234 -10 3 19 0 0 -10 3 20 0 0 -10 3 21 0 0 -10 3 22 0 0 -10 3 23 0 0 -10 3 24 0 0 -11 3 1 0 0 -11 3 2 0 0 -11 3 3 0 0 -11 3 4 0 0 -11 3 5 0 0 -11 3 6 0 0 -11 3 7 22 144 -11 3 8 197 701 -11 3 9 390 829 -11 3 10 553 884 -11 3 11 685 1015 -11 3 12 751 1030 -11 3 13 757 1031 -11 3 14 688 914 -11 3 15 577 886 -11 3 16 418 830 -11 3 17 231 720 -11 3 18 45 382 -11 3 19 0 0 -11 3 20 0 0 -11 3 21 0 0 -11 3 22 0 0 -11 3 23 0 0 -11 3 24 0 0 -12 3 1 0 0 -12 3 2 0 0 -12 3 3 0 0 -12 3 4 0 0 -12 3 5 0 0 -12 3 6 0 0 -12 3 7 22 38 -12 3 8 148 154 -12 3 9 289 91 -12 3 10 522 683 -12 3 11 674 706 -12 3 12 735 711 -12 3 13 664 303 -12 3 14 547 200 -12 3 15 559 580 -12 3 16 316 271 -12 3 17 184 314 -12 3 18 41 268 -12 3 19 0 0 -12 3 20 0 0 -12 3 21 0 0 -12 3 22 0 0 -12 3 23 0 0 -12 3 24 0 0 -13 3 1 0 0 -13 3 2 0 0 -13 3 3 0 0 -13 3 4 0 0 -13 3 5 0 0 -13 3 6 0 0 -13 3 7 28 221 -13 3 8 209 764 -13 3 9 415 809 -13 3 10 586 868 -13 3 11 696 894 -13 3 12 810 908 -13 3 13 873 805 -13 3 14 811 798 -13 3 15 674 681 -13 3 16 472 641 -13 3 17 234 556 -13 3 18 44 286 -13 3 19 0 0 -13 3 20 0 0 -13 3 21 0 0 -13 3 22 0 0 -13 3 23 0 0 -13 3 24 0 0 -14 3 1 0 0 -14 3 2 0 0 -14 3 3 0 0 -14 3 4 0 0 -14 3 5 0 0 -14 3 6 0 0 -14 3 7 4 0 -14 3 8 96 0 -14 3 9 86 0 -14 3 10 176 0 -14 3 11 176 0 -14 3 12 191 0 -14 3 13 193 0 -14 3 14 179 0 -14 3 15 152 0 -14 3 16 114 0 -14 3 17 67 0 -14 3 18 15 0 -14 3 19 0 0 -14 3 20 0 0 -14 3 21 0 0 -14 3 22 0 0 -14 3 23 0 0 -14 3 24 0 0 -15 3 1 0 0 -15 3 2 0 0 -15 3 3 0 0 -15 3 4 0 0 -15 3 5 0 0 -15 3 6 0 0 -15 3 7 8 0 -15 3 8 100 0 -15 3 9 203 0 -15 3 10 218 96 -15 3 11 133 0 -15 3 12 146 0 -15 3 13 146 0 -15 3 14 336 99 -15 3 15 366 192 -15 3 16 223 91 -15 3 17 115 0 -15 3 18 37 141 -15 3 19 0 0 -15 3 20 0 0 -15 3 21 0 0 -15 3 22 0 0 -15 3 23 0 0 -15 3 24 0 0 -16 3 1 0 0 -16 3 2 0 0 -16 3 3 0 0 -16 3 4 0 0 -16 3 5 0 0 -16 3 6 0 0 -16 3 7 42 217 -16 3 8 216 474 -16 3 9 420 643 -16 3 10 588 686 -16 3 11 773 606 -16 3 12 934 409 -16 3 13 540 205 -16 3 14 729 506 -16 3 15 557 394 -16 3 16 483 466 -16 3 17 275 328 -16 3 18 61 158 -16 3 19 0 0 -16 3 20 0 0 -16 3 21 0 0 -16 3 22 0 0 -16 3 23 0 0 -16 3 24 0 0 -17 3 1 0 0 -17 3 2 0 0 -17 3 3 0 0 -17 3 4 0 0 -17 3 5 0 0 -17 3 6 0 0 -17 3 7 47 306 -17 3 8 223 488 -17 3 9 461 746 -17 3 10 615 892 -17 3 11 753 920 -17 3 12 803 931 -17 3 13 809 1036 -17 3 14 738 1026 -17 3 15 620 990 -17 3 16 460 938 -17 3 17 266 824 -17 3 18 68 530 -17 3 19 0 0 -17 3 20 0 0 -17 3 21 0 0 -17 3 22 0 0 -17 3 23 0 0 -17 3 24 0 0 -18 3 1 0 0 -18 3 2 0 0 -18 3 3 0 0 -18 3 4 0 0 -18 3 5 0 0 -18 3 6 0 0 -18 3 7 50 442 -18 3 8 241 731 -18 3 9 436 840 -18 3 10 608 790 -18 3 11 716 915 -18 3 12 659 206 -18 3 13 734 614 -18 3 14 719 706 -18 3 15 544 294 -18 3 16 353 92 -18 3 17 221 246 -18 3 18 56 105 -18 3 19 0 0 -18 3 20 0 0 -18 3 21 0 0 -18 3 22 0 0 -18 3 23 0 0 -18 3 24 0 0 -19 3 1 0 0 -19 3 2 0 0 -19 3 3 0 0 -19 3 4 0 0 -19 3 5 0 0 -19 3 6 0 0 -19 3 7 38 48 -19 3 8 168 0 -19 3 9 128 0 -19 3 10 307 0 -19 3 11 370 0 -19 3 12 405 0 -19 3 13 329 0 -19 3 14 342 0 -19 3 15 337 98 -19 3 16 242 92 -19 3 17 196 81 -19 3 18 50 52 -19 3 19 0 0 -19 3 20 0 0 -19 3 21 0 0 -19 3 22 0 0 -19 3 23 0 0 -19 3 24 0 0 -20 3 1 0 0 -20 3 2 0 0 -20 3 3 0 0 -20 3 4 0 0 -20 3 5 0 0 -20 3 6 0 0 -20 3 7 58 448 -20 3 8 252 732 -20 3 9 442 830 -20 3 10 606 884 -20 3 11 751 1014 -20 3 12 833 926 -20 3 13 815 920 -20 3 14 792 915 -20 3 15 665 883 -20 3 16 498 843 -20 3 17 291 742 -20 3 18 79 483 -20 3 19 0 0 -20 3 20 0 0 -20 3 21 0 0 -20 3 22 0 0 -20 3 23 0 0 -20 3 24 0 0 -21 3 1 0 0 -21 3 2 0 0 -21 3 3 0 0 -21 3 4 0 0 -21 3 5 0 0 -21 3 6 0 0 -21 3 7 68 474 -21 3 8 266 824 -21 3 9 460 929 -21 3 10 624 984 -21 3 11 755 910 -21 3 12 833 919 -21 3 13 838 922 -21 3 14 792 909 -21 3 15 672 887 -21 3 16 500 838 -21 3 17 293 738 -21 3 18 86 444 -21 3 19 0 0 -21 3 20 0 0 -21 3 21 0 0 -21 3 22 0 0 -21 3 23 0 0 -21 3 24 0 0 -22 3 1 0 0 -22 3 2 0 0 -22 3 3 0 0 -22 3 4 0 0 -22 3 5 0 0 -22 3 6 0 0 -22 3 7 76 484 -22 3 8 291 748 -22 3 9 494 842 -22 3 10 665 885 -22 3 11 788 906 -22 3 12 854 815 -22 3 13 852 810 -22 3 14 787 797 -22 3 15 679 773 -22 3 16 510 736 -22 3 17 301 652 -22 3 18 90 384 -22 3 19 0 0 -22 3 20 0 0 -22 3 21 0 0 -22 3 22 0 0 -22 3 23 0 0 -22 3 24 0 0 -23 3 1 0 0 -23 3 2 0 0 -23 3 3 0 0 -23 3 4 0 0 -23 3 5 0 0 -23 3 6 0 0 -23 3 7 71 320 -23 3 8 261 490 -23 3 9 480 645 -23 3 10 650 680 -23 3 11 803 496 -23 3 12 894 403 -23 3 13 803 200 -23 3 14 831 199 -23 3 15 563 97 -23 3 16 390 92 -23 3 17 210 81 -23 3 18 60 54 -23 3 19 0 0 -23 3 20 0 0 -23 3 21 0 0 -23 3 22 0 0 -23 3 23 0 0 -23 3 24 0 0 -24 3 1 0 0 -24 3 2 0 0 -24 3 3 0 0 -24 3 4 0 0 -24 3 5 0 0 -24 3 6 0 0 -24 3 7 55 53 -24 3 8 191 0 -24 3 9 363 91 -24 3 10 519 290 -24 3 11 597 198 -24 3 12 650 101 -24 3 13 626 0 -24 3 14 275 0 -24 3 15 485 0 -24 3 16 326 0 -24 3 17 177 0 -24 3 18 58 0 -24 3 19 0 0 -24 3 20 0 0 -24 3 21 0 0 -24 3 22 0 0 -24 3 23 0 0 -24 3 24 0 0 -25 3 1 0 0 -25 3 2 0 0 -25 3 3 0 0 -25 3 4 0 0 -25 3 5 0 0 -25 3 6 0 0 -25 3 7 51 163 -25 3 8 124 81 -25 3 9 256 91 -25 3 10 392 96 -25 3 11 637 395 -25 3 12 642 301 -25 3 13 696 403 -25 3 14 718 798 -25 3 15 609 678 -25 3 16 468 736 -25 3 17 277 656 -25 3 18 94 519 -25 3 19 0 0 -25 3 20 0 0 -25 3 21 0 0 -25 3 22 0 0 -25 3 23 0 0 -25 3 24 0 0 -26 3 1 0 0 -26 3 2 0 0 -26 3 3 0 0 -26 3 4 0 0 -26 3 5 0 0 -26 3 6 0 0 -26 3 7 91 522 -26 3 8 289 748 -26 3 9 479 836 -26 3 10 651 982 -26 3 11 766 1007 -26 3 12 827 1019 -26 3 13 842 915 -26 3 14 813 904 -26 3 15 690 878 -26 3 16 509 832 -26 3 17 319 741 -26 3 18 103 411 -26 3 19 0 0 -26 3 20 0 0 -26 3 21 0 0 -26 3 22 0 0 -26 3 23 0 0 -26 3 24 0 0 -27 3 1 0 0 -27 3 2 0 0 -27 3 3 0 0 -27 3 4 0 0 -27 3 5 0 0 -27 3 6 0 0 -27 3 7 89 346 -27 3 8 292 576 -27 3 9 473 550 -27 3 10 541 97 -27 3 11 681 299 -27 3 12 828 707 -27 3 13 844 808 -27 3 14 682 400 -27 3 15 636 581 -27 3 16 488 641 -27 3 17 304 656 -27 3 18 107 468 -27 3 19 0 0 -27 3 20 0 0 -27 3 21 0 0 -27 3 22 0 0 -27 3 23 0 0 -27 3 24 0 0 -28 3 1 0 0 -28 3 2 0 0 -28 3 3 0 0 -28 3 4 0 0 -28 3 5 0 0 -28 3 6 0 0 -28 3 7 66 0 -28 3 8 213 0 -28 3 9 386 92 -28 3 10 639 582 -28 3 11 695 696 -28 3 12 580 201 -28 3 13 724 503 -28 3 14 713 496 -28 3 15 576 481 -28 3 16 494 733 -28 3 17 306 569 -28 3 18 74 118 -28 3 19 0 0 -28 3 20 0 0 -28 3 21 0 0 -28 3 22 0 0 -28 3 23 0 0 -28 3 24 0 0 -29 3 1 0 0 -29 3 2 0 0 -29 3 3 0 0 -29 3 4 0 0 -29 3 5 0 0 -29 3 6 0 0 -29 3 7 33 0 -29 3 8 58 0 -29 3 9 171 0 -29 3 10 229 0 -29 3 11 253 0 -29 3 12 233 0 -29 3 13 274 0 -29 3 14 234 0 -29 3 15 149 0 -29 3 16 98 0 -29 3 17 49 0 -29 3 18 23 0 -29 3 19 0 0 -29 3 20 0 0 -29 3 21 0 0 -29 3 22 0 0 -29 3 23 0 0 -29 3 24 0 0 -30 3 1 0 0 -30 3 2 0 0 -30 3 3 0 0 -30 3 4 0 0 -30 3 5 0 0 -30 3 6 0 0 -30 3 7 65 186 -30 3 8 171 251 -30 3 9 185 93 -30 3 10 373 293 -30 3 11 643 701 -30 3 12 693 710 -30 3 13 741 811 -30 3 14 691 804 -30 3 15 588 783 -30 3 16 467 836 -30 3 17 256 584 -30 3 18 85 370 -30 3 19 0 0 -30 3 20 0 0 -30 3 21 0 0 -30 3 22 0 0 -30 3 23 0 0 -30 3 24 0 0 -31 3 1 0 0 -31 3 2 0 0 -31 3 3 0 0 -31 3 4 0 0 -31 3 5 0 0 -31 3 6 0 0 -31 3 7 121 644 -31 3 8 319 854 -31 3 9 506 941 -31 3 10 659 986 -31 3 11 769 1009 -31 3 12 825 1019 -31 3 13 821 917 -31 3 14 763 907 -31 3 15 651 785 -31 3 16 494 743 -31 3 17 306 672 -31 3 18 79 317 -31 3 19 0 0 -31 3 20 0 0 -31 3 21 0 0 -31 3 22 0 0 -31 3 23 0 0 -31 3 24 0 0 -1 4 1 0 0 -1 4 2 0 0 -1 4 3 0 0 -1 4 4 0 0 -1 4 5 0 0 -1 4 6 0 0 -1 4 7 35 0 -1 4 8 84 0 -1 4 9 139 0 -1 4 10 186 0 -1 4 11 259 0 -1 4 12 153 0 -1 4 13 174 0 -1 4 14 122 0 -1 4 15 242 97 -1 4 16 201 93 -1 4 17 104 83 -1 4 18 39 63 -1 4 19 0 0 -1 4 20 0 0 -1 4 21 0 0 -1 4 22 0 0 -1 4 23 0 0 -1 4 24 0 0 -2 4 1 0 0 -2 4 2 0 0 -2 4 3 0 0 -2 4 4 0 0 -2 4 5 0 0 -2 4 6 0 0 -2 4 7 43 0 -2 4 8 116 0 -2 4 9 178 0 -2 4 10 153 0 -2 4 11 122 0 -2 4 12 132 0 -2 4 13 174 0 -2 4 14 188 0 -2 4 15 158 0 -2 4 16 115 0 -2 4 17 44 0 -2 4 18 13 0 -2 4 19 0 0 -2 4 20 0 0 -2 4 21 0 0 -2 4 22 0 0 -2 4 23 0 0 -2 4 24 0 0 -3 4 1 0 0 -3 4 2 0 0 -3 4 3 0 0 -3 4 4 0 0 -3 4 5 0 0 -3 4 6 0 0 -3 4 7 39 129 -3 4 8 95 0 -3 4 9 91 0 -3 4 10 344 195 -3 4 11 402 200 -3 4 12 287 101 -3 4 13 155 0 -3 4 14 182 0 -3 4 15 137 0 -3 4 16 102 0 -3 4 17 84 0 -3 4 18 39 63 -3 4 19 0 0 -3 4 20 0 0 -3 4 21 0 0 -3 4 22 0 0 -3 4 23 0 0 -3 4 24 0 0 -4 4 1 0 0 -4 4 2 0 0 -4 4 3 0 0 -4 4 4 0 0 -4 4 5 0 0 -4 4 6 0 0 -4 4 7 148 534 -4 4 8 353 679 -4 4 9 550 750 -4 4 10 599 786 -4 4 11 701 603 -4 4 12 743 306 -4 4 13 784 915 -4 4 14 744 704 -4 4 15 419 98 -4 4 16 266 0 -4 4 17 152 85 -4 4 18 57 65 -4 4 19 0 0 -4 4 20 0 0 -4 4 21 0 0 -4 4 22 0 0 -4 4 23 0 0 -4 4 24 0 0 -5 4 1 0 0 -5 4 2 0 0 -5 4 3 0 0 -5 4 4 0 0 -5 4 5 0 0 -5 4 6 0 0 -5 4 7 22 0 -5 4 8 85 0 -5 4 9 66 0 -5 4 10 113 0 -5 4 11 226 0 -5 4 12 176 0 -5 4 13 182 0 -5 4 14 353 0 -5 4 15 300 0 -5 4 16 226 0 -5 4 17 60 0 -5 4 18 41 0 -5 4 19 0 0 -5 4 20 0 0 -5 4 21 0 0 -5 4 22 0 0 -5 4 23 0 0 -5 4 24 0 0 -6 4 1 0 0 -6 4 2 0 0 -6 4 3 0 0 -6 4 4 0 0 -6 4 5 0 0 -6 4 6 0 0 -6 4 7 45 0 -6 4 8 96 0 -6 4 9 84 0 -6 4 10 378 99 -6 4 11 177 0 -6 4 12 461 0 -6 4 13 459 0 -6 4 14 426 0 -6 4 15 195 0 -6 4 16 128 0 -6 4 17 252 0 -6 4 18 44 0 -6 4 19 0 0 -6 4 20 0 0 -6 4 21 0 0 -6 4 22 0 0 -6 4 23 0 0 -6 4 24 0 0 -7 4 1 0 0 -7 4 2 0 0 -7 4 3 0 0 -7 4 4 0 0 -7 4 5 0 0 -7 4 6 0 0 -7 4 7 99 141 -7 4 8 191 88 -7 4 9 259 95 -7 4 10 331 199 -7 4 11 577 305 -7 4 12 619 103 -7 4 13 617 616 -7 4 14 888 913 -7 4 15 633 890 -7 4 16 508 663 -7 4 17 308 693 -7 4 18 81 206 -7 4 19 0 0 -7 4 20 0 0 -7 4 21 0 0 -7 4 22 0 0 -7 4 23 0 0 -7 4 24 0 0 -8 4 1 0 0 -8 4 2 0 0 -8 4 3 0 0 -8 4 4 0 0 -8 4 5 0 0 -8 4 6 12 72 -8 4 7 170 722 -8 4 8 371 886 -8 4 9 558 960 -8 4 10 710 998 -8 4 11 820 1021 -8 4 12 874 1028 -8 4 13 871 1028 -8 4 14 809 1015 -8 4 15 704 993 -8 4 16 509 950 -8 4 17 301 783 -8 4 18 108 345 -8 4 19 0 0 -8 4 20 0 0 -8 4 21 0 0 -8 4 22 0 0 -8 4 23 0 0 -8 4 24 0 0 -9 4 1 0 0 -9 4 2 0 0 -9 4 3 0 0 -9 4 4 0 0 -9 4 5 0 0 -9 4 6 10 51 -9 4 7 64 0 -9 4 8 219 263 -9 4 9 498 574 -9 4 10 608 499 -9 4 11 700 508 -9 4 12 765 308 -9 4 13 548 0 -9 4 14 276 0 -9 4 15 194 0 -9 4 16 133 0 -9 4 17 73 0 -9 4 18 24 0 -9 4 19 0 0 -9 4 20 0 0 -9 4 21 0 0 -9 4 22 0 0 -9 4 23 0 0 -9 4 24 0 0 -10 4 1 0 0 -10 4 2 0 0 -10 4 3 0 0 -10 4 4 0 0 -10 4 5 0 0 -10 4 6 3 0 -10 4 7 74 0 -10 4 8 102 0 -10 4 9 268 0 -10 4 10 201 0 -10 4 11 408 0 -10 4 12 394 102 -10 4 13 430 101 -10 4 14 442 100 -10 4 15 505 295 -10 4 16 517 752 -10 4 17 351 775 -10 4 18 161 692 -10 4 19 0 0 -10 4 20 0 0 -10 4 21 0 0 -10 4 22 0 0 -10 4 23 0 0 -10 4 24 0 0 -11 4 1 0 0 -11 4 2 0 0 -11 4 3 0 0 -11 4 4 0 0 -11 4 5 0 0 -11 4 6 18 111 -11 4 7 186 732 -11 4 8 386 886 -11 4 9 572 958 -11 4 10 723 994 -11 4 11 829 1014 -11 4 12 883 1023 -11 4 13 877 1020 -11 4 14 817 1010 -11 4 15 703 986 -11 4 16 556 939 -11 4 17 367 775 -11 4 18 165 691 -11 4 19 0 0 -11 4 20 0 0 -11 4 21 0 0 -11 4 22 0 0 -11 4 23 0 0 -11 4 24 0 0 -12 4 1 0 0 -12 4 2 0 0 -12 4 3 0 0 -12 4 4 0 0 -12 4 5 0 0 -12 4 6 21 140 -12 4 7 190 732 -12 4 8 416 882 -12 4 9 645 956 -12 4 10 655 894 -12 4 11 751 909 -12 4 12 733 815 -12 4 13 955 813 -12 4 14 738 703 -12 4 15 633 589 -12 4 16 488 750 -12 4 17 383 859 -12 4 18 182 690 -12 4 19 1 9 -12 4 20 0 0 -12 4 21 0 0 -12 4 22 0 0 -12 4 23 0 0 -12 4 24 0 0 -13 4 1 0 0 -13 4 2 0 0 -13 4 3 0 0 -13 4 4 0 0 -13 4 5 0 0 -13 4 6 23 166 -13 4 7 189 656 -13 4 8 345 612 -13 4 9 449 472 -13 4 10 788 788 -13 4 11 748 703 -13 4 12 791 710 -13 4 13 794 811 -13 4 14 773 751 -13 4 15 649 808 -13 4 16 482 668 -13 4 17 253 257 -13 4 18 92 139 -13 4 19 1 4 -13 4 20 0 0 -13 4 21 0 0 -13 4 22 0 0 -13 4 23 0 0 -13 4 24 0 0 -14 4 1 0 0 -14 4 2 0 0 -14 4 3 0 0 -14 4 4 0 0 -14 4 5 0 0 -14 4 6 17 43 -14 4 7 109 73 -14 4 8 180 0 -14 4 9 192 0 -14 4 10 191 0 -14 4 11 175 0 -14 4 12 164 0 -14 4 13 141 0 -14 4 14 130 0 -14 4 15 165 0 -14 4 16 194 0 -14 4 17 73 0 -14 4 18 55 0 -14 4 19 3 0 -14 4 20 0 0 -14 4 21 0 0 -14 4 22 0 0 -14 4 23 0 0 -14 4 24 0 0 -15 4 1 0 0 -15 4 2 0 0 -15 4 3 0 0 -15 4 4 0 0 -15 4 5 0 0 -15 4 6 9 0 -15 4 7 37 0 -15 4 8 86 0 -15 4 9 182 0 -15 4 10 336 0 -15 4 11 563 0 -15 4 12 655 101 -15 4 13 391 0 -15 4 14 311 0 -15 4 15 346 0 -15 4 16 181 0 -15 4 17 80 0 -15 4 18 29 0 -15 4 19 2 0 -15 4 20 0 0 -15 4 21 0 0 -15 4 22 0 0 -15 4 23 0 0 -15 4 24 0 0 -16 4 1 0 0 -16 4 2 0 0 -16 4 3 0 0 -16 4 4 0 0 -16 4 5 0 0 -16 4 6 9 0 -16 4 7 68 0 -16 4 8 71 0 -16 4 9 60 0 -16 4 10 61 0 -16 4 11 80 0 -16 4 12 346 0 -16 4 13 344 0 -16 4 14 319 0 -16 4 15 255 0 -16 4 16 196 0 -16 4 17 127 0 -16 4 18 28 71 -16 4 19 8 26 -16 4 20 0 0 -16 4 21 0 0 -16 4 22 0 0 -16 4 23 0 0 -16 4 24 0 0 -17 4 1 0 0 -17 4 2 0 0 -17 4 3 0 0 -17 4 4 0 0 -17 4 5 0 0 -17 4 6 15 93 -17 4 7 56 0 -17 4 8 83 0 -17 4 9 305 94 -17 4 10 164 98 -17 4 11 620 302 -17 4 12 557 204 -17 4 13 439 101 -17 4 14 405 202 -17 4 15 424 296 -17 4 16 312 284 -17 4 17 260 440 -17 4 18 120 363 -17 4 19 10 43 -17 4 20 0 0 -17 4 21 0 0 -17 4 22 0 0 -17 4 23 0 0 -17 4 24 0 0 -18 4 1 0 0 -18 4 2 0 0 -18 4 3 0 0 -18 4 4 0 0 -18 4 5 0 0 -18 4 6 41 382 -18 4 7 224 768 -18 4 8 422 895 -18 4 9 604 958 -18 4 10 755 996 -18 4 11 861 1017 -18 4 12 912 1024 -18 4 13 906 1023 -18 4 14 843 1011 -18 4 15 728 987 -18 4 16 569 944 -18 4 17 363 789 -18 4 18 164 581 -18 4 19 17 119 -18 4 20 0 0 -18 4 21 0 0 -18 4 22 0 0 -18 4 23 0 0 -18 4 24 0 0 -19 4 1 0 0 -19 4 2 0 0 -19 4 3 0 0 -19 4 4 0 0 -19 4 5 0 0 -19 4 6 45 425 -19 4 7 228 768 -19 4 8 426 893 -19 4 9 608 957 -19 4 10 759 996 -19 4 11 866 1018 -19 4 12 815 821 -19 4 13 757 717 -19 4 14 655 608 -19 4 15 521 495 -19 4 16 480 669 -19 4 17 370 799 -19 4 18 193 741 -19 4 19 22 157 -19 4 20 0 0 -19 4 21 0 0 -19 4 22 0 0 -19 4 23 0 0 -19 4 24 0 0 -20 4 1 0 0 -20 4 2 0 0 -20 4 3 0 0 -20 4 4 0 0 -20 4 5 0 0 -20 4 6 49 456 -20 4 7 240 769 -20 4 8 430 892 -20 4 9 611 955 -20 4 10 761 993 -20 4 11 861 1006 -20 4 12 914 1019 -20 4 13 909 1019 -20 4 14 849 1010 -20 4 15 734 986 -20 4 16 578 759 -20 4 17 367 702 -20 4 18 198 735 -20 4 19 26 174 -20 4 20 0 0 -20 4 21 0 0 -20 4 22 0 0 -20 4 23 0 0 -20 4 24 0 0 -21 4 1 0 0 -21 4 2 0 0 -21 4 3 0 0 -21 4 4 0 0 -21 4 5 0 0 -21 4 6 52 455 -21 4 7 236 766 -21 4 8 431 886 -21 4 9 612 950 -21 4 10 760 986 -21 4 11 831 1006 -21 4 12 864 911 -21 4 13 873 911 -21 4 14 817 1006 -21 4 15 751 888 -21 4 16 578 941 -21 4 17 363 786 -21 4 18 180 654 -21 4 19 23 153 -21 4 20 0 0 -21 4 21 0 0 -21 4 22 0 0 -21 4 23 0 0 -21 4 24 0 0 -22 4 1 0 0 -22 4 2 0 0 -22 4 3 0 0 -22 4 4 0 0 -22 4 5 0 0 -22 4 6 21 0 -22 4 7 112 0 -22 4 8 237 0 -22 4 9 347 0 -22 4 10 437 0 -22 4 11 498 0 -22 4 12 353 0 -22 4 13 350 0 -22 4 14 442 197 -22 4 15 279 0 -22 4 16 201 0 -22 4 17 142 0 -22 4 18 79 70 -22 4 19 11 21 -22 4 20 0 0 -22 4 21 0 0 -22 4 22 0 0 -22 4 23 0 0 -22 4 24 0 0 -23 4 1 0 0 -23 4 2 0 0 -23 4 3 0 0 -23 4 4 0 0 -23 4 5 0 0 -23 4 6 44 276 -23 4 7 241 756 -23 4 8 434 873 -23 4 9 614 940 -23 4 10 759 974 -23 4 11 863 995 -23 4 12 912 1004 -23 4 13 909 1007 -23 4 14 739 797 -23 4 15 551 583 -23 4 16 359 373 -23 4 17 254 347 -23 4 18 152 437 -23 4 19 28 238 -23 4 20 0 0 -23 4 21 0 0 -23 4 22 0 0 -23 4 23 0 0 -23 4 24 0 0 -24 4 1 0 0 -24 4 2 0 0 -24 4 3 0 0 -24 4 4 0 0 -24 4 5 0 0 -24 4 6 53 238 -24 4 7 182 153 -24 4 8 269 88 -24 4 9 372 189 -24 4 10 716 783 -24 4 11 549 300 -24 4 12 306 0 -24 4 13 304 0 -24 4 14 496 0 -24 4 15 422 0 -24 4 16 198 0 -24 4 17 139 0 -24 4 18 78 73 -24 4 19 11 0 -24 4 20 0 0 -24 4 21 0 0 -24 4 22 0 0 -24 4 23 0 0 -24 4 24 0 0 -25 4 1 0 0 -25 4 2 0 0 -25 4 3 0 0 -25 4 4 0 0 -25 4 5 0 0 -25 4 6 61 384 -25 4 7 231 614 -25 4 8 405 793 -25 4 9 570 846 -25 4 10 690 877 -25 4 11 894 894 -25 4 12 626 200 -25 4 13 531 0 -25 4 14 494 0 -25 4 15 424 0 -25 4 16 329 0 -25 4 17 144 0 -25 4 18 80 72 -25 4 19 15 30 -25 4 20 0 0 -25 4 21 0 0 -25 4 22 0 0 -25 4 23 0 0 -25 4 24 0 0 -26 4 1 0 0 -26 4 2 0 0 -26 4 3 0 0 -26 4 4 0 0 -26 4 5 0 0 -26 4 6 56 235 -26 4 7 237 605 -26 4 8 384 347 -26 4 9 554 463 -26 4 10 686 576 -26 4 11 785 588 -26 4 12 374 99 -26 4 13 355 0 -26 4 14 237 0 -26 4 15 378 0 -26 4 16 218 0 -26 4 17 110 0 -26 4 18 67 0 -26 4 19 12 0 -26 4 20 0 0 -26 4 21 0 0 -26 4 22 0 0 -26 4 23 0 0 -26 4 24 0 0 -27 4 1 0 0 -27 4 2 0 0 -27 4 3 0 0 -27 4 4 0 0 -27 4 5 0 0 -27 4 6 7 0 -27 4 7 30 0 -27 4 8 69 0 -27 4 9 228 92 -27 4 10 197 96 -27 4 11 309 0 -27 4 12 299 98 -27 4 13 349 98 -27 4 14 363 194 -27 4 15 338 95 -27 4 16 268 91 -27 4 17 128 0 -27 4 18 52 0 -27 4 19 7 0 -27 4 20 0 0 -27 4 21 0 0 -27 4 22 0 0 -27 4 23 0 0 -27 4 24 0 0 -28 4 1 0 0 -28 4 2 0 0 -28 4 3 0 0 -28 4 4 0 0 -28 4 5 0 0 -28 4 6 26 0 -28 4 7 30 0 -28 4 8 152 88 -28 4 9 215 94 -28 4 10 263 98 -28 4 11 298 99 -28 4 12 173 0 -28 4 13 219 0 -28 4 14 160 0 -28 4 15 447 193 -28 4 16 212 0 -28 4 17 135 0 -28 4 18 91 73 -28 4 19 19 72 -28 4 20 0 0 -28 4 21 0 0 -28 4 22 0 0 -28 4 23 0 0 -28 4 24 0 0 -29 4 1 0 0 -29 4 2 0 0 -29 4 3 0 0 -29 4 4 0 0 -29 4 5 0 0 -29 4 6 58 265 -29 4 7 238 701 -29 4 8 263 266 -29 4 9 466 470 -29 4 10 338 97 -29 4 11 338 199 -29 4 12 426 100 -29 4 13 429 200 -29 4 14 385 198 -29 4 15 353 194 -29 4 16 531 837 -29 4 17 290 432 -29 4 18 122 221 -29 4 19 33 242 -29 4 20 0 0 -29 4 21 0 0 -29 4 22 0 0 -29 4 23 0 0 -29 4 24 0 0 -30 4 1 0 0 -30 4 2 0 0 -30 4 3 0 0 -30 4 4 0 0 -30 4 5 0 0 -30 4 6 85 493 -30 4 7 276 791 -30 4 8 468 892 -30 4 9 643 946 -30 4 10 788 979 -30 4 11 889 999 -30 4 12 934 1003 -30 4 13 924 1000 -30 4 14 866 995 -30 4 15 758 978 -30 4 16 601 937 -30 4 17 418 871 -30 4 18 224 746 -30 4 19 46 426 -30 4 20 0 0 -30 4 21 0 0 -30 4 22 0 0 -30 4 23 0 0 -30 4 24 0 0 -1 5 1 0 0 -1 5 2 0 0 -1 5 3 0 0 -1 5 4 0 0 -1 5 5 0 0 -1 5 6 41 57 -1 5 7 169 159 -1 5 8 436 718 -1 5 9 545 569 -1 5 10 583 395 -1 5 11 634 402 -1 5 12 681 508 -1 5 13 495 203 -1 5 14 533 301 -1 5 15 481 296 -1 5 16 381 284 -1 5 17 274 267 -1 5 18 128 152 -1 5 19 31 134 -1 5 20 0 0 -1 5 21 0 0 -1 5 22 0 0 -1 5 23 0 0 -1 5 24 0 0 -2 5 1 0 0 -2 5 2 0 0 -2 5 3 0 0 -2 5 4 0 0 -2 5 5 0 0 -2 5 6 29 0 -2 5 7 94 0 -2 5 8 213 90 -2 5 9 296 96 -2 5 10 289 0 -2 5 11 326 0 -2 5 12 345 0 -2 5 13 294 0 -2 5 14 185 0 -2 5 15 255 0 -2 5 16 184 0 -2 5 17 266 349 -2 5 18 188 527 -2 5 19 32 176 -2 5 20 0 0 -2 5 21 0 0 -2 5 22 0 0 -2 5 23 0 0 -2 5 24 0 0 -3 5 1 0 0 -3 5 2 0 0 -3 5 3 0 0 -3 5 4 0 0 -3 5 5 0 0 -3 5 6 33 0 -3 5 7 74 0 -3 5 8 180 0 -3 5 9 119 0 -3 5 10 168 0 -3 5 11 213 0 -3 5 12 504 100 -3 5 13 151 0 -3 5 14 229 0 -3 5 15 179 0 -3 5 16 178 0 -3 5 17 95 0 -3 5 18 31 0 -3 5 19 7 0 -3 5 20 0 0 -3 5 21 0 0 -3 5 22 0 0 -3 5 23 0 0 -3 5 24 0 0 -4 5 1 0 0 -4 5 2 0 0 -4 5 3 0 0 -4 5 4 0 0 -4 5 5 0 0 -4 5 6 18 0 -4 5 7 60 0 -4 5 8 111 0 -4 5 9 159 0 -4 5 10 152 0 -4 5 11 173 0 -4 5 12 183 0 -4 5 13 163 0 -4 5 14 79 0 -4 5 15 181 0 -4 5 16 189 0 -4 5 17 128 0 -4 5 18 47 0 -4 5 19 16 0 -4 5 20 0 0 -4 5 21 0 0 -4 5 22 0 0 -4 5 23 0 0 -4 5 24 0 0 -5 5 1 0 0 -5 5 2 0 0 -5 5 3 0 0 -5 5 4 0 0 -5 5 5 0 0 -5 5 6 35 58 -5 5 7 98 161 -5 5 8 206 90 -5 5 9 253 95 -5 5 10 315 98 -5 5 11 489 199 -5 5 12 434 201 -5 5 13 380 100 -5 5 14 245 0 -5 5 15 258 0 -5 5 16 369 188 -5 5 17 238 175 -5 5 18 147 228 -5 5 19 43 324 -5 5 20 0 0 -5 5 21 0 0 -5 5 22 0 0 -5 5 23 0 0 -5 5 24 0 0 -6 5 1 0 0 -6 5 2 0 0 -6 5 3 0 0 -6 5 4 0 0 -6 5 5 0 0 -6 5 6 85 360 -6 5 7 111 81 -6 5 8 420 628 -6 5 9 598 758 -6 5 10 726 781 -6 5 11 816 796 -6 5 12 858 801 -6 5 13 851 900 -6 5 14 688 594 -6 5 15 383 194 -6 5 16 297 188 -6 5 17 258 176 -6 5 18 171 307 -6 5 19 39 191 -6 5 20 0 0 -6 5 21 0 0 -6 5 22 0 0 -6 5 23 0 0 -6 5 24 0 0 -7 5 1 0 0 -7 5 2 0 0 -7 5 3 0 0 -7 5 4 0 0 -7 5 5 0 0 -7 5 6 81 240 -7 5 7 289 722 -7 5 8 473 806 -7 5 9 639 852 -7 5 10 806 977 -7 5 11 856 897 -7 5 12 906 909 -7 5 13 902 913 -7 5 14 844 905 -7 5 15 737 886 -7 5 16 589 856 -7 5 17 415 897 -7 5 18 252 781 -7 5 19 65 450 -7 5 20 0 0 -7 5 21 0 0 -7 5 22 0 0 -7 5 23 0 0 -7 5 24 0 0 -8 5 1 0 0 -8 5 2 0 0 -8 5 3 0 0 -8 5 4 0 0 -8 5 5 0 0 -8 5 6 112 494 -8 5 7 285 487 -8 5 8 430 451 -8 5 9 608 383 -8 5 10 751 296 -8 5 11 853 403 -8 5 12 896 101 -8 5 13 887 403 -8 5 14 785 100 -8 5 15 713 0 -8 5 16 556 0 -8 5 17 263 0 -8 5 18 118 0 -8 5 19 25 0 -8 5 20 0 0 -8 5 21 0 0 -8 5 22 0 0 -8 5 23 0 0 -8 5 24 0 0 -9 5 1 0 0 -9 5 2 0 0 -9 5 3 0 0 -9 5 4 0 0 -9 5 5 0 0 -9 5 6 52 122 -9 5 7 173 242 -9 5 8 257 269 -9 5 9 381 285 -9 5 10 373 196 -9 5 11 497 199 -9 5 12 571 301 -9 5 13 580 500 -9 5 14 583 494 -9 5 15 527 484 -9 5 16 536 654 -9 5 17 401 703 -9 5 18 220 612 -9 5 19 70 440 -9 5 20 0 0 -9 5 21 0 0 -9 5 22 0 0 -9 5 23 0 0 -9 5 24 0 0 -10 5 1 0 0 -10 5 2 0 0 -10 5 3 0 0 -10 5 4 0 0 -10 5 5 0 0 -10 5 6 125 614 -10 5 7 310 800 -10 5 8 495 800 -10 5 9 669 940 -10 5 10 809 970 -10 5 11 904 986 -10 5 12 899 894 -10 5 13 890 892 -10 5 14 832 883 -10 5 15 731 869 -10 5 16 629 939 -10 5 17 450 883 -10 5 18 256 769 -10 5 19 75 501 -10 5 20 0 0 -10 5 21 0 0 -10 5 22 0 0 -10 5 23 0 0 -10 5 24 0 0 -11 5 1 0 0 -11 5 2 0 0 -11 5 3 0 0 -11 5 4 0 0 -11 5 5 0 0 -11 5 6 128 621 -11 5 7 316 809 -11 5 8 504 897 -11 5 9 676 946 -11 5 10 814 974 -11 5 11 906 990 -11 5 12 927 898 -11 5 13 903 893 -11 5 14 839 882 -11 5 15 744 868 -11 5 16 612 748 -11 5 17 433 615 -11 5 18 243 461 -11 5 19 57 204 -11 5 20 0 0 -11 5 21 0 0 -11 5 22 0 0 -11 5 23 0 0 -11 5 24 0 0 -12 5 1 0 0 -12 5 2 0 0 -12 5 3 0 0 -12 5 4 0 0 -12 5 5 0 0 -12 5 6 39 0 -12 5 7 115 0 -12 5 8 242 0 -12 5 9 443 189 -12 5 10 474 0 -12 5 11 532 0 -12 5 12 562 0 -12 5 13 371 0 -12 5 14 346 0 -12 5 15 450 0 -12 5 16 200 0 -12 5 17 133 0 -12 5 18 107 76 -12 5 19 30 0 -12 5 20 0 0 -12 5 21 0 0 -12 5 22 0 0 -12 5 23 0 0 -12 5 24 0 0 -13 5 1 0 0 -13 5 2 0 0 -13 5 3 0 0 -13 5 4 0 0 -13 5 5 0 0 -13 5 6 88 322 -13 5 7 185 330 -13 5 8 301 182 -13 5 9 314 96 -13 5 10 324 0 -13 5 11 367 0 -13 5 12 202 101 -13 5 13 442 101 -13 5 14 621 100 -13 5 15 641 196 -13 5 16 543 189 -13 5 17 281 178 -13 5 18 207 235 -13 5 19 80 433 -13 5 20 0 0 -13 5 21 0 0 -13 5 22 0 0 -13 5 23 0 0 -13 5 24 0 0 -14 5 1 0 0 -14 5 2 0 0 -14 5 3 0 0 -14 5 4 0 0 -14 5 5 0 0 -14 5 6 56 64 -14 5 7 110 83 -14 5 8 250 181 -14 5 9 505 479 -14 5 10 542 396 -14 5 11 664 504 -14 5 12 568 304 -14 5 13 486 203 -14 5 14 537 302 -14 5 15 518 393 -14 5 16 419 382 -14 5 17 414 720 -14 5 18 242 638 -14 5 19 84 504 -14 5 20 0 0 -14 5 21 0 0 -14 5 22 0 0 -14 5 23 0 0 -14 5 24 0 0 -15 5 1 0 0 -15 5 2 0 0 -15 5 3 0 0 -15 5 4 0 0 -15 5 5 0 0 -15 5 6 137 590 -15 5 7 331 826 -15 5 8 522 912 -15 5 9 694 960 -15 5 10 828 985 -15 5 11 927 1004 -15 5 12 970 1012 -15 5 13 963 907 -15 5 14 888 896 -15 5 15 758 684 -15 5 16 615 661 -15 5 17 460 713 -15 5 18 270 633 -15 5 19 88 446 -15 5 20 0 0 -15 5 21 0 0 -15 5 22 0 0 -15 5 23 0 0 -15 5 24 0 0 -16 5 1 0 0 -16 5 2 0 0 -16 5 3 0 0 -16 5 4 0 0 -16 5 5 8 30 -16 5 6 83 323 -16 5 7 178 246 -16 5 8 190 90 -16 5 9 318 95 -16 5 10 709 195 -16 5 11 668 198 -16 5 12 840 298 -16 5 13 911 298 -16 5 14 783 586 -16 5 15 726 864 -16 5 16 610 834 -16 5 17 408 782 -16 5 18 234 694 -16 5 19 79 484 -16 5 20 0 0 -16 5 21 0 0 -16 5 22 0 0 -16 5 23 0 0 -16 5 24 0 0 -17 5 1 0 0 -17 5 2 0 0 -17 5 3 0 0 -17 5 4 0 0 -17 5 5 2 0 -17 5 6 31 0 -17 5 7 62 0 -17 5 8 197 89 -17 5 9 281 94 -17 5 10 320 0 -17 5 11 288 0 -17 5 12 303 0 -17 5 13 384 99 -17 5 14 359 98 -17 5 15 379 191 -17 5 16 437 463 -17 5 17 427 784 -17 5 18 252 694 -17 5 19 89 488 -17 5 20 0 0 -17 5 21 0 0 -17 5 22 0 0 -17 5 23 0 0 -17 5 24 0 0 -18 5 1 0 0 -18 5 2 0 0 -18 5 3 0 0 -18 5 4 0 0 -18 5 5 11 51 -18 5 6 134 516 -18 5 7 259 404 -18 5 8 340 178 -18 5 9 460 188 -18 5 10 488 194 -18 5 11 463 99 -18 5 12 575 198 -18 5 13 605 99 -18 5 14 795 688 -18 5 15 730 772 -18 5 16 637 836 -18 5 17 462 874 -18 5 18 274 696 -18 5 19 95 492 -18 5 20 0 0 -18 5 21 0 0 -18 5 22 0 0 -18 5 23 0 0 -18 5 24 0 0 -19 5 1 0 0 -19 5 2 0 0 -19 5 3 0 0 -19 5 4 0 0 -19 5 5 11 47 -19 5 6 142 577 -19 5 7 333 807 -19 5 8 518 889 -19 5 9 686 936 -19 5 10 826 968 -19 5 11 917 981 -19 5 12 956 981 -19 5 13 946 977 -19 5 14 852 869 -19 5 15 734 756 -19 5 16 555 732 -19 5 17 438 688 -19 5 18 268 608 -19 5 19 94 431 -19 5 20 0 0 -19 5 21 0 0 -19 5 22 0 0 -19 5 23 0 0 -19 5 24 0 0 -20 5 1 0 0 -20 5 2 0 0 -20 5 3 0 0 -20 5 4 0 0 -20 5 5 6 4 -20 5 6 85 126 -20 5 7 264 400 -20 5 8 451 528 -20 5 9 634 649 -20 5 10 517 286 -20 5 11 477 194 -20 5 12 807 683 -20 5 13 854 778 -20 5 14 800 770 -20 5 15 187 0 -20 5 16 89 0 -20 5 17 159 0 -20 5 18 98 0 -20 5 19 26 0 -20 5 20 0 0 -20 5 21 0 0 -20 5 22 0 0 -20 5 23 0 0 -20 5 24 0 0 -21 5 1 0 0 -21 5 2 0 0 -21 5 3 0 0 -21 5 4 0 0 -21 5 5 4 0 -21 5 6 33 0 -21 5 7 239 243 -21 5 8 389 266 -21 5 9 283 93 -21 5 10 506 288 -21 5 11 632 195 -21 5 12 809 197 -21 5 13 762 197 -21 5 14 714 196 -21 5 15 470 96 -21 5 16 327 0 -21 5 17 265 0 -21 5 18 137 0 -21 5 19 61 115 -21 5 20 0 0 -21 5 21 0 0 -21 5 22 0 0 -21 5 23 0 0 -21 5 24 0 0 -22 5 1 0 0 -22 5 2 0 0 -22 5 3 0 0 -22 5 4 0 0 -22 5 5 5 0 -22 5 6 58 0 -22 5 7 122 0 -22 5 8 231 91 -22 5 9 541 286 -22 5 10 599 294 -22 5 11 321 99 -22 5 12 639 401 -22 5 13 574 300 -22 5 14 492 298 -22 5 15 443 292 -22 5 16 427 379 -22 5 17 370 537 -22 5 18 241 560 -22 5 19 105 546 -22 5 20 0 0 -22 5 21 0 0 -22 5 22 0 0 -22 5 23 0 0 -22 5 24 0 0 -23 5 1 0 0 -23 5 2 0 0 -23 5 3 0 0 -23 5 4 0 0 -23 5 5 16 98 -23 5 6 166 690 -23 5 7 354 846 -23 5 8 513 831 -23 5 9 675 871 -23 5 10 806 894 -23 5 11 896 907 -23 5 12 939 913 -23 5 13 930 909 -23 5 14 869 898 -23 5 15 810 885 -23 5 16 658 761 -23 5 17 391 774 -23 5 18 295 725 -23 5 19 114 609 -23 5 20 0 0 -23 5 21 0 0 -23 5 22 0 0 -23 5 23 0 0 -23 5 24 0 0 -24 5 1 0 0 -24 5 2 0 0 -24 5 3 0 0 -24 5 4 0 0 -24 5 5 17 111 -24 5 6 165 690 -24 5 7 345 758 -24 5 8 540 827 -24 5 9 683 869 -24 5 10 588 198 -24 5 11 591 200 -24 5 12 716 303 -24 5 13 751 406 -24 5 14 774 401 -24 5 15 513 98 -24 5 16 461 191 -24 5 17 164 0 -24 5 18 72 0 -24 5 19 38 0 -24 5 20 0 0 -24 5 21 0 0 -24 5 22 0 0 -24 5 23 0 0 -24 5 24 0 0 -25 5 1 0 0 -25 5 2 0 0 -25 5 3 0 0 -25 5 4 0 0 -25 5 5 3 0 -25 5 6 23 0 -25 5 7 127 0 -25 5 8 201 0 -25 5 9 269 0 -25 5 10 324 0 -25 5 11 363 0 -25 5 12 381 0 -25 5 13 232 0 -25 5 14 355 0 -25 5 15 311 0 -25 5 16 252 0 -25 5 17 181 0 -25 5 18 61 0 -25 5 19 56 118 -25 5 20 0 0 -25 5 21 0 0 -25 5 22 0 0 -25 5 23 0 0 -25 5 24 0 0 -26 5 1 0 0 -26 5 2 0 0 -26 5 3 0 0 -26 5 4 0 0 -26 5 5 10 13 -26 5 6 73 66 -26 5 7 150 82 -26 5 8 198 0 -26 5 9 240 0 -26 5 10 182 0 -26 5 11 169 0 -26 5 12 266 0 -26 5 13 304 0 -26 5 14 217 0 -26 5 15 144 0 -26 5 16 224 93 -26 5 17 110 0 -26 5 18 99 0 -26 5 19 28 0 -26 5 20 0 0 -26 5 21 0 0 -26 5 22 0 0 -26 5 23 0 0 -26 5 24 0 0 -27 5 1 0 0 -27 5 2 0 0 -27 5 3 0 0 -27 5 4 0 0 -27 5 5 1 0 -27 5 6 9 0 -27 5 7 27 0 -27 5 8 36 0 -27 5 9 78 0 -27 5 10 160 0 -27 5 11 281 0 -27 5 12 284 0 -27 5 13 197 0 -27 5 14 391 0 -27 5 15 373 0 -27 5 16 223 0 -27 5 17 254 0 -27 5 18 148 79 -27 5 19 47 0 -27 5 20 0 0 -27 5 21 0 0 -27 5 22 0 0 -27 5 23 0 0 -27 5 24 0 0 -28 5 1 0 0 -28 5 2 0 0 -28 5 3 0 0 -28 5 4 0 0 -28 5 5 19 128 -28 5 6 147 606 -28 5 7 106 164 -28 5 8 171 179 -28 5 9 411 282 -28 5 10 781 868 -28 5 11 826 783 -28 5 12 818 792 -28 5 13 813 793 -28 5 14 776 691 -28 5 15 685 678 -28 5 16 599 655 -28 5 17 393 443 -28 5 18 285 559 -28 5 19 112 424 -28 5 20 0 0 -28 5 21 0 0 -28 5 22 0 0 -28 5 23 0 0 -28 5 24 0 0 -29 5 1 0 0 -29 5 2 0 0 -29 5 3 0 0 -29 5 4 0 0 -29 5 5 21 136 -29 5 6 170 611 -29 5 7 356 825 -29 5 8 543 905 -29 5 9 708 947 -29 5 10 838 873 -29 5 11 934 890 -29 5 12 976 891 -29 5 13 966 888 -29 5 14 914 981 -29 5 15 812 968 -29 5 16 665 936 -29 5 17 492 885 -29 5 18 306 797 -29 5 19 125 609 -29 5 20 0 0 -29 5 21 0 0 -29 5 22 0 0 -29 5 23 0 0 -29 5 24 0 0 -30 5 1 0 0 -30 5 2 0 0 -30 5 3 0 0 -30 5 4 0 0 -30 5 5 22 149 -30 5 6 170 606 -30 5 7 353 739 -30 5 8 538 901 -30 5 9 702 942 -30 5 10 837 871 -30 5 11 932 886 -30 5 12 976 891 -30 5 13 979 899 -30 5 14 879 886 -30 5 15 776 869 -30 5 16 609 840 -30 5 17 457 793 -30 5 18 300 713 -30 5 19 123 545 -30 5 20 0 0 -30 5 21 0 0 -30 5 22 0 0 -30 5 23 0 0 -30 5 24 0 0 -31 5 1 0 0 -31 5 2 0 0 -31 5 3 0 0 -31 5 4 0 0 -31 5 5 8 0 -31 5 6 122 349 -31 5 7 216 169 -31 5 8 503 735 -31 5 9 676 771 -31 5 10 815 894 -31 5 11 922 907 -31 5 12 964 911 -31 5 13 989 1010 -31 5 14 922 901 -31 5 15 821 883 -31 5 16 673 852 -31 5 17 491 808 -31 5 18 306 733 -31 5 19 121 566 -31 5 20 0 0 -31 5 21 0 0 -31 5 22 0 0 -31 5 23 0 0 -31 5 24 0 0 -1 6 1 0 0 -1 6 2 0 0 -1 6 3 0 0 -1 6 4 0 0 -1 6 5 8 0 -1 6 6 56 0 -1 6 7 138 0 -1 6 8 124 0 -1 6 9 165 0 -1 6 10 198 0 -1 6 11 397 96 -1 6 12 573 96 -1 6 13 342 0 -1 6 14 388 191 -1 6 15 480 468 -1 6 16 354 362 -1 6 17 234 0 -1 6 18 206 306 -1 6 19 72 118 -1 6 20 0 0 -1 6 21 0 0 -1 6 22 0 0 -1 6 23 0 0 -1 6 24 0 0 -2 6 1 0 0 -2 6 2 0 0 -2 6 3 0 0 -2 6 4 0 0 -2 6 5 11 17 -2 6 6 82 65 -2 6 7 224 239 -2 6 8 420 436 -2 6 9 651 823 -2 6 10 705 660 -2 6 11 607 287 -2 6 12 833 675 -2 6 13 764 675 -2 6 14 848 861 -2 6 15 717 751 -2 6 16 587 544 -2 6 17 434 516 -2 6 18 266 461 -2 6 19 109 352 -2 6 20 7 17 -2 6 21 0 0 -2 6 22 0 0 -2 6 23 0 0 -2 6 24 0 0 -3 6 1 0 0 -3 6 2 0 0 -3 6 3 0 0 -3 6 4 0 0 -3 6 5 6 0 -3 6 6 34 0 -3 6 7 98 0 -3 6 8 127 0 -3 6 9 259 93 -3 6 10 369 96 -3 6 11 475 97 -3 6 12 402 98 -3 6 13 273 0 -3 6 14 431 0 -3 6 15 225 0 -3 6 16 367 93 -3 6 17 196 88 -3 6 18 161 158 -3 6 19 73 186 -3 6 20 5 13 -3 6 21 0 0 -3 6 22 0 0 -3 6 23 0 0 -3 6 24 0 0 -4 6 1 0 0 -4 6 2 0 0 -4 6 3 0 0 -4 6 4 0 0 -4 6 5 23 170 -4 6 6 166 617 -4 6 7 334 739 -4 6 8 511 809 -4 6 9 629 754 -4 6 10 743 774 -4 6 11 826 688 -4 6 12 924 792 -4 6 13 876 797 -4 6 14 836 787 -4 6 15 485 97 -4 6 16 546 561 -4 6 17 405 531 -4 6 18 170 161 -4 6 19 63 62 -4 6 20 5 4 -4 6 21 0 0 -4 6 22 0 0 -4 6 23 0 0 -4 6 24 0 0 -5 6 1 0 0 -5 6 2 0 0 -5 6 3 0 0 -5 6 4 0 0 -5 6 5 25 174 -5 6 6 163 548 -5 6 7 348 744 -5 6 8 492 720 -5 6 9 597 659 -5 6 10 755 676 -5 6 11 840 687 -5 6 12 681 298 -5 6 13 577 198 -5 6 14 528 195 -5 6 15 688 671 -5 6 16 556 650 -5 6 17 142 88 -5 6 18 260 553 -5 6 19 116 493 -5 6 20 9 38 -5 6 21 0 0 -5 6 22 0 0 -5 6 23 0 0 -5 6 24 0 0 -6 6 1 0 0 -6 6 2 0 0 -6 6 3 0 0 -6 6 4 0 0 -6 6 5 21 136 -6 6 6 111 272 -6 6 7 158 83 -6 6 8 243 89 -6 6 9 322 94 -6 6 10 367 96 -6 6 11 457 196 -6 6 12 340 99 -6 6 13 339 99 -6 6 14 318 98 -6 6 15 334 96 -6 6 16 272 93 -6 6 17 199 88 -6 6 18 121 79 -6 6 19 58 62 -6 6 20 6 17 -6 6 21 0 0 -6 6 22 0 0 -6 6 23 0 0 -6 6 24 0 0 -7 6 1 0 0 -7 6 2 0 0 -7 6 3 0 0 -7 6 4 0 0 -7 6 5 9 0 -7 6 6 60 0 -7 6 7 158 82 -7 6 8 231 89 -7 6 9 219 0 -7 6 10 314 96 -7 6 11 505 293 -7 6 12 679 491 -7 6 13 674 490 -7 6 14 701 584 -7 6 15 576 479 -7 6 16 459 371 -7 6 17 290 88 -7 6 18 177 80 -7 6 19 57 63 -7 6 20 6 13 -7 6 21 0 0 -7 6 22 0 0 -7 6 23 0 0 -7 6 24 0 0 -8 6 1 0 0 -8 6 2 0 0 -8 6 3 0 0 -8 6 4 0 0 -8 6 5 16 93 -8 6 6 135 406 -8 6 7 182 244 -8 6 8 454 534 -8 6 9 651 746 -8 6 10 742 670 -8 6 11 895 873 -8 6 12 939 880 -8 6 13 964 974 -8 6 14 862 869 -8 6 15 765 853 -8 6 16 622 733 -8 6 17 459 692 -8 6 18 290 625 -8 6 19 127 491 -8 6 20 11 43 -8 6 21 0 0 -8 6 22 0 0 -8 6 23 0 0 -8 6 24 0 0 -9 6 1 0 0 -9 6 2 0 0 -9 6 3 0 0 -9 6 4 0 0 -9 6 5 28 200 -9 6 6 174 596 -9 6 7 212 241 -9 6 8 256 88 -9 6 9 556 552 -9 6 10 690 663 -9 6 11 923 962 -9 6 12 965 965 -9 6 13 960 964 -9 6 14 904 956 -9 6 15 804 940 -9 6 16 671 920 -9 6 17 501 870 -9 6 18 319 785 -9 6 19 142 614 -9 6 20 12 51 -9 6 21 0 0 -9 6 22 0 0 -9 6 23 0 0 -9 6 24 0 0 -10 6 1 0 0 -10 6 2 0 0 -10 6 3 0 0 -10 6 4 0 0 -10 6 5 29 234 -10 6 6 179 669 -10 6 7 251 404 -10 6 8 330 88 -10 6 9 562 369 -10 6 10 735 663 -10 6 11 877 864 -10 6 12 967 968 -10 6 13 909 869 -10 6 14 701 575 -10 6 15 670 660 -10 6 16 553 639 -10 6 17 413 605 -10 6 18 284 631 -10 6 19 135 555 -10 6 20 11 47 -10 6 21 0 0 -10 6 22 0 0 -10 6 23 0 0 -10 6 24 0 0 -11 6 1 0 0 -11 6 2 0 0 -11 6 3 0 0 -11 6 4 0 0 -11 6 5 18 47 -11 6 6 141 332 -11 6 7 294 403 -11 6 8 448 351 -11 6 9 468 184 -11 6 10 522 95 -11 6 11 584 96 -11 6 12 337 0 -11 6 13 419 97 -11 6 14 487 96 -11 6 15 754 660 -11 6 16 516 456 -11 6 17 398 519 -11 6 18 260 469 -11 6 19 116 376 -11 6 20 11 43 -11 6 21 0 0 -11 6 22 0 0 -11 6 23 0 0 -11 6 24 0 0 -12 6 1 0 0 -12 6 2 0 0 -12 6 3 0 0 -12 6 4 0 0 -12 6 5 28 229 -12 6 6 173 548 -12 6 7 352 747 -12 6 8 548 815 -12 6 9 712 855 -12 6 10 831 683 -12 6 11 882 793 -12 6 12 814 600 -12 6 13 771 601 -12 6 14 727 596 -12 6 15 643 583 -12 6 16 614 757 -12 6 17 493 813 -12 6 18 317 741 -12 6 19 135 529 -12 6 20 13 59 -12 6 21 0 0 -12 6 22 0 0 -12 6 23 0 0 -12 6 24 0 0 -13 6 1 0 0 -13 6 2 0 0 -13 6 3 0 0 -13 6 4 0 0 -13 6 5 31 242 -13 6 6 183 632 -13 6 7 369 757 -13 6 8 553 822 -13 6 9 721 862 -13 6 10 857 884 -13 6 11 949 899 -13 6 12 921 803 -13 6 13 933 803 -13 6 14 881 896 -13 6 15 783 881 -13 6 16 659 859 -13 6 17 522 814 -13 6 18 319 741 -13 6 19 155 662 -13 6 20 14 76 -13 6 21 0 0 -13 6 22 0 0 -13 6 23 0 0 -13 6 24 0 0 -14 6 1 0 0 -14 6 2 0 0 -14 6 3 0 0 -14 6 4 0 0 -14 6 5 29 259 -14 6 6 170 550 -14 6 7 353 661 -14 6 8 539 809 -14 6 9 693 849 -14 6 10 834 872 -14 6 11 938 887 -14 6 12 989 993 -14 6 13 983 991 -14 6 14 931 981 -14 6 15 829 966 -14 6 16 684 932 -14 6 17 516 886 -14 6 18 333 807 -14 6 19 154 648 -14 6 20 15 72 -14 6 21 0 0 -14 6 22 0 0 -14 6 23 0 0 -14 6 24 0 0 -15 6 1 0 0 -15 6 2 0 0 -15 6 3 0 0 -15 6 4 0 0 -15 6 5 30 229 -15 6 6 181 616 -15 6 7 359 735 -15 6 8 539 800 -15 6 9 706 931 -15 6 10 839 957 -15 6 11 881 873 -15 6 12 870 782 -15 6 13 755 587 -15 6 14 765 678 -15 6 15 633 572 -15 6 16 523 554 -15 6 17 393 526 -15 6 18 272 557 -15 6 19 104 317 -15 6 20 11 43 -15 6 21 0 0 -15 6 22 0 0 -15 6 23 0 0 -15 6 24 0 0 -16 6 1 0 0 -16 6 2 0 0 -16 6 3 0 0 -16 6 4 0 0 -16 6 5 12 51 -16 6 6 73 67 -16 6 7 338 727 -16 6 8 414 529 -16 6 9 434 370 -16 6 10 561 286 -16 6 11 558 290 -16 6 12 334 0 -16 6 13 404 97 -16 6 14 266 0 -16 6 15 675 284 -16 6 16 568 458 -16 6 17 450 348 -16 6 18 289 394 -16 6 19 143 438 -16 6 20 7 26 -16 6 21 0 0 -16 6 22 0 0 -16 6 23 0 0 -16 6 24 0 0 -17 6 1 0 0 -17 6 2 0 0 -17 6 3 0 0 -17 6 4 0 0 -17 6 5 26 98 -17 6 6 86 133 -17 6 7 180 160 -17 6 8 239 87 -17 6 9 567 550 -17 6 10 816 848 -17 6 11 841 672 -17 6 12 878 581 -17 6 13 881 581 -17 6 14 558 288 -17 6 15 195 0 -17 6 16 281 0 -17 6 17 232 86 -17 6 18 183 155 -17 6 19 96 248 -17 6 20 7 17 -17 6 21 0 0 -17 6 22 0 0 -17 6 23 0 0 -17 6 24 0 0 -18 6 1 0 0 -18 6 2 0 0 -18 6 3 0 0 -18 6 4 0 0 -18 6 5 6 0 -18 6 6 54 0 -18 6 7 129 80 -18 6 8 170 0 -18 6 9 267 0 -18 6 10 377 94 -18 6 11 360 96 -18 6 12 379 0 -18 6 13 378 96 -18 6 14 356 96 -18 6 15 398 188 -18 6 16 366 363 -18 6 17 221 257 -18 6 18 123 156 -18 6 19 62 0 -18 6 20 8 17 -18 6 21 0 0 -18 6 22 0 0 -18 6 23 0 0 -18 6 24 0 0 -19 6 1 0 0 -19 6 2 0 0 -19 6 3 0 0 -19 6 4 0 0 -19 6 5 10 26 -19 6 6 73 66 -19 6 7 271 402 -19 6 8 207 88 -19 6 9 287 92 -19 6 10 293 95 -19 6 11 308 96 -19 6 12 152 0 -19 6 13 380 97 -19 6 14 721 580 -19 6 15 742 761 -19 6 16 484 461 -19 6 17 368 441 -19 6 18 238 404 -19 6 19 101 263 -19 6 20 12 47 -19 6 21 0 0 -19 6 22 0 0 -19 6 23 0 0 -19 6 24 0 0 -20 6 1 0 0 -20 6 2 0 0 -20 6 3 0 0 -20 6 4 0 0 -20 6 5 11 26 -20 6 6 62 70 -20 6 7 283 499 -20 6 8 344 271 -20 6 9 465 379 -20 6 10 391 98 -20 6 11 436 99 -20 6 12 524 199 -20 6 13 458 100 -20 6 14 510 198 -20 6 15 452 194 -20 6 16 361 188 -20 6 17 234 89 -20 6 18 148 82 -20 6 19 65 66 -20 6 20 7 13 -20 6 21 0 0 -20 6 22 0 0 -20 6 23 0 0 -20 6 24 0 0 -21 6 1 0 0 -21 6 2 0 0 -21 6 3 0 0 -21 6 4 0 0 -21 6 5 27 200 -21 6 6 173 614 -21 6 7 325 657 -21 6 8 534 804 -21 6 9 689 841 -21 6 10 814 768 -21 6 11 846 682 -21 6 12 890 687 -21 6 13 891 690 -21 6 14 861 775 -21 6 15 725 769 -21 6 16 559 560 -21 6 17 408 529 -21 6 18 281 563 -21 6 19 130 391 -21 6 20 15 68 -21 6 21 0 0 -21 6 22 0 0 -21 6 23 0 0 -21 6 24 0 0 -22 6 1 0 0 -22 6 2 0 0 -22 6 3 0 0 -22 6 4 0 0 -22 6 5 25 166 -22 6 6 137 336 -22 6 7 277 325 -22 6 8 451 532 -22 6 9 501 279 -22 6 10 675 382 -22 6 11 838 677 -22 6 12 696 292 -22 6 13 748 487 -22 6 14 669 484 -22 6 15 533 286 -22 6 16 395 278 -22 6 17 398 439 -22 6 18 318 722 -22 6 19 141 517 -22 6 20 18 106 -22 6 21 0 0 -22 6 22 0 0 -22 6 23 0 0 -22 6 24 0 0 -23 6 1 0 0 -23 6 2 0 0 -23 6 3 0 0 -23 6 4 0 0 -23 6 5 24 161 -23 6 6 169 603 -23 6 7 341 727 -23 6 8 536 883 -23 6 9 673 833 -23 6 10 796 760 -23 6 11 807 678 -23 6 12 805 683 -23 6 13 798 588 -23 6 14 815 685 -23 6 15 671 573 -23 6 16 604 741 -23 6 17 480 794 -23 6 18 312 719 -23 6 19 135 517 -23 6 20 18 106 -23 6 21 0 0 -23 6 22 0 0 -23 6 23 0 0 -23 6 24 0 0 -24 6 1 0 0 -24 6 2 0 0 -24 6 3 0 0 -24 6 4 0 0 -24 6 5 28 229 -24 6 6 172 602 -24 6 7 296 651 -24 6 8 435 442 -24 6 9 674 555 -24 6 10 803 477 -24 6 11 891 484 -24 6 12 827 488 -24 6 13 831 584 -24 6 14 799 579 -24 6 15 719 666 -24 6 16 636 737 -24 6 17 384 438 -24 6 18 290 558 -24 6 19 113 321 -24 6 20 11 34 -24 6 21 0 0 -24 6 22 0 0 -24 6 23 0 0 -24 6 24 0 0 -25 6 1 0 0 -25 6 2 0 0 -25 6 3 0 0 -25 6 4 0 0 -25 6 5 19 115 -25 6 6 62 68 -25 6 7 207 248 -25 6 8 350 359 -25 6 9 449 283 -25 6 10 443 194 -25 6 11 557 296 -25 6 12 585 298 -25 6 13 645 396 -25 6 14 553 296 -25 6 15 491 291 -25 6 16 536 563 -25 6 17 436 625 -25 6 18 300 652 -25 6 19 141 531 -25 6 20 17 106 -25 6 21 0 0 -25 6 22 0 0 -25 6 23 0 0 -25 6 24 0 0 -26 6 1 0 0 -26 6 2 0 0 -26 6 3 0 0 -26 6 4 0 0 -26 6 5 26 178 -26 6 6 160 477 -26 6 7 301 328 -26 6 8 473 357 -26 6 9 619 376 -26 6 10 749 193 -26 6 11 843 196 -26 6 12 963 593 -26 6 13 962 593 -26 6 14 855 588 -26 6 15 771 673 -26 6 16 559 558 -26 6 17 395 353 -26 6 18 228 161 -26 6 19 91 130 -26 6 20 10 38 -26 6 21 0 0 -26 6 22 0 0 -26 6 23 0 0 -26 6 24 0 0 -27 6 1 0 0 -27 6 2 0 0 -27 6 3 0 0 -27 6 4 0 0 -27 6 5 7 0 -27 6 6 28 0 -27 6 7 65 0 -27 6 8 121 0 -27 6 9 196 0 -27 6 10 220 0 -27 6 11 186 0 -27 6 12 357 0 -27 6 13 356 0 -27 6 14 331 0 -27 6 15 313 0 -27 6 16 439 0 -27 6 17 294 89 -27 6 18 243 161 -27 6 19 119 195 -27 6 20 14 64 -27 6 21 0 0 -27 6 22 0 0 -27 6 23 0 0 -27 6 24 0 0 -28 6 1 0 0 -28 6 2 0 0 -28 6 3 0 0 -28 6 4 0 0 -28 6 5 25 191 -28 6 6 175 614 -28 6 7 356 741 -28 6 8 538 808 -28 6 9 704 848 -28 6 10 839 870 -28 6 11 887 883 -28 6 12 938 894 -28 6 13 937 894 -28 6 14 886 887 -28 6 15 791 872 -28 6 16 661 850 -28 6 17 499 807 -28 6 18 322 735 -28 6 19 151 595 -28 6 20 18 119 -28 6 21 0 0 -28 6 22 0 0 -28 6 23 0 0 -28 6 24 0 0 -29 6 1 0 0 -29 6 2 0 0 -29 6 3 0 0 -29 6 4 0 0 -29 6 5 18 81 -29 6 6 150 268 -29 6 7 303 244 -29 6 8 445 267 -29 6 9 602 279 -29 6 10 767 285 -29 6 11 787 194 -29 6 12 344 0 -29 6 13 279 0 -29 6 14 540 0 -29 6 15 270 0 -29 6 16 262 0 -29 6 17 104 0 -29 6 18 123 0 -29 6 19 47 0 -29 6 20 6 0 -29 6 21 0 0 -29 6 22 0 0 -29 6 23 0 0 -29 6 24 0 0 -30 6 1 0 0 -30 6 2 0 0 -30 6 3 0 0 -30 6 4 0 0 -30 6 5 8 0 -30 6 6 56 0 -30 6 7 126 0 -30 6 8 199 0 -30 6 9 141 0 -30 6 10 171 0 -30 6 11 192 0 -30 6 12 259 0 -30 6 13 227 0 -30 6 14 301 0 -30 6 15 268 0 -30 6 16 112 0 -30 6 17 387 432 -30 6 18 212 314 -30 6 19 129 444 -30 6 20 14 72 -30 6 21 0 0 -30 6 22 0 0 -30 6 23 0 0 -30 6 24 0 0 -1 7 1 0 0 -1 7 2 0 0 -1 7 3 0 0 -1 7 4 0 0 -1 7 5 11 34 -1 7 6 59 65 -1 7 7 86 0 -1 7 8 220 87 -1 7 9 146 0 -1 7 10 153 0 -1 7 11 714 571 -1 7 12 621 481 -1 7 13 694 482 -1 7 14 538 288 -1 7 15 741 758 -1 7 16 612 831 -1 7 17 481 791 -1 7 18 321 726 -1 7 19 161 648 -1 7 20 14 51 -1 7 21 0 0 -1 7 22 0 0 -1 7 23 0 0 -1 7 24 0 0 -2 7 1 0 0 -2 7 2 0 0 -2 7 3 0 0 -2 7 4 0 0 -2 7 5 17 102 -2 7 6 139 463 -2 7 7 283 566 -2 7 8 173 177 -2 7 9 163 93 -2 7 10 381 96 -2 7 11 427 98 -2 7 12 450 98 -2 7 13 449 98 -2 7 14 364 97 -2 7 15 322 0 -2 7 16 265 0 -2 7 17 260 263 -2 7 18 133 80 -2 7 19 141 386 -2 7 20 15 72 -2 7 21 0 0 -2 7 22 0 0 -2 7 23 0 0 -2 7 24 0 0 -3 7 1 0 0 -3 7 2 0 0 -3 7 3 0 0 -3 7 4 0 0 -3 7 5 21 140 -3 7 6 166 654 -3 7 7 344 801 -3 7 8 468 790 -3 7 9 689 921 -3 7 10 823 947 -3 7 11 918 962 -3 7 12 971 972 -3 7 13 973 975 -3 7 14 869 869 -3 7 15 773 760 -3 7 16 636 646 -3 7 17 369 349 -3 7 18 201 79 -3 7 19 76 0 -3 7 20 9 0 -3 7 21 0 0 -3 7 22 0 0 -3 7 23 0 0 -3 7 24 0 0 -4 7 1 0 0 -4 7 2 0 0 -4 7 3 0 0 -4 7 4 0 0 -4 7 5 6 0 -4 7 6 39 0 -4 7 7 109 0 -4 7 8 128 0 -4 7 9 264 0 -4 7 10 198 0 -4 7 11 172 0 -4 7 12 207 0 -4 7 13 378 0 -4 7 14 171 0 -4 7 15 290 94 -4 7 16 261 0 -4 7 17 194 0 -4 7 18 169 157 -4 7 19 138 567 -4 7 20 14 43 -4 7 21 0 0 -4 7 22 0 0 -4 7 23 0 0 -4 7 24 0 0 -5 7 1 0 0 -5 7 2 0 0 -5 7 3 0 0 -5 7 4 0 0 -5 7 5 11 64 -5 7 6 67 127 -5 7 7 129 79 -5 7 8 205 87 -5 7 9 314 92 -5 7 10 378 96 -5 7 11 631 193 -5 7 12 888 711 -5 7 13 883 779 -5 7 14 837 704 -5 7 15 739 860 -5 7 16 642 841 -5 7 17 423 668 -5 7 18 229 571 -5 7 19 84 366 -5 7 20 15 72 -5 7 21 0 0 -5 7 22 0 0 -5 7 23 0 0 -5 7 24 0 0 -6 7 1 0 0 -6 7 2 0 0 -6 7 3 0 0 -6 7 4 0 0 -6 7 5 19 111 -6 7 6 139 398 -6 7 7 327 646 -6 7 8 504 711 -6 7 9 617 561 -6 7 10 685 481 -6 7 11 775 488 -6 7 12 864 595 -6 7 13 846 589 -6 7 14 833 686 -6 7 15 816 865 -6 7 16 664 840 -6 7 17 502 798 -6 7 18 339 807 -6 7 19 159 649 -6 7 20 18 111 -6 7 21 0 0 -6 7 22 0 0 -6 7 23 0 0 -6 7 24 0 0 -7 7 1 0 0 -7 7 2 0 0 -7 7 3 0 0 -7 7 4 0 0 -7 7 5 17 85 -7 7 6 151 522 -7 7 7 324 644 -7 7 8 498 713 -7 7 9 675 843 -7 7 10 751 868 -7 7 11 1002 881 -7 7 12 1054 789 -7 7 13 1054 789 -7 7 14 982 684 -7 7 15 837 480 -7 7 16 677 373 -7 7 17 498 356 -7 7 18 265 404 -7 7 19 104 260 -7 7 20 16 68 -7 7 21 0 0 -7 7 22 0 0 -7 7 23 0 0 -7 7 24 0 0 -8 7 1 0 0 -8 7 2 0 0 -8 7 3 0 0 -8 7 4 0 0 -8 7 5 17 106 -8 7 6 151 579 -8 7 7 326 719 -8 7 8 470 612 -8 7 9 367 183 -8 7 10 371 94 -8 7 11 586 478 -8 7 12 475 193 -8 7 13 234 0 -8 7 14 415 286 -8 7 15 352 94 -8 7 16 381 272 -8 7 17 403 516 -8 7 18 271 546 -8 7 19 43 125 -8 7 20 6 9 -8 7 21 0 0 -8 7 22 0 0 -8 7 23 0 0 -8 7 24 0 0 -9 7 1 0 0 -9 7 2 0 0 -9 7 3 0 0 -9 7 4 0 0 -9 7 5 16 81 -9 7 6 144 504 -9 7 7 298 548 -9 7 8 428 433 -9 7 9 422 274 -9 7 10 573 332 -9 7 11 474 288 -9 7 12 175 97 -9 7 13 793 676 -9 7 14 424 96 -9 7 15 376 94 -9 7 16 594 825 -9 7 17 373 522 -9 7 18 279 557 -9 7 19 116 383 -9 7 20 8 38 -9 7 21 0 0 -9 7 22 0 0 -9 7 23 0 0 -9 7 24 0 0 -10 7 1 0 0 -10 7 2 0 0 -10 7 3 0 0 -10 7 4 0 0 -10 7 5 16 89 -10 7 6 148 644 -10 7 7 333 721 -10 7 8 517 880 -10 7 9 686 929 -10 7 10 826 959 -10 7 11 923 974 -10 7 12 978 984 -10 7 13 974 981 -10 7 14 926 976 -10 7 15 825 957 -10 7 16 688 931 -10 7 17 518 882 -10 7 18 337 804 -10 7 19 156 646 -10 7 20 14 81 -10 7 21 0 0 -10 7 22 0 0 -10 7 23 0 0 -10 7 24 0 0 -11 7 1 0 0 -11 7 2 0 0 -11 7 3 0 0 -11 7 4 0 0 -11 7 5 14 72 -11 7 6 154 571 -11 7 7 337 634 -11 7 8 511 349 -11 7 9 679 277 -11 7 10 855 758 -11 7 11 805 578 -11 7 12 788 390 -11 7 13 636 586 -11 7 14 503 97 -11 7 15 520 95 -11 7 16 582 0 -11 7 17 213 0 -11 7 18 80 0 -11 7 19 35 0 -11 7 20 3 0 -11 7 21 0 0 -11 7 22 0 0 -11 7 23 0 0 -11 7 24 0 0 -12 7 1 0 0 -12 7 2 0 0 -12 7 3 0 0 -12 7 4 0 0 -12 7 5 3 0 -12 7 6 49 0 -12 7 7 118 0 -12 7 8 191 0 -12 7 9 184 0 -12 7 10 225 0 -12 7 11 254 0 -12 7 12 306 0 -12 7 13 288 0 -12 7 14 228 0 -12 7 15 171 0 -12 7 16 218 0 -12 7 17 44 0 -12 7 18 54 0 -12 7 19 37 0 -12 7 20 2 0 -12 7 21 0 0 -12 7 22 0 0 -12 7 23 0 0 -12 7 24 0 0 -13 7 1 0 0 -13 7 2 0 0 -13 7 3 0 0 -13 7 4 0 0 -13 7 5 4 4 -13 7 6 43 60 -13 7 7 97 0 -13 7 8 173 0 -13 7 9 459 541 -13 7 10 518 371 -13 7 11 416 94 -13 7 12 405 191 -13 7 13 657 572 -13 7 14 320 191 -13 7 15 472 281 -13 7 16 284 181 -13 7 17 276 258 -13 7 18 230 387 -13 7 19 127 369 -13 7 20 10 30 -13 7 21 0 0 -13 7 22 0 0 -13 7 23 0 0 -13 7 24 0 0 -14 7 1 0 0 -14 7 2 0 0 -14 7 3 0 0 -14 7 4 0 0 -14 7 5 12 55 -14 7 6 138 621 -14 7 7 149 235 -14 7 8 228 87 -14 7 9 304 91 -14 7 10 525 377 -14 7 11 534 288 -14 7 12 740 580 -14 7 13 834 677 -14 7 14 864 767 -14 7 15 724 851 -14 7 16 566 706 -14 7 17 548 784 -14 7 18 324 631 -14 7 19 152 564 -14 7 20 13 51 -14 7 21 0 0 -14 7 22 0 0 -14 7 23 0 0 -14 7 24 0 0 -15 7 1 0 0 -15 7 2 0 0 -15 7 3 0 0 -15 7 4 0 0 -15 7 5 0 3 -15 7 6 135 609 -15 7 7 318 776 -15 7 8 545 859 -15 7 9 712 726 -15 7 10 748 655 -15 7 11 884 857 -15 7 12 476 192 -15 7 13 750 574 -15 7 14 548 189 -15 7 15 518 279 -15 7 16 301 90 -15 7 17 105 0 -15 7 18 97 77 -15 7 19 49 60 -15 7 20 0 0 -15 7 21 0 0 -15 7 22 0 0 -15 7 23 0 0 -15 7 24 0 0 -16 7 1 0 0 -16 7 2 0 0 -16 7 3 0 0 -16 7 4 0 0 -16 7 5 0 0 -16 7 6 29 0 -16 7 7 63 0 -16 7 8 83 0 -16 7 9 370 180 -16 7 10 471 278 -16 7 11 800 755 -16 7 12 784 667 -16 7 13 784 571 -16 7 14 738 567 -16 7 15 749 744 -16 7 16 628 815 -16 7 17 466 681 -16 7 18 297 614 -16 7 19 131 480 -16 7 20 11 38 -16 7 21 0 0 -16 7 22 0 0 -16 7 23 0 0 -16 7 24 0 0 -17 7 1 0 0 -17 7 2 0 0 -17 7 3 0 0 -17 7 4 0 0 -17 7 5 9 43 -17 7 6 106 298 -17 7 7 220 539 -17 7 8 394 596 -17 7 9 470 540 -17 7 10 476 279 -17 7 11 513 284 -17 7 12 620 381 -17 7 13 670 475 -17 7 14 789 753 -17 7 15 705 741 -17 7 16 558 539 -17 7 17 314 0 -17 7 18 56 0 -17 7 19 28 0 -17 7 20 4 0 -17 7 21 0 0 -17 7 22 0 0 -17 7 23 0 0 -17 7 24 0 0 -18 7 1 0 0 -18 7 2 0 0 -18 7 3 0 0 -18 7 4 0 0 -18 7 5 8 30 -18 7 6 118 475 -18 7 7 291 690 -18 7 8 368 602 -18 7 9 553 544 -18 7 10 752 751 -18 7 11 691 476 -18 7 12 626 385 -18 7 13 656 481 -18 7 14 806 762 -18 7 15 743 842 -18 7 16 633 815 -18 7 17 481 774 -18 7 18 293 544 -18 7 19 141 426 -18 7 20 11 34 -18 7 21 0 0 -18 7 22 0 0 -18 7 23 0 0 -18 7 24 0 0 -19 7 1 0 0 -19 7 2 0 0 -19 7 3 0 0 -19 7 4 0 0 -19 7 5 6 13 -19 7 6 97 177 -19 7 7 178 153 -19 7 8 353 341 -19 7 9 566 719 -19 7 10 736 742 -19 7 11 749 815 -19 7 12 865 856 -19 7 13 799 825 -19 7 14 748 811 -19 7 15 791 927 -19 7 16 655 896 -19 7 17 490 847 -19 7 18 311 762 -19 7 19 136 591 -19 7 20 10 38 -19 7 21 0 0 -19 7 22 0 0 -19 7 23 0 0 -19 7 24 0 0 -20 7 1 0 0 -20 7 2 0 0 -20 7 3 0 0 -20 7 4 0 0 -20 7 5 0 0 -20 7 6 88 465 -20 7 7 260 609 -20 7 8 369 424 -20 7 9 612 717 -20 7 10 724 833 -20 7 11 778 659 -20 7 12 835 854 -20 7 13 830 854 -20 7 14 795 846 -20 7 15 713 831 -20 7 16 583 803 -20 7 17 529 757 -20 7 18 335 681 -20 7 19 115 353 -20 7 20 6 26 -20 7 21 0 0 -20 7 22 0 0 -20 7 23 0 0 -20 7 24 0 0 -21 7 1 0 0 -21 7 2 0 0 -21 7 3 0 0 -21 7 4 0 0 -21 7 5 0 0 -21 7 6 93 232 -21 7 7 126 152 -21 7 8 183 85 -21 7 9 399 180 -21 7 10 328 186 -21 7 11 450 95 -21 7 12 390 96 -21 7 13 549 192 -21 7 14 784 573 -21 7 15 526 379 -21 7 16 429 553 -21 7 17 333 611 -21 7 18 276 710 -21 7 19 114 554 -21 7 20 10 47 -21 7 21 0 0 -21 7 22 0 0 -21 7 23 0 0 -21 7 24 0 0 -22 7 1 0 0 -22 7 2 0 0 -22 7 3 0 0 -22 7 4 0 0 -22 7 5 0 0 -22 7 6 112 551 -22 7 7 270 711 -22 7 8 433 792 -22 7 9 593 745 -22 7 10 578 482 -22 7 11 537 294 -22 7 12 569 296 -22 7 13 445 99 -22 7 14 596 392 -22 7 15 478 288 -22 7 16 521 560 -22 7 17 293 266 -22 7 18 283 641 -22 7 19 103 375 -22 7 20 21 4 -22 7 21 0 0 -22 7 22 0 0 -22 7 23 0 0 -22 7 24 0 0 -23 7 1 0 0 -23 7 2 0 0 -23 7 3 0 0 -23 7 4 0 0 -23 7 5 0 0 -23 7 6 116 424 -23 7 7 282 550 -23 7 8 469 698 -23 7 9 608 829 -23 7 10 700 853 -23 7 11 825 799 -23 7 12 538 294 -23 7 13 462 196 -23 7 14 569 389 -23 7 15 377 96 -23 7 16 283 92 -23 7 17 223 0 -23 7 18 155 0 -23 7 19 59 0 -23 7 20 0 0 -23 7 21 0 0 -23 7 22 0 0 -23 7 23 0 0 -23 7 24 0 0 -24 7 1 0 0 -24 7 2 0 0 -24 7 3 0 0 -24 7 4 0 0 -24 7 5 0 0 -24 7 6 106 352 -24 7 7 261 541 -24 7 8 437 259 -24 7 9 391 182 -24 7 10 308 0 -24 7 11 319 0 -24 7 12 339 0 -24 7 13 247 0 -24 7 14 269 0 -24 7 15 205 0 -24 7 16 125 0 -24 7 17 112 0 -24 7 18 107 76 -24 7 19 37 58 -24 7 20 0 0 -24 7 21 0 0 -24 7 22 0 0 -24 7 23 0 0 -24 7 24 0 0 -25 7 1 0 0 -25 7 2 0 0 -25 7 3 0 0 -25 7 4 0 0 -25 7 5 0 0 -25 7 6 53 118 -25 7 7 100 0 -25 7 8 176 0 -25 7 9 143 0 -25 7 10 271 94 -25 7 11 548 382 -25 7 12 339 96 -25 7 13 524 387 -25 7 14 695 576 -25 7 15 710 759 -25 7 16 430 370 -25 7 17 407 614 -25 7 18 256 553 -25 7 19 98 428 -25 7 20 0 0 -25 7 21 0 0 -25 7 22 0 0 -25 7 23 0 0 -25 7 24 0 0 -26 7 1 0 0 -26 7 2 0 0 -26 7 3 0 0 -26 7 4 0 0 -26 7 5 0 0 -26 7 6 79 357 -26 7 7 184 316 -26 7 8 434 708 -26 7 9 627 844 -26 7 10 764 872 -26 7 11 860 886 -26 7 12 911 894 -26 7 13 802 694 -26 7 14 705 589 -26 7 15 424 193 -26 7 16 434 374 -26 7 17 288 265 -26 7 18 156 159 -26 7 19 47 62 -26 7 20 0 0 -26 7 21 0 0 -26 7 22 0 0 -26 7 23 0 0 -26 7 24 0 0 -27 7 1 0 0 -27 7 2 0 0 -27 7 3 0 0 -27 7 4 0 0 -27 7 5 0 0 -27 7 6 116 586 -27 7 7 295 776 -27 7 8 480 869 -27 7 9 653 922 -27 7 10 800 960 -27 7 11 904 980 -27 7 12 564 296 -27 7 13 625 395 -27 7 14 589 390 -27 7 15 623 577 -27 7 16 551 651 -27 7 17 348 440 -27 7 18 256 553 -27 7 19 119 539 -27 7 20 0 0 -27 7 21 0 0 -27 7 22 0 0 -27 7 23 0 0 -27 7 24 0 0 -28 7 1 0 0 -28 7 2 0 0 -28 7 3 0 0 -28 7 4 0 0 -28 7 5 0 0 -28 7 6 94 231 -28 7 7 250 309 -28 7 8 362 521 -28 7 9 575 551 -28 7 10 814 663 -28 7 11 922 771 -28 7 12 825 779 -28 7 13 794 783 -28 7 14 752 778 -28 7 15 755 764 -28 7 16 502 461 -28 7 17 392 611 -28 7 18 266 548 -28 7 19 96 356 -28 7 20 0 0 -28 7 21 0 0 -28 7 22 0 0 -28 7 23 0 0 -28 7 24 0 0 -29 7 1 0 0 -29 7 2 0 0 -29 7 3 0 0 -29 7 4 0 0 -29 7 5 0 0 -29 7 6 59 58 -29 7 7 111 77 -29 7 8 149 173 -29 7 9 616 731 -29 7 10 609 378 -29 7 11 819 673 -29 7 12 866 581 -29 7 13 708 291 -29 7 14 634 192 -29 7 15 620 282 -29 7 16 438 182 -29 7 17 186 0 -29 7 18 109 0 -29 7 19 28 0 -29 7 20 0 0 -29 7 21 0 0 -29 7 22 0 0 -29 7 23 0 0 -29 7 24 0 0 -30 7 1 0 0 -30 7 2 0 0 -30 7 3 0 0 -30 7 4 0 0 -30 7 5 0 0 -30 7 6 13 0 -30 7 7 46 0 -30 7 8 49 0 -30 7 9 166 0 -30 7 10 183 0 -30 7 11 186 95 -30 7 12 339 96 -30 7 13 423 192 -30 7 14 581 571 -30 7 15 385 281 -30 7 16 375 271 -30 7 17 344 598 -30 7 18 118 153 -30 7 19 44 57 -30 7 20 0 0 -30 7 21 0 0 -30 7 22 0 0 -30 7 23 0 0 -30 7 24 0 0 -31 7 1 0 0 -31 7 2 0 0 -31 7 3 0 0 -31 7 4 0 0 -31 7 5 0 0 -31 7 6 89 499 -31 7 7 269 763 -31 7 8 455 859 -31 7 9 531 546 -31 7 10 654 659 -31 7 11 679 575 -31 7 12 786 679 -31 7 13 896 876 -31 7 14 775 859 -31 7 15 674 832 -31 7 16 614 820 -31 7 17 457 773 -31 7 18 271 610 -31 7 19 114 564 -31 7 20 0 0 -31 7 21 0 0 -31 7 22 0 0 -31 7 23 0 0 -31 7 24 0 0 -1 8 1 0 0 -1 8 2 0 0 -1 8 3 0 0 -1 8 4 0 0 -1 8 5 0 0 -1 8 6 33 0 -1 8 7 42 0 -1 8 8 229 86 -1 8 9 456 273 -1 8 10 303 94 -1 8 11 301 96 -1 8 12 719 675 -1 8 13 576 482 -1 8 14 544 479 -1 8 15 431 378 -1 8 16 432 364 -1 8 17 293 342 -1 8 18 195 381 -1 8 19 108 558 -1 8 20 0 0 -1 8 21 0 0 -1 8 22 0 0 -1 8 23 0 0 -1 8 24 0 0 -2 8 1 0 0 -2 8 2 0 0 -2 8 3 0 0 -2 8 4 0 0 -2 8 5 0 0 -2 8 6 94 483 -2 8 7 274 751 -2 8 8 426 679 -2 8 9 628 903 -2 8 10 769 935 -2 8 11 868 952 -2 8 12 923 962 -2 8 13 672 578 -2 8 14 734 767 -2 8 15 659 564 -2 8 16 441 453 -2 8 17 288 342 -2 8 18 102 76 -2 8 19 85 440 -2 8 20 0 0 -2 8 21 0 0 -2 8 22 0 0 -2 8 23 0 0 -2 8 24 0 0 -3 8 1 0 0 -3 8 2 0 0 -3 8 3 0 0 -3 8 4 0 0 -3 8 5 0 0 -3 8 6 51 53 -3 8 7 99 74 -3 8 8 128 0 -3 8 9 145 0 -3 8 10 182 0 -3 8 11 315 0 -3 8 12 212 0 -3 8 13 178 0 -3 8 14 298 95 -3 8 15 258 0 -3 8 16 209 0 -3 8 17 161 0 -3 8 18 99 0 -3 8 19 31 0 -3 8 20 0 0 -3 8 21 0 0 -3 8 22 0 0 -3 8 23 0 0 -3 8 24 0 0 -4 8 1 0 0 -4 8 2 0 0 -4 8 3 0 0 -4 8 4 0 0 -4 8 5 0 0 -4 8 6 63 260 -4 8 7 164 225 -4 8 8 228 256 -4 8 9 237 274 -4 8 10 696 762 -4 8 11 819 801 -4 8 12 876 723 -4 8 13 881 815 -4 8 14 824 877 -4 8 15 730 861 -4 8 16 598 834 -4 8 17 437 787 -4 8 18 267 699 -4 8 19 94 509 -4 8 20 0 0 -4 8 21 0 0 -4 8 22 0 0 -4 8 23 0 0 -4 8 24 0 0 -5 8 1 0 0 -5 8 2 0 0 -5 8 3 0 0 -5 8 4 0 0 -5 8 5 0 0 -5 8 6 89 523 -5 8 7 268 754 -5 8 8 451 849 -5 8 9 625 910 -5 8 10 713 847 -5 8 11 812 869 -5 8 12 845 877 -5 8 13 864 880 -5 8 14 811 874 -5 8 15 721 852 -5 8 16 634 914 -5 8 17 464 863 -5 8 18 277 764 -5 8 19 85 436 -5 8 20 0 0 -5 8 21 0 0 -5 8 22 0 0 -5 8 23 0 0 -5 8 24 0 0 -6 8 1 0 0 -6 8 2 0 0 -6 8 3 0 0 -6 8 4 0 0 -6 8 5 0 0 -6 8 6 41 103 -6 8 7 99 224 -6 8 8 167 171 -6 8 9 548 544 -6 8 10 712 751 -6 8 11 675 672 -6 8 12 694 678 -6 8 13 720 584 -6 8 14 599 581 -6 8 15 626 570 -6 8 16 539 642 -6 8 17 397 345 -6 8 18 233 609 -6 8 19 76 214 -6 8 20 0 0 -6 8 21 0 0 -6 8 22 0 0 -6 8 23 0 0 -6 8 24 0 0 -7 8 1 0 0 -7 8 2 0 0 -7 8 3 0 0 -7 8 4 0 0 -7 8 5 0 0 -7 8 6 48 401 -7 8 7 221 521 -7 8 8 409 594 -7 8 9 556 453 -7 8 10 707 657 -7 8 11 784 671 -7 8 12 835 773 -7 8 13 818 676 -7 8 14 665 668 -7 8 15 530 658 -7 8 16 476 545 -7 8 17 357 514 -7 8 18 99 225 -7 8 19 38 0 -7 8 20 0 0 -7 8 21 0 0 -7 8 22 0 0 -7 8 23 0 0 -7 8 24 0 0 -8 8 1 0 0 -8 8 2 0 0 -8 8 3 0 0 -8 8 4 0 0 -8 8 5 0 0 -8 8 6 26 0 -8 8 7 48 0 -8 8 8 98 0 -8 8 9 214 0 -8 8 10 266 0 -8 8 11 304 0 -8 8 12 166 95 -8 8 13 325 0 -8 8 14 118 0 -8 8 15 323 372 -8 8 16 415 535 -8 8 17 309 585 -8 8 18 64 0 -8 8 19 73 396 -8 8 20 0 0 -8 8 21 0 0 -8 8 22 0 0 -8 8 23 0 0 -8 8 24 0 0 -9 8 1 0 0 -9 8 2 0 0 -9 8 3 0 0 -9 8 4 0 0 -9 8 5 0 0 -9 8 6 63 433 -9 8 7 253 735 -9 8 8 171 84 -9 8 9 141 0 -9 8 10 177 0 -9 8 11 238 0 -9 8 12 289 0 -9 8 13 320 96 -9 8 14 433 189 -9 8 15 478 371 -9 8 16 431 357 -9 8 17 267 251 -9 8 18 119 295 -9 8 19 58 342 -9 8 20 0 0 -9 8 21 0 0 -9 8 22 0 0 -9 8 23 0 0 -9 8 24 0 0 -10 8 1 0 0 -10 8 2 0 0 -10 8 3 0 0 -10 8 4 0 0 -10 8 5 0 0 -10 8 6 61 342 -10 8 7 239 671 -10 8 8 418 771 -10 8 9 617 916 -10 8 10 761 948 -10 8 11 862 965 -10 8 12 919 978 -10 8 13 920 978 -10 8 14 866 969 -10 8 15 764 949 -10 8 16 621 917 -10 8 17 400 777 -10 8 18 260 756 -10 8 19 80 504 -10 8 20 0 0 -10 8 21 0 0 -10 8 22 0 0 -10 8 23 0 0 -10 8 24 0 0 -11 8 1 0 0 -11 8 2 0 0 -11 8 3 0 0 -11 8 4 0 0 -11 8 5 0 0 -11 8 6 72 477 -11 8 7 249 738 -11 8 8 435 847 -11 8 9 611 910 -11 8 10 752 940 -11 8 11 794 863 -11 8 12 846 879 -11 8 13 848 881 -11 8 14 795 869 -11 8 15 759 946 -11 8 16 561 819 -11 8 17 420 853 -11 8 18 239 744 -11 8 19 71 491 -11 8 20 0 0 -11 8 21 0 0 -11 8 22 0 0 -11 8 23 0 0 -11 8 24 0 0 -12 8 1 0 0 -12 8 2 0 0 -12 8 3 0 0 -12 8 4 0 0 -12 8 5 0 0 -12 8 6 64 370 -12 8 7 223 514 -12 8 8 302 338 -12 8 9 257 0 -12 8 10 342 0 -12 8 11 203 0 -12 8 12 263 0 -12 8 13 350 96 -12 8 14 386 190 -12 8 15 511 279 -12 8 16 467 535 -12 8 17 380 667 -12 8 18 170 507 -12 8 19 54 409 -12 8 20 0 0 -12 8 21 0 0 -12 8 22 0 0 -12 8 23 0 0 -12 8 24 0 0 -13 8 1 0 0 -13 8 2 0 0 -13 8 3 0 0 -13 8 4 0 0 -13 8 5 0 0 -13 8 6 29 88 -13 8 7 167 362 -13 8 8 155 166 -13 8 9 359 446 -13 8 10 698 836 -13 8 11 844 952 -13 8 12 848 865 -13 8 13 797 768 -13 8 14 650 569 -13 8 15 614 649 -13 8 16 498 629 -13 8 17 403 755 -13 8 18 210 653 -13 8 19 52 177 -13 8 20 0 0 -13 8 21 0 0 -13 8 22 0 0 -13 8 23 0 0 -13 8 24 0 0 -14 8 1 0 0 -14 8 2 0 0 -14 8 3 0 0 -14 8 4 0 0 -14 8 5 0 0 -14 8 6 55 394 -14 8 7 188 649 -14 8 8 429 751 -14 8 9 556 803 -14 8 10 681 833 -14 8 11 789 850 -14 8 12 689 574 -14 8 13 634 477 -14 8 14 544 378 -14 8 15 557 560 -14 8 16 531 627 -14 8 17 373 756 -14 8 18 207 654 -14 8 19 66 392 -14 8 20 0 0 -14 8 21 0 0 -14 8 22 0 0 -14 8 23 0 0 -14 8 24 0 0 -15 8 1 0 0 -15 8 2 0 0 -15 8 3 0 0 -15 8 4 0 0 -15 8 5 0 0 -15 8 6 59 386 -15 8 7 245 645 -15 8 8 432 831 -15 8 9 545 799 -15 8 10 678 833 -15 8 11 861 946 -15 8 12 936 953 -15 8 13 952 856 -15 8 14 795 758 -15 8 15 669 555 -15 8 16 529 622 -15 8 17 393 661 -15 8 18 193 571 -15 8 19 59 255 -15 8 20 0 0 -15 8 21 0 0 -15 8 22 0 0 -15 8 23 0 0 -15 8 24 0 0 -16 8 1 0 0 -16 8 2 0 0 -16 8 3 0 0 -16 8 4 0 0 -16 8 5 0 0 -16 8 6 36 164 -16 8 7 107 213 -16 8 8 225 331 -16 8 9 529 535 -16 8 10 620 554 -16 8 11 714 576 -16 8 12 691 762 -16 8 13 515 381 -16 8 14 421 377 -16 8 15 339 277 -16 8 16 247 89 -16 8 17 266 83 -16 8 18 199 425 -16 8 19 26 165 -16 8 20 0 0 -16 8 21 0 0 -16 8 22 0 0 -16 8 23 0 0 -16 8 24 0 0 -17 8 1 0 0 -17 8 2 0 0 -17 8 3 0 0 -17 8 4 0 0 -17 8 5 0 0 -17 8 6 28 123 -17 8 7 135 355 -17 8 8 266 332 -17 8 9 134 90 -17 8 10 289 187 -17 8 11 543 381 -17 8 12 303 193 -17 8 13 328 96 -17 8 14 221 96 -17 8 15 288 93 -17 8 16 99 89 -17 8 17 163 83 -17 8 18 84 71 -17 8 19 18 39 -17 8 20 0 0 -17 8 21 0 0 -17 8 22 0 0 -17 8 23 0 0 -17 8 24 0 0 -18 8 1 0 0 -18 8 2 0 0 -18 8 3 0 0 -18 8 4 0 0 -18 8 5 0 0 -18 8 6 20 82 -18 8 7 163 507 -18 8 8 381 758 -18 8 9 591 906 -18 8 10 478 378 -18 8 11 698 674 -18 8 12 845 876 -18 8 13 892 971 -18 8 14 838 964 -18 8 15 737 947 -18 8 16 587 906 -18 8 17 412 842 -18 8 18 223 654 -18 8 19 50 367 -18 8 20 0 0 -18 8 21 0 0 -18 8 22 0 0 -18 8 23 0 0 -18 8 24 0 0 -19 8 1 0 0 -19 8 2 0 0 -19 8 3 0 0 -19 8 4 0 0 -19 8 5 0 0 -19 8 6 51 366 -19 8 7 199 645 -19 8 8 309 502 -19 8 9 488 685 -19 8 10 639 656 -19 8 11 569 668 -19 8 12 390 289 -19 8 13 538 96 -19 8 14 626 191 -19 8 15 381 186 -19 8 16 232 180 -19 8 17 196 167 -19 8 18 128 356 -19 8 19 15 40 -19 8 20 0 0 -19 8 21 0 0 -19 8 22 0 0 -19 8 23 0 0 -19 8 24 0 0 -20 8 1 0 0 -20 8 2 0 0 -20 8 3 0 0 -20 8 4 0 0 -20 8 5 0 0 -20 8 6 31 274 -20 8 7 147 495 -20 8 8 326 586 -20 8 9 520 811 -20 8 10 170 93 -20 8 11 379 96 -20 8 12 463 194 -20 8 13 630 485 -20 8 14 535 481 -20 8 15 471 377 -20 8 16 411 453 -20 8 17 284 420 -20 8 18 163 431 -20 8 19 34 268 -20 8 20 0 0 -20 8 21 0 0 -20 8 22 0 0 -20 8 23 0 0 -20 8 24 0 0 -21 8 1 0 0 -21 8 2 0 0 -21 8 3 0 0 -21 8 4 0 0 -21 8 5 0 0 -21 8 6 46 406 -21 8 7 223 723 -21 8 8 409 845 -21 8 9 586 911 -21 8 10 733 949 -21 8 11 838 971 -21 8 12 892 981 -21 8 13 890 980 -21 8 14 830 966 -21 8 15 726 947 -21 8 16 576 905 -21 8 17 401 843 -21 8 18 211 714 -21 8 19 39 344 -21 8 20 0 0 -21 8 21 0 0 -21 8 22 0 0 -21 8 23 0 0 -21 8 24 0 0 -22 8 1 0 0 -22 8 2 0 0 -22 8 3 0 0 -22 8 4 0 0 -22 8 5 0 0 -22 8 6 42 382 -22 8 7 213 639 -22 8 8 398 749 -22 8 9 574 810 -22 8 10 722 938 -22 8 11 822 955 -22 8 12 876 967 -22 8 13 876 967 -22 8 14 821 959 -22 8 15 717 939 -22 8 16 569 901 -22 8 17 392 831 -22 8 18 204 698 -22 8 19 35 297 -22 8 20 0 0 -22 8 21 0 0 -22 8 22 0 0 -22 8 23 0 0 -22 8 24 0 0 -23 8 1 0 0 -23 8 2 0 0 -23 8 3 0 0 -23 8 4 0 0 -23 8 5 0 0 -23 8 6 18 106 -23 8 7 104 141 -23 8 8 188 166 -23 8 9 260 90 -23 8 10 404 186 -23 8 11 641 191 -23 8 12 617 386 -23 8 13 514 193 -23 8 14 574 383 -23 8 15 406 281 -23 8 16 242 90 -23 8 17 174 84 -23 8 18 66 141 -23 8 19 11 26 -23 8 20 0 0 -23 8 21 0 0 -23 8 22 0 0 -23 8 23 0 0 -23 8 24 0 0 -24 8 1 0 0 -24 8 2 0 0 -24 8 3 0 0 -24 8 4 0 0 -24 8 5 0 0 -24 8 6 10 0 -24 8 7 66 0 -24 8 8 74 0 -24 8 9 92 0 -24 8 10 116 0 -24 8 11 128 0 -24 8 12 124 0 -24 8 13 227 98 -24 8 14 214 97 -24 8 15 450 475 -24 8 16 411 546 -24 8 17 313 674 -24 8 18 172 566 -24 8 19 22 191 -24 8 20 0 0 -24 8 21 0 0 -24 8 22 0 0 -24 8 23 0 0 -24 8 24 0 0 -25 8 1 0 0 -25 8 2 0 0 -25 8 3 0 0 -25 8 4 0 0 -25 8 5 0 0 -25 8 6 36 314 -25 8 7 209 718 -25 8 8 356 765 -25 8 9 533 734 -25 8 10 697 858 -25 8 11 798 878 -25 8 12 780 785 -25 8 13 640 590 -25 8 14 616 488 -25 8 15 608 667 -25 8 16 338 183 -25 8 17 207 84 -25 8 18 95 70 -25 8 19 10 21 -25 8 20 0 0 -25 8 21 0 0 -25 8 22 0 0 -25 8 23 0 0 -25 8 24 0 0 -26 8 1 0 0 -26 8 2 0 0 -26 8 3 0 0 -26 8 4 0 0 -26 8 5 0 0 -26 8 6 27 166 -26 8 7 146 282 -26 8 8 227 251 -26 8 9 324 270 -26 8 10 382 0 -26 8 11 319 0 -26 8 12 306 194 -26 8 13 414 194 -26 8 14 341 96 -26 8 15 291 187 -26 8 16 394 451 -26 8 17 291 500 -26 8 18 116 275 -26 8 19 19 115 -26 8 20 0 0 -26 8 21 0 0 -26 8 22 0 0 -26 8 23 0 0 -26 8 24 0 0 -27 8 1 0 0 -27 8 2 0 0 -27 8 3 0 0 -27 8 4 0 0 -27 8 5 0 0 -27 8 6 31 259 -27 8 7 184 641 -27 8 8 357 763 -27 8 9 593 734 -27 8 10 743 669 -27 8 11 846 783 -27 8 12 812 891 -27 8 13 809 890 -27 8 14 754 879 -27 8 15 719 858 -27 8 16 492 732 -27 8 17 376 421 -27 8 18 176 279 -27 8 19 20 55 -27 8 20 0 0 -27 8 21 0 0 -27 8 22 0 0 -27 8 23 0 0 -27 8 24 0 0 -28 8 1 0 0 -28 8 2 0 0 -28 8 3 0 0 -28 8 4 0 0 -28 8 5 0 0 -28 8 6 24 26 -28 8 7 162 72 -28 8 8 278 85 -28 8 9 101 0 -28 8 10 54 0 -28 8 11 266 0 -28 8 12 131 0 -28 8 13 116 0 -28 8 14 132 0 -28 8 15 53 0 -28 8 16 80 0 -28 8 17 42 0 -28 8 18 48 0 -28 8 19 2 0 -28 8 20 0 0 -28 8 21 0 0 -28 8 22 0 0 -28 8 23 0 0 -28 8 24 0 0 -29 8 1 0 0 -29 8 2 0 0 -29 8 3 0 0 -29 8 4 0 0 -29 8 5 0 0 -29 8 6 8 0 -29 8 7 60 68 -29 8 8 139 0 -29 8 9 193 0 -29 8 10 83 0 -29 8 11 285 96 -29 8 12 471 388 -29 8 13 293 97 -29 8 14 362 192 -29 8 15 528 560 -29 8 16 464 711 -29 8 17 313 651 -29 8 18 28 131 -29 8 19 8 26 -29 8 20 0 0 -29 8 21 0 0 -29 8 22 0 0 -29 8 23 0 0 -29 8 24 0 0 -30 8 1 0 0 -30 8 2 0 0 -30 8 3 0 0 -30 8 4 0 0 -30 8 5 0 0 -30 8 6 21 157 -30 8 7 132 275 -30 8 8 301 165 -30 8 9 271 179 -30 8 10 345 93 -30 8 11 488 286 -30 8 12 484 482 -30 8 13 482 482 -30 8 14 709 685 -30 8 15 581 747 -30 8 16 440 604 -30 8 17 251 489 -30 8 18 104 261 -30 8 19 9 4 -30 8 20 0 0 -30 8 21 0 0 -30 8 22 0 0 -30 8 23 0 0 -30 8 24 0 0 -31 8 1 0 0 -31 8 2 0 0 -31 8 3 0 0 -31 8 4 0 0 -31 8 5 0 0 -31 8 6 19 136 -31 8 7 113 409 -31 8 8 148 250 -31 8 9 510 724 -31 8 10 665 754 -31 8 11 551 193 -31 8 12 147 98 -31 8 13 218 98 -31 8 14 285 193 -31 8 15 285 282 -31 8 16 320 357 -31 8 17 248 246 -31 8 18 91 325 -31 8 19 16 18 -31 8 20 0 0 -31 8 21 0 0 -31 8 22 0 0 -31 8 23 0 0 -31 8 24 0 0 -1 9 1 0 0 -1 9 2 0 0 -1 9 3 0 0 -1 9 4 0 0 -1 9 5 0 0 -1 9 6 10 26 -1 9 7 79 67 -1 9 8 221 82 -1 9 9 415 359 -1 9 10 609 562 -1 9 11 797 861 -1 9 12 846 868 -1 9 13 840 865 -1 9 14 780 854 -1 9 15 669 831 -1 9 16 541 790 -1 9 17 347 719 -1 9 18 153 567 -1 9 19 10 38 -1 9 20 0 0 -1 9 21 0 0 -1 9 22 0 0 -1 9 23 0 0 -1 9 24 0 0 -2 9 1 0 0 -2 9 2 0 0 -2 9 3 0 0 -2 9 4 0 0 -2 9 5 0 0 -2 9 6 18 93 -2 9 7 130 331 -2 9 8 339 649 -2 9 9 453 618 -2 9 10 563 646 -2 9 11 639 472 -2 9 12 323 0 -2 9 13 376 95 -2 9 14 352 94 -2 9 15 252 0 -2 9 16 191 0 -2 9 17 69 0 -2 9 18 56 61 -2 9 19 0 0 -2 9 20 0 0 -2 9 21 0 0 -2 9 22 0 0 -2 9 23 0 0 -2 9 24 0 0 -3 9 1 0 0 -3 9 2 0 0 -3 9 3 0 0 -3 9 4 0 0 -3 9 5 0 0 -3 9 6 8 17 -3 9 7 94 196 -3 9 8 89 0 -3 9 9 194 88 -3 9 10 262 92 -3 9 11 591 568 -3 9 12 389 191 -3 9 13 627 575 -3 9 14 678 756 -3 9 15 619 831 -3 9 16 507 880 -3 9 17 329 801 -3 9 18 142 625 -3 9 19 0 0 -3 9 20 0 0 -3 9 21 0 0 -3 9 22 0 0 -3 9 23 0 0 -3 9 24 0 0 -4 9 1 0 0 -4 9 2 0 0 -4 9 3 0 0 -4 9 4 0 0 -4 9 5 0 0 -4 9 6 14 72 -4 9 7 152 474 -4 9 8 181 416 -4 9 9 388 543 -4 9 10 595 660 -4 9 11 763 969 -4 9 12 733 783 -4 9 13 833 974 -4 9 14 772 962 -4 9 15 663 940 -4 9 16 508 892 -4 9 17 327 808 -4 9 18 138 622 -4 9 19 0 0 -4 9 20 0 0 -4 9 21 0 0 -4 9 22 0 0 -4 9 23 0 0 -4 9 24 0 0 -5 9 1 0 0 -5 9 2 0 0 -5 9 3 0 0 -5 9 4 0 0 -5 9 5 0 0 -5 9 6 24 71 -5 9 7 157 601 -5 9 8 355 817 -5 9 9 530 891 -5 9 10 674 932 -5 9 11 774 953 -5 9 12 827 966 -5 9 13 818 961 -5 9 14 758 949 -5 9 15 648 924 -5 9 16 492 788 -5 9 17 313 709 -5 9 18 129 538 -5 9 19 0 0 -5 9 20 0 0 -5 9 21 0 0 -5 9 22 0 0 -5 9 23 0 0 -5 9 24 0 0 -6 9 1 0 0 -6 9 2 0 0 -6 9 3 0 0 -6 9 4 0 0 -6 9 5 0 0 -6 9 6 6 0 -6 9 7 37 0 -6 9 8 111 0 -6 9 9 207 0 -6 9 10 144 0 -6 9 11 282 0 -6 9 12 301 0 -6 9 13 343 0 -6 9 14 115 0 -6 9 15 83 0 -6 9 16 70 0 -6 9 17 41 79 -6 9 18 15 0 -6 9 19 0 0 -6 9 20 0 0 -6 9 21 0 0 -6 9 22 0 0 -6 9 23 0 0 -6 9 24 0 0 -7 9 1 0 0 -7 9 2 0 0 -7 9 3 0 0 -7 9 4 0 0 -7 9 5 0 0 -7 9 6 12 55 -7 9 7 154 602 -7 9 8 308 746 -7 9 9 531 906 -7 9 10 677 947 -7 9 11 777 966 -7 9 12 828 978 -7 9 13 824 979 -7 9 14 682 871 -7 9 15 574 751 -7 9 16 429 715 -7 9 17 194 321 -7 9 18 71 241 -7 9 19 0 0 -7 9 20 0 0 -7 9 21 0 0 -7 9 22 0 0 -7 9 23 0 0 -7 9 24 0 0 -8 9 1 0 0 -8 9 2 0 0 -8 9 3 0 0 -8 9 4 0 0 -8 9 5 0 0 -8 9 6 10 43 -8 9 7 144 537 -8 9 8 353 835 -8 9 9 475 822 -8 9 10 606 859 -8 9 11 460 294 -8 9 12 380 99 -8 9 13 376 98 -8 9 14 257 97 -8 9 15 219 94 -8 9 16 162 90 -8 9 17 97 80 -8 9 18 45 60 -8 9 19 0 0 -8 9 20 0 0 -8 9 21 0 0 -8 9 22 0 0 -8 9 23 0 0 -8 9 24 0 0 -9 9 1 0 0 -9 9 2 0 0 -9 9 3 0 0 -9 9 4 0 0 -9 9 5 0 0 -9 9 6 1 9 -9 9 7 98 386 -9 9 8 189 413 -9 9 9 453 575 -9 9 10 579 660 -9 9 11 644 677 -9 9 12 587 589 -9 9 13 669 489 -9 9 14 618 484 -9 9 15 452 376 -9 9 16 339 445 -9 9 17 130 160 -9 9 18 40 118 -9 9 19 0 0 -9 9 20 0 0 -9 9 21 0 0 -9 9 22 0 0 -9 9 23 0 0 -9 9 24 0 0 -10 9 1 0 0 -10 9 2 0 0 -10 9 3 0 0 -10 9 4 0 0 -10 9 5 0 0 -10 9 6 0 0 -10 9 7 82 65 -10 9 8 168 164 -10 9 9 244 90 -10 9 10 279 0 -10 9 11 297 0 -10 9 12 523 388 -10 9 13 466 0 -10 9 14 359 96 -10 9 15 239 0 -10 9 16 105 0 -10 9 17 59 0 -10 9 18 19 0 -10 9 19 0 0 -10 9 20 0 0 -10 9 21 0 0 -10 9 22 0 0 -10 9 23 0 0 -10 9 24 0 0 -11 9 1 0 0 -11 9 2 0 0 -11 9 3 0 0 -11 9 4 0 0 -11 9 5 0 0 -11 9 6 0 0 -11 9 7 151 657 -11 9 8 294 660 -11 9 9 468 722 -11 9 10 604 699 -11 9 11 600 676 -11 9 12 574 585 -11 9 13 434 293 -11 9 14 288 96 -11 9 15 433 466 -11 9 16 174 88 -11 9 17 129 158 -11 9 18 70 282 -11 9 19 0 0 -11 9 20 0 0 -11 9 21 0 0 -11 9 22 0 0 -11 9 23 0 0 -11 9 24 0 0 -12 9 1 0 0 -12 9 2 0 0 -12 9 3 0 0 -12 9 4 0 0 -12 9 5 0 0 -12 9 6 0 0 -12 9 7 71 127 -12 9 8 69 82 -12 9 9 287 268 -12 9 10 372 281 -12 9 11 171 191 -12 9 12 291 0 -12 9 13 288 97 -12 9 14 394 96 -12 9 15 452 651 -12 9 16 375 616 -12 9 17 208 622 -12 9 18 86 490 -12 9 19 0 0 -12 9 20 0 0 -12 9 21 0 0 -12 9 22 0 0 -12 9 23 0 0 -12 9 24 0 0 -13 9 1 0 0 -13 9 2 0 0 -13 9 3 0 0 -13 9 4 0 0 -13 9 5 0 0 -13 9 6 0 0 -13 9 7 119 314 -13 9 8 334 646 -13 9 9 463 532 -13 9 10 590 464 -13 9 11 656 381 -13 9 12 646 288 -13 9 13 682 575 -13 9 14 636 471 -13 9 15 519 364 -13 9 16 375 430 -13 9 17 195 303 -13 9 18 56 205 -13 9 19 0 0 -13 9 20 0 0 -13 9 21 0 0 -13 9 22 0 0 -13 9 23 0 0 -13 9 24 0 0 -14 9 1 0 0 -14 9 2 0 0 -14 9 3 0 0 -14 9 4 0 0 -14 9 5 0 0 -14 9 6 0 0 -14 9 7 22 0 -14 9 8 107 0 -14 9 9 44 0 -14 9 10 40 0 -14 9 11 81 0 -14 9 12 82 0 -14 9 13 45 0 -14 9 14 45 0 -14 9 15 52 0 -14 9 16 101 0 -14 9 17 32 0 -14 9 18 16 0 -14 9 19 0 0 -14 9 20 0 0 -14 9 21 0 0 -14 9 22 0 0 -14 9 23 0 0 -14 9 24 0 0 -15 9 1 0 0 -15 9 2 0 0 -15 9 3 0 0 -15 9 4 0 0 -15 9 5 0 0 -15 9 6 0 0 -15 9 7 135 626 -15 9 8 289 647 -15 9 9 448 714 -15 9 10 573 843 -15 9 11 554 480 -15 9 12 383 194 -15 9 13 330 194 -15 9 14 266 96 -15 9 15 211 93 -15 9 16 169 88 -15 9 17 153 385 -15 9 18 57 356 -15 9 19 0 0 -15 9 20 0 0 -15 9 21 0 0 -15 9 22 0 0 -15 9 23 0 0 -15 9 24 0 0 -16 9 1 0 0 -16 9 2 0 0 -16 9 3 0 0 -16 9 4 0 0 -16 9 5 0 0 -16 9 6 0 0 -16 9 7 115 554 -16 9 8 281 720 -16 9 9 491 886 -16 9 10 557 840 -16 9 11 641 766 -16 9 12 650 677 -16 9 13 688 774 -16 9 14 589 667 -16 9 15 528 740 -16 9 16 387 694 -16 9 17 241 685 -16 9 18 71 477 -16 9 19 0 0 -16 9 20 0 0 -16 9 21 0 0 -16 9 22 0 0 -16 9 23 0 0 -16 9 24 0 0 -17 9 1 0 0 -17 9 2 0 0 -17 9 3 0 0 -17 9 4 0 0 -17 9 5 0 0 -17 9 6 0 0 -17 9 7 111 543 -17 9 8 311 794 -17 9 9 483 877 -17 9 10 558 829 -17 9 11 646 851 -17 9 12 726 859 -17 9 13 758 952 -17 9 14 696 941 -17 9 15 582 912 -17 9 16 427 856 -17 9 17 246 744 -17 9 18 64 454 -17 9 19 0 0 -17 9 20 0 0 -17 9 21 0 0 -17 9 22 0 0 -17 9 23 0 0 -17 9 24 0 0 -18 9 1 0 0 -18 9 2 0 0 -18 9 3 0 0 -18 9 4 0 0 -18 9 5 0 0 -18 9 6 0 0 -18 9 7 122 597 -18 9 8 307 793 -18 9 9 481 880 -18 9 10 619 832 -18 9 11 716 853 -18 9 12 711 861 -18 9 13 699 862 -18 9 14 643 849 -18 9 15 577 913 -18 9 16 404 860 -18 9 17 198 523 -18 9 18 50 314 -18 9 19 0 0 -18 9 20 0 0 -18 9 21 0 0 -18 9 22 0 0 -18 9 23 0 0 -18 9 24 0 0 -19 9 1 0 0 -19 9 2 0 0 -19 9 3 0 0 -19 9 4 0 0 -19 9 5 0 0 -19 9 6 0 0 -19 9 7 38 62 -19 9 8 128 82 -19 9 9 170 91 -19 9 10 288 96 -19 9 11 384 196 -19 9 12 358 99 -19 9 13 353 99 -19 9 14 322 98 -19 9 15 344 285 -19 9 16 249 268 -19 9 17 154 312 -19 9 18 40 240 -19 9 19 0 0 -19 9 20 0 0 -19 9 21 0 0 -19 9 22 0 0 -19 9 23 0 0 -19 9 24 0 0 -20 9 1 0 0 -20 9 2 0 0 -20 9 3 0 0 -20 9 4 0 0 -20 9 5 0 0 -20 9 6 0 0 -20 9 7 120 618 -20 9 8 307 812 -20 9 9 485 903 -20 9 10 597 666 -20 9 11 383 98 -20 9 12 417 99 -20 9 13 410 99 -20 9 14 206 97 -20 9 15 134 0 -20 9 16 164 88 -20 9 17 56 76 -20 9 18 22 45 -20 9 19 0 0 -20 9 20 0 0 -20 9 21 0 0 -20 9 22 0 0 -20 9 23 0 0 -20 9 24 0 0 -21 9 1 0 0 -21 9 2 0 0 -21 9 3 0 0 -21 9 4 0 0 -21 9 5 0 0 -21 9 6 0 0 -21 9 7 63 176 -21 9 8 235 320 -21 9 9 382 713 -21 9 10 521 186 -21 9 11 499 667 -21 9 12 637 577 -21 9 13 480 96 -21 9 14 595 601 -21 9 15 444 365 -21 9 16 171 0 -21 9 17 81 0 -21 9 18 22 0 -21 9 19 0 0 -21 9 20 0 0 -21 9 21 0 0 -21 9 22 0 0 -21 9 23 0 0 -21 9 24 0 0 -22 9 1 0 0 -22 9 2 0 0 -22 9 3 0 0 -22 9 4 0 0 -22 9 5 0 0 -22 9 6 0 0 -22 9 7 52 118 -22 9 8 157 240 -22 9 9 381 624 -22 9 10 616 940 -22 9 11 666 872 -22 9 12 676 589 -22 9 13 457 490 -22 9 14 497 387 -22 9 15 428 373 -22 9 16 332 523 -22 9 17 204 524 -22 9 18 39 280 -22 9 19 0 0 -22 9 20 0 0 -22 9 21 0 0 -22 9 22 0 0 -22 9 23 0 0 -22 9 24 0 0 -23 9 1 0 0 -23 9 2 0 0 -23 9 3 0 0 -23 9 4 0 0 -23 9 5 0 0 -23 9 6 0 0 -23 9 7 109 598 -23 9 8 296 809 -23 9 9 473 900 -23 9 10 617 947 -23 9 11 717 974 -23 9 12 762 984 -23 9 13 749 981 -23 9 14 678 961 -23 9 15 560 929 -23 9 16 401 868 -23 9 17 216 739 -23 9 18 38 344 -23 9 19 0 0 -23 9 20 0 0 -23 9 21 0 0 -23 9 22 0 0 -23 9 23 0 0 -23 9 24 0 0 -24 9 1 0 0 -24 9 2 0 0 -24 9 3 0 0 -24 9 4 0 0 -24 9 5 0 0 -24 9 6 0 0 -24 9 7 104 583 -24 9 8 204 479 -24 9 9 460 881 -24 9 10 606 936 -24 9 11 705 963 -24 9 12 750 974 -24 9 13 738 971 -24 9 14 670 955 -24 9 15 546 740 -24 9 16 398 693 -24 9 17 211 588 -24 9 18 35 272 -24 9 19 0 0 -24 9 20 0 0 -24 9 21 0 0 -24 9 22 0 0 -24 9 23 0 0 -24 9 24 0 0 -25 9 1 0 0 -25 9 2 0 0 -25 9 3 0 0 -25 9 4 0 0 -25 9 5 0 0 -25 9 6 0 0 -25 9 7 53 226 -25 9 8 194 237 -25 9 9 257 266 -25 9 10 534 652 -25 9 11 609 669 -25 9 12 599 483 -25 9 13 421 192 -25 9 14 522 565 -25 9 15 381 544 -25 9 16 206 0 -25 9 17 121 141 -25 9 18 10 26 -25 9 19 0 0 -25 9 20 0 0 -25 9 21 0 0 -25 9 22 0 0 -25 9 23 0 0 -25 9 24 0 0 -26 9 1 0 0 -26 9 2 0 0 -26 9 3 0 0 -26 9 4 0 0 -26 9 5 0 0 -26 9 6 0 0 -26 9 7 83 441 -26 9 8 278 783 -26 9 9 451 878 -26 9 10 526 743 -26 9 11 611 761 -26 9 12 522 483 -26 9 13 422 289 -26 9 14 424 380 -26 9 15 411 548 -26 9 16 333 678 -26 9 17 184 643 -26 9 18 27 204 -26 9 19 0 0 -26 9 20 0 0 -26 9 21 0 0 -26 9 22 0 0 -26 9 23 0 0 -26 9 24 0 0 -27 9 1 0 0 -27 9 2 0 0 -27 9 3 0 0 -27 9 4 0 0 -27 9 5 0 0 -27 9 6 0 0 -27 9 7 92 552 -27 9 8 276 786 -27 9 9 445 874 -27 9 10 591 931 -27 9 11 688 958 -27 9 12 730 966 -27 9 13 717 964 -27 9 14 647 946 -27 9 15 525 904 -27 9 16 366 833 -27 9 17 189 695 -27 9 18 21 153 -27 9 19 0 0 -27 9 20 0 0 -27 9 21 0 0 -27 9 22 0 0 -27 9 23 0 0 -27 9 24 0 0 -28 9 1 0 0 -28 9 2 0 0 -28 9 3 0 0 -28 9 4 0 0 -28 9 5 0 0 -28 9 6 0 0 -28 9 7 42 54 -28 9 8 153 0 -28 9 9 332 87 -28 9 10 376 92 -28 9 11 220 0 -28 9 12 331 0 -28 9 13 276 0 -28 9 14 178 0 -28 9 15 178 0 -28 9 16 96 0 -28 9 17 40 0 -28 9 18 4 13 -28 9 19 0 0 -28 9 20 0 0 -28 9 21 0 0 -28 9 22 0 0 -28 9 23 0 0 -28 9 24 0 0 -29 9 1 0 0 -29 9 2 0 0 -29 9 3 0 0 -29 9 4 0 0 -29 9 5 0 0 -29 9 6 0 0 -29 9 7 25 0 -29 9 8 92 0 -29 9 9 161 0 -29 9 10 131 0 -29 9 11 189 0 -29 9 12 184 0 -29 9 13 232 0 -29 9 14 192 0 -29 9 15 153 0 -29 9 16 146 163 -29 9 17 52 0 -29 9 18 4 0 -29 9 19 0 0 -29 9 20 0 0 -29 9 21 0 0 -29 9 22 0 0 -29 9 23 0 0 -29 9 24 0 0 -30 9 1 0 0 -30 9 2 0 0 -30 9 3 0 0 -30 9 4 0 0 -30 9 5 0 0 -30 9 6 0 0 -30 9 7 26 0 -30 9 8 92 0 -30 9 9 161 0 -30 9 10 218 0 -30 9 11 134 0 -30 9 12 143 0 -30 9 13 302 380 -30 9 14 548 744 -30 9 15 433 713 -30 9 16 277 653 -30 9 17 155 528 -30 9 18 13 51 -30 9 19 0 0 -30 9 20 0 0 -30 9 21 0 0 -30 9 22 0 0 -30 9 23 0 0 -30 9 24 0 0 -1 10 1 0 0 -1 10 2 0 0 -1 10 3 0 0 -1 10 4 0 0 -1 10 5 0 0 -1 10 6 0 0 -1 10 7 36 0 -1 10 8 145 76 -1 10 9 118 86 -1 10 10 454 731 -1 10 11 375 377 -1 10 12 338 286 -1 10 13 473 381 -1 10 14 438 468 -1 10 15 393 538 -1 10 16 294 494 -1 10 17 138 332 -1 10 18 11 34 -1 10 19 0 0 -1 10 20 0 0 -1 10 21 0 0 -1 10 22 0 0 -1 10 23 0 0 -1 10 24 0 0 -2 10 1 0 0 -2 10 2 0 0 -2 10 3 0 0 -2 10 4 0 0 -2 10 5 0 0 -2 10 6 0 0 -2 10 7 25 0 -2 10 8 93 0 -2 10 9 155 0 -2 10 10 264 0 -2 10 11 293 0 -2 10 12 265 0 -2 10 13 227 0 -2 10 14 135 0 -2 10 15 100 0 -2 10 16 103 0 -2 10 17 78 66 -2 10 18 5 9 -2 10 19 0 0 -2 10 20 0 0 -2 10 21 0 0 -2 10 22 0 0 -2 10 23 0 0 -2 10 24 0 0 -3 10 1 0 0 -3 10 2 0 0 -3 10 3 0 0 -3 10 4 0 0 -3 10 5 0 0 -3 10 6 0 0 -3 10 7 14 0 -3 10 8 51 0 -3 10 9 236 431 -3 10 10 304 91 -3 10 11 404 94 -3 10 12 370 475 -3 10 13 356 0 -3 10 14 321 0 -3 10 15 249 0 -3 10 16 163 0 -3 10 17 56 0 -3 10 18 0 0 -3 10 19 0 0 -3 10 20 0 0 -3 10 21 0 0 -3 10 22 0 0 -3 10 23 0 0 -3 10 24 0 0 -4 10 1 0 0 -4 10 2 0 0 -4 10 3 0 0 -4 10 4 0 0 -4 10 5 0 0 -4 10 6 0 0 -4 10 7 19 0 -4 10 8 79 0 -4 10 9 142 0 -4 10 10 235 92 -4 10 11 229 95 -4 10 12 245 96 -4 10 13 249 95 -4 10 14 204 94 -4 10 15 207 0 -4 10 16 88 0 -4 10 17 28 0 -4 10 18 0 0 -4 10 19 0 0 -4 10 20 0 0 -4 10 21 0 0 -4 10 22 0 0 -4 10 23 0 0 -4 10 24 0 0 -5 10 1 0 0 -5 10 2 0 0 -5 10 3 0 0 -5 10 4 0 0 -5 10 5 0 0 -5 10 6 0 0 -5 10 7 26 48 -5 10 8 103 77 -5 10 9 268 354 -5 10 10 360 375 -5 10 11 339 193 -5 10 12 361 195 -5 10 13 439 388 -5 10 14 109 0 -5 10 15 215 91 -5 10 16 103 84 -5 10 17 68 131 -5 10 18 0 0 -5 10 19 0 0 -5 10 20 0 0 -5 10 21 0 0 -5 10 22 0 0 -5 10 23 0 0 -5 10 24 0 0 -6 10 1 0 0 -6 10 2 0 0 -6 10 3 0 0 -6 10 4 0 0 -6 10 5 0 0 -6 10 6 0 0 -6 10 7 15 47 -6 10 8 49 154 -6 10 9 72 88 -6 10 10 289 282 -6 10 11 91 97 -6 10 12 161 98 -6 10 13 147 98 -6 10 14 246 96 -6 10 15 194 92 -6 10 16 116 0 -6 10 17 56 66 -6 10 18 0 0 -6 10 19 0 0 -6 10 20 0 0 -6 10 21 0 0 -6 10 22 0 0 -6 10 23 0 0 -6 10 24 0 0 -7 10 1 0 0 -7 10 2 0 0 -7 10 3 0 0 -7 10 4 0 0 -7 10 5 0 0 -7 10 6 0 0 -7 10 7 42 285 -7 10 8 184 385 -7 10 9 409 880 -7 10 10 551 939 -7 10 11 540 776 -7 10 12 616 883 -7 10 13 600 879 -7 10 14 494 667 -7 10 15 422 820 -7 10 16 186 416 -7 10 17 94 576 -7 10 18 0 0 -7 10 19 0 0 -7 10 20 0 0 -7 10 21 0 0 -7 10 22 0 0 -7 10 23 0 0 -7 10 24 0 0 -8 10 1 0 0 -8 10 2 0 0 -8 10 3 0 0 -8 10 4 0 0 -8 10 5 0 0 -8 10 6 0 0 -8 10 7 49 404 -8 10 8 217 606 -8 10 9 264 174 -8 10 10 354 185 -8 10 11 385 190 -8 10 12 270 96 -8 10 13 295 96 -8 10 14 221 0 -8 10 15 125 0 -8 10 16 78 0 -8 10 17 23 0 -8 10 18 0 0 -8 10 19 0 0 -8 10 20 0 0 -8 10 21 0 0 -8 10 22 0 0 -8 10 23 0 0 -8 10 24 0 0 -9 10 1 0 0 -9 10 2 0 0 -9 10 3 0 0 -9 10 4 0 0 -9 10 5 0 0 -9 10 6 0 0 -9 10 7 20 43 -9 10 8 71 76 -9 10 9 218 433 -9 10 10 224 185 -9 10 11 222 96 -9 10 12 237 96 -9 10 13 231 96 -9 10 14 261 95 -9 10 15 204 91 -9 10 16 96 83 -9 10 17 50 125 -9 10 18 0 0 -9 10 19 0 0 -9 10 20 0 0 -9 10 21 0 0 -9 10 22 0 0 -9 10 23 0 0 -9 10 24 0 0 -10 10 1 0 0 -10 10 2 0 0 -10 10 3 0 0 -10 10 4 0 0 -10 10 5 0 0 -10 10 6 0 0 -10 10 7 48 453 -10 10 8 226 768 -10 10 9 397 881 -10 10 10 539 941 -10 10 11 638 978 -10 10 12 678 987 -10 10 13 660 983 -10 10 14 586 962 -10 10 15 461 918 -10 10 16 299 833 -10 10 17 116 630 -10 10 18 0 0 -10 10 19 0 0 -10 10 20 0 0 -10 10 21 0 0 -10 10 22 0 0 -10 10 23 0 0 -10 10 24 0 0 -11 10 1 0 0 -11 10 2 0 0 -11 10 3 0 0 -11 10 4 0 0 -11 10 5 0 0 -11 10 6 0 0 -11 10 7 45 421 -11 10 8 219 754 -11 10 9 390 874 -11 10 10 529 932 -11 10 11 623 961 -11 10 12 663 973 -11 10 13 653 969 -11 10 14 582 942 -11 10 15 464 903 -11 10 16 293 811 -11 10 17 110 598 -11 10 18 0 0 -11 10 19 0 0 -11 10 20 0 0 -11 10 21 0 0 -11 10 22 0 0 -11 10 23 0 0 -11 10 24 0 0 -12 10 1 0 0 -12 10 2 0 0 -12 10 3 0 0 -12 10 4 0 0 -12 10 5 0 0 -12 10 6 0 0 -12 10 7 43 297 -12 10 8 205 224 -12 10 9 334 172 -12 10 10 425 92 -12 10 11 513 95 -12 10 12 552 192 -12 10 13 511 96 -12 10 14 379 187 -12 10 15 393 619 -12 10 16 186 159 -12 10 17 59 58 -12 10 18 0 0 -12 10 19 0 0 -12 10 20 0 0 -12 10 21 0 0 -12 10 22 0 0 -12 10 23 0 0 -12 10 24 0 0 -13 10 1 0 0 -13 10 2 0 0 -13 10 3 0 0 -13 10 4 0 0 -13 10 5 0 0 -13 10 6 0 0 -13 10 7 12 0 -13 10 8 69 0 -13 10 9 114 0 -13 10 10 191 0 -13 10 11 227 0 -13 10 12 195 0 -13 10 13 235 0 -13 10 14 206 0 -13 10 15 144 0 -13 10 16 93 0 -13 10 17 30 0 -13 10 18 0 0 -13 10 19 0 0 -13 10 20 0 0 -13 10 21 0 0 -13 10 22 0 0 -13 10 23 0 0 -13 10 24 0 0 -14 10 1 0 0 -14 10 2 0 0 -14 10 3 0 0 -14 10 4 0 0 -14 10 5 0 0 -14 10 6 0 0 -14 10 7 6 0 -14 10 8 63 0 -14 10 9 69 0 -14 10 10 83 0 -14 10 11 83 0 -14 10 12 164 0 -14 10 13 201 0 -14 10 14 168 90 -14 10 15 112 0 -14 10 16 113 76 -14 10 17 41 54 -14 10 18 0 0 -14 10 19 0 0 -14 10 20 0 0 -14 10 21 0 0 -14 10 22 0 0 -14 10 23 0 0 -14 10 24 0 0 -15 10 1 0 0 -15 10 2 0 0 -15 10 3 0 0 -15 10 4 0 0 -15 10 5 0 0 -15 10 6 0 0 -15 10 7 31 251 -15 10 8 168 515 -15 10 9 153 87 -15 10 10 214 92 -15 10 11 268 95 -15 10 12 286 96 -15 10 13 283 191 -15 10 14 180 93 -15 10 15 373 710 -15 10 16 129 159 -15 10 17 33 54 -15 10 18 0 0 -15 10 19 0 0 -15 10 20 0 0 -15 10 21 0 0 -15 10 22 0 0 -15 10 23 0 0 -15 10 24 0 0 -16 10 1 0 0 -16 10 2 0 0 -16 10 3 0 0 -16 10 4 0 0 -16 10 5 0 0 -16 10 6 0 0 -16 10 7 10 0 -16 10 8 65 0 -16 10 9 124 0 -16 10 10 97 93 -16 10 11 218 96 -16 10 12 253 97 -16 10 13 302 192 -16 10 14 386 468 -16 10 15 156 88 -16 10 16 88 236 -16 10 17 24 105 -16 10 18 0 0 -16 10 19 0 0 -16 10 20 0 0 -16 10 21 0 0 -16 10 22 0 0 -16 10 23 0 0 -16 10 24 0 0 -17 10 1 0 0 -17 10 2 0 0 -17 10 3 0 0 -17 10 4 0 0 -17 10 5 0 0 -17 10 6 0 0 -17 10 7 24 170 -17 10 8 124 288 -17 10 9 155 86 -17 10 10 185 0 -17 10 11 359 94 -17 10 12 447 287 -17 10 13 406 573 -17 10 14 425 560 -17 10 15 284 354 -17 10 16 151 236 -17 10 17 55 256 -17 10 18 0 0 -17 10 19 0 0 -17 10 20 0 0 -17 10 21 0 0 -17 10 22 0 0 -17 10 23 0 0 -17 10 24 0 0 -18 10 1 0 0 -18 10 2 0 0 -18 10 3 0 0 -18 10 4 0 0 -18 10 5 0 0 -18 10 6 0 0 -18 10 7 25 187 -18 10 8 187 726 -18 10 9 356 861 -18 10 10 493 923 -18 10 11 584 953 -18 10 12 589 871 -18 10 13 570 866 -18 10 14 528 936 -18 10 15 406 888 -18 10 16 246 785 -18 10 17 70 504 -18 10 18 0 0 -18 10 19 0 0 -18 10 20 0 0 -18 10 21 0 0 -18 10 22 0 0 -18 10 23 0 0 -18 10 24 0 0 -19 10 1 0 0 -19 10 2 0 0 -19 10 3 0 0 -19 10 4 0 0 -19 10 5 0 0 -19 10 6 0 0 -19 10 7 21 140 -19 10 8 165 566 -19 10 9 321 679 -19 10 10 483 914 -19 10 11 573 943 -19 10 12 610 954 -19 10 13 568 853 -19 10 14 481 739 -19 10 15 315 439 -19 10 16 210 541 -19 10 17 62 439 -19 10 18 0 0 -19 10 19 0 0 -19 10 20 0 0 -19 10 21 0 0 -19 10 22 0 0 -19 10 23 0 0 -19 10 24 0 0 -20 10 1 0 0 -20 10 2 0 0 -20 10 3 0 0 -20 10 4 0 0 -20 10 5 0 0 -20 10 6 0 0 -20 10 7 16 89 -20 10 8 146 348 -20 10 9 305 419 -20 10 10 406 451 -20 10 11 540 749 -20 10 12 457 378 -20 10 13 493 565 -20 10 14 451 642 -20 10 15 270 259 -20 10 16 153 226 -20 10 17 39 183 -20 10 18 0 0 -20 10 19 0 0 -20 10 20 0 0 -20 10 21 0 0 -20 10 22 0 0 -20 10 23 0 0 -20 10 24 0 0 -21 10 1 0 0 -21 10 2 0 0 -21 10 3 0 0 -21 10 4 0 0 -21 10 5 0 0 -21 10 6 0 0 -21 10 7 8 17 -21 10 8 55 0 -21 10 9 32 0 -21 10 10 105 0 -21 10 11 108 0 -21 10 12 116 0 -21 10 13 112 0 -21 10 14 95 0 -21 10 15 181 170 -21 10 16 182 516 -21 10 17 46 263 -21 10 18 0 0 -21 10 19 0 0 -21 10 20 0 0 -21 10 21 0 0 -21 10 22 0 0 -21 10 23 0 0 -21 10 24 0 0 -22 10 1 0 0 -22 10 2 0 0 -22 10 3 0 0 -22 10 4 0 0 -22 10 5 0 0 -22 10 6 0 0 -22 10 7 3 0 -22 10 8 70 137 -22 10 9 194 331 -22 10 10 263 447 -22 10 11 516 830 -22 10 12 585 937 -22 10 13 564 929 -22 10 14 404 543 -22 10 15 289 340 -22 10 16 101 73 -22 10 17 22 43 -22 10 18 0 0 -22 10 19 0 0 -22 10 20 0 0 -22 10 21 0 0 -22 10 22 0 0 -22 10 23 0 0 -22 10 24 0 0 -23 10 1 0 0 -23 10 2 0 0 -23 10 3 0 0 -23 10 4 0 0 -23 10 5 0 0 -23 10 6 0 0 -23 10 7 4 0 -23 10 8 77 133 -23 10 9 173 245 -23 10 10 425 712 -23 10 11 244 93 -23 10 12 339 283 -23 10 13 364 376 -23 10 14 219 92 -23 10 15 162 87 -23 10 16 119 224 -23 10 17 23 87 -23 10 18 0 0 -23 10 19 0 0 -23 10 20 0 0 -23 10 21 0 0 -23 10 22 0 0 -23 10 23 0 0 -23 10 24 0 0 -24 10 1 0 0 -24 10 2 0 0 -24 10 3 0 0 -24 10 4 0 0 -24 10 5 0 0 -24 10 6 0 0 -24 10 7 1 0 -24 10 8 81 138 -24 10 9 226 422 -24 10 10 218 183 -24 10 11 311 285 -24 10 12 341 288 -24 10 13 436 573 -24 10 14 378 558 -24 10 15 348 784 -24 10 16 211 753 -24 10 17 44 412 -24 10 18 0 0 -24 10 19 0 0 -24 10 20 0 0 -24 10 21 0 0 -24 10 22 0 0 -24 10 23 0 0 -24 10 24 0 0 -25 10 1 0 0 -25 10 2 0 0 -25 10 3 0 0 -25 10 4 0 0 -25 10 5 0 0 -25 10 6 0 0 -25 10 7 1 17 -25 10 8 154 682 -25 10 9 318 837 -25 10 10 452 906 -25 10 11 541 939 -25 10 12 578 951 -25 10 13 558 946 -25 10 14 484 920 -25 10 15 358 775 -25 10 16 201 665 -25 10 17 39 327 -25 10 18 0 0 -25 10 19 0 0 -25 10 20 0 0 -25 10 21 0 0 -25 10 22 0 0 -25 10 23 0 0 -25 10 24 0 0 -26 10 1 0 0 -26 10 2 0 0 -26 10 3 0 0 -26 10 4 0 0 -26 10 5 0 0 -26 10 6 0 0 -26 10 7 1 9 -26 10 8 154 470 -26 10 9 266 332 -26 10 10 351 363 -26 10 11 394 281 -26 10 12 422 285 -26 10 13 361 283 -26 10 14 289 92 -26 10 15 301 428 -26 10 16 99 146 -26 10 17 28 157 -26 10 18 0 0 -26 10 19 0 0 -26 10 20 0 0 -26 10 21 0 0 -26 10 22 0 0 -26 10 23 0 0 -26 10 24 0 0 -27 10 1 0 0 -27 10 2 0 0 -27 10 3 0 0 -27 10 4 0 0 -27 10 5 0 0 -27 10 6 0 0 -27 10 7 0 0 -27 10 8 18 0 -27 10 9 62 0 -27 10 10 97 0 -27 10 11 111 0 -27 10 12 120 0 -27 10 13 139 0 -27 10 14 81 0 -27 10 15 84 0 -27 10 16 33 0 -27 10 17 5 0 -27 10 18 0 0 -27 10 19 0 0 -27 10 20 0 0 -27 10 21 0 0 -27 10 22 0 0 -27 10 23 0 0 -27 10 24 0 0 -28 10 1 0 0 -28 10 2 0 0 -28 10 3 0 0 -28 10 4 0 0 -28 10 5 0 0 -28 10 6 0 0 -28 10 7 0 0 -28 10 8 37 0 -28 10 9 97 0 -28 10 10 142 88 -28 10 11 218 92 -28 10 12 192 93 -28 10 13 201 0 -28 10 14 102 0 -28 10 15 119 83 -28 10 16 61 0 -28 10 17 10 0 -28 10 18 0 0 -28 10 19 0 0 -28 10 20 0 0 -28 10 21 0 0 -28 10 22 0 0 -28 10 23 0 0 -28 10 24 0 0 -29 10 1 0 0 -29 10 2 0 0 -29 10 3 0 0 -29 10 4 0 0 -29 10 5 0 0 -29 10 6 0 0 -29 10 7 0 0 -29 10 8 74 189 -29 10 9 304 804 -29 10 10 434 877 -29 10 11 385 456 -29 10 12 416 463 -29 10 13 494 733 -29 10 14 391 533 -29 10 15 179 165 -29 10 16 79 0 -29 10 17 9 0 -29 10 18 0 0 -29 10 19 0 0 -29 10 20 0 0 -29 10 21 0 0 -29 10 22 0 0 -29 10 23 0 0 -29 10 24 0 0 -30 10 1 0 0 -30 10 2 0 0 -30 10 3 0 0 -30 10 4 0 0 -30 10 5 0 0 -30 10 6 0 0 -30 10 7 0 0 -30 10 8 24 64 -30 10 9 95 83 -30 10 10 196 90 -30 10 11 426 565 -30 10 12 356 381 -30 10 13 309 284 -30 10 14 203 92 -30 10 15 175 257 -30 10 16 123 361 -30 10 17 22 153 -30 10 18 0 0 -30 10 19 0 0 -30 10 20 0 0 -30 10 21 0 0 -30 10 22 0 0 -30 10 23 0 0 -30 10 24 0 0 -31 10 1 0 0 -31 10 2 0 0 -31 10 3 0 0 -31 10 4 0 0 -31 10 5 0 0 -31 10 6 0 0 -31 10 7 0 0 -31 10 8 128 651 -31 10 9 290 829 -31 10 10 422 901 -31 10 11 511 938 -31 10 12 553 950 -31 10 13 532 941 -31 10 14 458 915 -31 10 15 334 851 -31 10 16 183 713 -31 10 17 23 157 -31 10 18 0 0 -31 10 19 0 0 -31 10 20 0 0 -31 10 21 0 0 -31 10 22 0 0 -31 10 23 0 0 -31 10 24 0 0 -1 11 1 0 0 -1 11 2 0 0 -1 11 3 0 0 -1 11 4 0 0 -1 11 5 0 0 -1 11 6 0 0 -1 11 7 0 0 -1 11 8 103 385 -1 11 9 104 82 -1 11 10 181 89 -1 11 11 198 93 -1 11 12 513 753 -1 11 13 458 652 -1 11 14 449 540 -1 11 15 284 333 -1 11 16 88 137 -1 11 17 6 13 -1 11 18 0 0 -1 11 19 0 0 -1 11 20 0 0 -1 11 21 0 0 -1 11 22 0 0 -1 11 23 0 0 -1 11 24 0 0 -2 11 1 0 0 -2 11 2 0 0 -2 11 3 0 0 -2 11 4 0 0 -2 11 5 0 0 -2 11 6 0 0 -2 11 7 0 0 -2 11 8 88 506 -2 11 9 198 575 -2 11 10 316 632 -2 11 11 476 851 -2 11 12 479 767 -2 11 13 433 670 -2 11 14 343 558 -2 11 15 308 782 -2 11 16 129 579 -2 11 17 15 106 -2 11 18 0 0 -2 11 19 0 0 -2 11 20 0 0 -2 11 21 0 0 -2 11 22 0 0 -2 11 23 0 0 -2 11 24 0 0 -3 11 1 0 0 -3 11 2 0 0 -3 11 3 0 0 -3 11 4 0 0 -3 11 5 0 0 -3 11 6 0 0 -3 11 7 0 0 -3 11 8 98 568 -3 11 9 257 815 -3 11 10 409 904 -3 11 11 497 941 -3 11 12 533 952 -3 11 13 515 946 -3 11 14 391 825 -3 11 15 322 855 -3 11 16 162 705 -3 11 17 3 35 -3 11 18 0 0 -3 11 19 0 0 -3 11 20 0 0 -3 11 21 0 0 -3 11 22 0 0 -3 11 23 0 0 -3 11 24 0 0 -4 11 1 0 0 -4 11 2 0 0 -4 11 3 0 0 -4 11 4 0 0 -4 11 5 0 0 -4 11 6 0 0 -4 11 7 0 0 -4 11 8 109 615 -4 11 9 267 809 -4 11 10 399 891 -4 11 11 488 932 -4 11 12 522 941 -4 11 13 404 749 -4 11 14 339 546 -4 11 15 184 170 -4 11 16 57 69 -4 11 17 8 9 -4 11 18 0 0 -4 11 19 0 0 -4 11 20 0 0 -4 11 21 0 0 -4 11 22 0 0 -4 11 23 0 0 -4 11 24 0 0 -5 11 1 0 0 -5 11 2 0 0 -5 11 3 0 0 -5 11 4 0 0 -5 11 5 0 0 -5 11 6 0 0 -5 11 7 0 0 -5 11 8 27 0 -5 11 9 67 0 -5 11 10 129 0 -5 11 11 162 0 -5 11 12 190 0 -5 11 13 153 0 -5 11 14 141 0 -5 11 15 88 0 -5 11 16 32 0 -5 11 17 1 0 -5 11 18 0 0 -5 11 19 0 0 -5 11 20 0 0 -5 11 21 0 0 -5 11 22 0 0 -5 11 23 0 0 -5 11 24 0 0 -6 11 1 0 0 -6 11 2 0 0 -6 11 3 0 0 -6 11 4 0 0 -6 11 5 0 0 -6 11 6 0 0 -6 11 7 0 0 -6 11 8 47 115 -6 11 9 75 79 -6 11 10 120 88 -6 11 11 233 183 -6 11 12 413 559 -6 11 13 333 371 -6 11 14 217 179 -6 11 15 128 248 -6 11 16 45 67 -6 11 17 4 0 -6 11 18 0 0 -6 11 19 0 0 -6 11 20 0 0 -6 11 21 0 0 -6 11 22 0 0 -6 11 23 0 0 -6 11 24 0 0 -7 11 1 0 0 -7 11 2 0 0 -7 11 3 0 0 -7 11 4 0 0 -7 11 5 0 0 -7 11 6 0 0 -7 11 7 0 0 -7 11 8 97 599 -7 11 9 256 810 -7 11 10 389 899 -7 11 11 477 937 -7 11 12 513 950 -7 11 13 491 939 -7 11 14 419 910 -7 11 15 298 842 -7 11 16 144 682 -7 11 17 2 26 -7 11 18 0 0 -7 11 19 0 0 -7 11 20 0 0 -7 11 21 0 0 -7 11 22 0 0 -7 11 23 0 0 -7 11 24 0 0 -8 11 1 0 0 -8 11 2 0 0 -8 11 3 0 0 -8 11 4 0 0 -8 11 5 0 0 -8 11 6 0 0 -8 11 7 0 0 -8 11 8 87 575 -8 11 9 268 795 -8 11 10 406 792 -8 11 11 439 832 -8 11 12 491 729 -8 11 13 471 723 -8 11 14 316 452 -8 11 15 192 167 -8 11 16 79 201 -8 11 17 0 0 -8 11 18 0 0 -8 11 19 0 0 -8 11 20 0 0 -8 11 21 0 0 -8 11 22 0 0 -8 11 23 0 0 -8 11 24 0 0 -9 11 1 0 0 -9 11 2 0 0 -9 11 3 0 0 -9 11 4 0 0 -9 11 5 0 0 -9 11 6 0 0 -9 11 7 0 0 -9 11 8 28 57 -9 11 9 70 0 -9 11 10 142 88 -9 11 11 203 92 -9 11 12 184 0 -9 11 13 178 0 -9 11 14 148 0 -9 11 15 100 0 -9 11 16 44 0 -9 11 17 0 0 -9 11 18 0 0 -9 11 19 0 0 -9 11 20 0 0 -9 11 21 0 0 -9 11 22 0 0 -9 11 23 0 0 -9 11 24 0 0 -10 11 1 0 0 -10 11 2 0 0 -10 11 3 0 0 -10 11 4 0 0 -10 11 5 0 0 -10 11 6 0 0 -10 11 7 0 0 -10 11 8 12 0 -10 11 9 69 0 -10 11 10 109 0 -10 11 11 165 0 -10 11 12 179 0 -10 11 13 172 0 -10 11 14 143 0 -10 11 15 80 0 -10 11 16 41 0 -10 11 17 0 0 -10 11 18 0 0 -10 11 19 0 0 -10 11 20 0 0 -10 11 21 0 0 -10 11 22 0 0 -10 11 23 0 0 -10 11 24 0 0 -11 11 1 0 0 -11 11 2 0 0 -11 11 3 0 0 -11 11 4 0 0 -11 11 5 0 0 -11 11 6 0 0 -11 11 7 0 0 -11 11 8 14 0 -11 11 9 56 0 -11 11 10 64 0 -11 11 11 72 0 -11 11 12 66 0 -11 11 13 38 0 -11 11 14 60 0 -11 11 15 33 0 -11 11 16 16 0 -11 11 17 0 0 -11 11 18 0 0 -11 11 19 0 0 -11 11 20 0 0 -11 11 21 0 0 -11 11 22 0 0 -11 11 23 0 0 -11 11 24 0 0 -12 11 1 0 0 -12 11 2 0 0 -12 11 3 0 0 -12 11 4 0 0 -12 11 5 0 0 -12 11 6 0 0 -12 11 7 0 0 -12 11 8 24 0 -12 11 9 70 0 -12 11 10 66 0 -12 11 11 55 0 -12 11 12 106 0 -12 11 13 71 0 -12 11 14 35 0 -12 11 15 28 0 -12 11 16 14 0 -12 11 17 0 0 -12 11 18 0 0 -12 11 19 0 0 -12 11 20 0 0 -12 11 21 0 0 -12 11 22 0 0 -12 11 23 0 0 -12 11 24 0 0 -13 11 1 0 0 -13 11 2 0 0 -13 11 3 0 0 -13 11 4 0 0 -13 11 5 0 0 -13 11 6 0 0 -13 11 7 0 0 -13 11 8 21 0 -13 11 9 64 0 -13 11 10 133 0 -13 11 11 114 0 -13 11 12 158 0 -13 11 13 154 0 -13 11 14 155 0 -13 11 15 111 0 -13 11 16 50 0 -13 11 17 0 0 -13 11 18 0 0 -13 11 19 0 0 -13 11 20 0 0 -13 11 21 0 0 -13 11 22 0 0 -13 11 23 0 0 -13 11 24 0 0 -14 11 1 0 0 -14 11 2 0 0 -14 11 3 0 0 -14 11 4 0 0 -14 11 5 0 0 -14 11 6 0 0 -14 11 7 0 0 -14 11 8 50 311 -14 11 9 228 781 -14 11 10 362 879 -14 11 11 453 923 -14 11 12 488 934 -14 11 13 469 927 -14 11 14 395 893 -14 11 15 268 814 -14 11 16 121 636 -14 11 17 0 0 -14 11 18 0 0 -14 11 19 0 0 -14 11 20 0 0 -14 11 21 0 0 -14 11 22 0 0 -14 11 23 0 0 -14 11 24 0 0 -15 11 1 0 0 -15 11 2 0 0 -15 11 3 0 0 -15 11 4 0 0 -15 11 5 0 0 -15 11 6 0 0 -15 11 7 0 0 -15 11 8 50 250 -15 11 9 170 384 -15 11 10 264 260 -15 11 11 261 91 -15 11 12 378 279 -15 11 13 366 368 -15 11 14 293 266 -15 11 15 144 80 -15 11 16 38 125 -15 11 17 0 0 -15 11 18 0 0 -15 11 19 0 0 -15 11 20 0 0 -15 11 21 0 0 -15 11 22 0 0 -15 11 23 0 0 -15 11 24 0 0 -16 11 1 0 0 -16 11 2 0 0 -16 11 3 0 0 -16 11 4 0 0 -16 11 5 0 0 -16 11 6 0 0 -16 11 7 0 0 -16 11 8 19 49 -16 11 9 81 75 -16 11 10 72 86 -16 11 11 100 0 -16 11 12 114 0 -16 11 13 88 0 -16 11 14 64 0 -16 11 15 45 0 -16 11 16 17 0 -16 11 17 0 0 -16 11 18 0 0 -16 11 19 0 0 -16 11 20 0 0 -16 11 21 0 0 -16 11 22 0 0 -16 11 23 0 0 -16 11 24 0 0 -17 11 1 0 0 -17 11 2 0 0 -17 11 3 0 0 -17 11 4 0 0 -17 11 5 0 0 -17 11 6 0 0 -17 11 7 0 0 -17 11 8 30 199 -17 11 9 127 310 -17 11 10 153 88 -17 11 11 244 370 -17 11 12 331 471 -17 11 13 197 93 -17 11 14 163 90 -17 11 15 80 83 -17 11 16 38 63 -17 11 17 0 0 -17 11 18 0 0 -17 11 19 0 0 -17 11 20 0 0 -17 11 21 0 0 -17 11 22 0 0 -17 11 23 0 0 -17 11 24 0 0 -18 11 1 0 0 -18 11 2 0 0 -18 11 3 0 0 -18 11 4 0 0 -18 11 5 0 0 -18 11 6 0 0 -18 11 7 0 0 -18 11 8 18 0 -18 11 9 57 0 -18 11 10 66 0 -18 11 11 154 0 -18 11 12 141 0 -18 11 13 161 0 -18 11 14 79 0 -18 11 15 44 0 -18 11 16 31 0 -18 11 17 0 0 -18 11 18 0 0 -18 11 19 0 0 -18 11 20 0 0 -18 11 21 0 0 -18 11 22 0 0 -18 11 23 0 0 -18 11 24 0 0 -19 11 1 0 0 -19 11 2 0 0 -19 11 3 0 0 -19 11 4 0 0 -19 11 5 0 0 -19 11 6 0 0 -19 11 7 0 0 -19 11 8 51 479 -19 11 9 204 768 -19 11 10 226 438 -19 11 11 221 92 -19 11 12 298 188 -19 11 13 285 185 -19 11 14 235 178 -19 11 15 167 243 -19 11 16 95 366 -19 11 17 0 0 -19 11 18 0 0 -19 11 19 0 0 -19 11 20 0 0 -19 11 21 0 0 -19 11 22 0 0 -19 11 23 0 0 -19 11 24 0 0 -20 11 1 0 0 -20 11 2 0 0 -20 11 3 0 0 -20 11 4 0 0 -20 11 5 0 0 -20 11 6 0 0 -20 11 7 0 0 -20 11 8 20 191 -20 11 9 59 76 -20 11 10 108 87 -20 11 11 96 91 -20 11 12 141 186 -20 11 13 62 92 -20 11 14 122 0 -20 11 15 78 81 -20 11 16 40 61 -20 11 17 0 0 -20 11 18 0 0 -20 11 19 0 0 -20 11 20 0 0 -20 11 21 0 0 -20 11 22 0 0 -20 11 23 0 0 -20 11 24 0 0 -21 11 1 0 0 -21 11 2 0 0 -21 11 3 0 0 -21 11 4 0 0 -21 11 5 0 0 -21 11 6 0 0 -21 11 7 0 0 -21 11 8 12 72 -21 11 9 118 266 -21 11 10 177 513 -21 11 11 137 271 -21 11 12 153 93 -21 11 13 146 91 -21 11 14 120 0 -21 11 15 77 0 -21 11 16 29 0 -21 11 17 0 0 -21 11 18 0 0 -21 11 19 0 0 -21 11 20 0 0 -21 11 21 0 0 -21 11 22 0 0 -21 11 23 0 0 -21 11 24 0 0 -22 11 1 0 0 -22 11 2 0 0 -22 11 3 0 0 -22 11 4 0 0 -22 11 5 0 0 -22 11 6 0 0 -22 11 7 0 0 -22 11 8 11 0 -22 11 9 61 0 -22 11 10 136 85 -22 11 11 176 91 -22 11 12 193 93 -22 11 13 366 640 -22 11 14 262 439 -22 11 15 159 556 -22 11 16 38 234 -22 11 17 0 0 -22 11 18 0 0 -22 11 19 0 0 -22 11 20 0 0 -22 11 21 0 0 -22 11 22 0 0 -22 11 23 0 0 -22 11 24 0 0 -23 11 1 0 0 -23 11 2 0 0 -23 11 3 0 0 -23 11 4 0 0 -23 11 5 0 0 -23 11 6 0 0 -23 11 7 0 0 -23 11 8 12 0 -23 11 9 29 0 -23 11 10 37 0 -23 11 11 63 0 -23 11 12 57 0 -23 11 13 123 89 -23 11 14 59 86 -23 11 15 28 78 -23 11 16 26 0 -23 11 17 0 0 -23 11 18 0 0 -23 11 19 0 0 -23 11 20 0 0 -23 11 21 0 0 -23 11 22 0 0 -23 11 23 0 0 -23 11 24 0 0 -24 11 1 0 0 -24 11 2 0 0 -24 11 3 0 0 -24 11 4 0 0 -24 11 5 0 0 -24 11 6 0 0 -24 11 7 0 0 -24 11 8 4 0 -24 11 9 57 0 -24 11 10 107 0 -24 11 11 104 0 -24 11 12 136 0 -24 11 13 70 0 -24 11 14 107 0 -24 11 15 74 0 -24 11 16 26 56 -24 11 17 0 0 -24 11 18 0 0 -24 11 19 0 0 -24 11 20 0 0 -24 11 21 0 0 -24 11 22 0 0 -24 11 23 0 0 -24 11 24 0 0 -25 11 1 0 0 -25 11 2 0 0 -25 11 3 0 0 -25 11 4 0 0 -25 11 5 0 0 -25 11 6 0 0 -25 11 7 0 0 -25 11 8 11 0 -25 11 9 56 0 -25 11 10 99 0 -25 11 11 39 0 -25 11 12 118 0 -25 11 13 89 0 -25 11 14 53 0 -25 11 15 35 0 -25 11 16 13 0 -25 11 17 0 0 -25 11 18 0 0 -25 11 19 0 0 -25 11 20 0 0 -25 11 21 0 0 -25 11 22 0 0 -25 11 23 0 0 -25 11 24 0 0 -26 11 1 0 0 -26 11 2 0 0 -26 11 3 0 0 -26 11 4 0 0 -26 11 5 0 0 -26 11 6 0 0 -26 11 7 0 0 -26 11 8 6 0 -26 11 9 35 0 -26 11 10 59 0 -26 11 11 73 87 -26 11 12 85 89 -26 11 13 366 659 -26 11 14 296 697 -26 11 15 215 754 -26 11 16 72 479 -26 11 17 0 0 -26 11 18 0 0 -26 11 19 0 0 -26 11 20 0 0 -26 11 21 0 0 -26 11 22 0 0 -26 11 23 0 0 -26 11 24 0 0 -27 11 1 0 0 -27 11 2 0 0 -27 11 3 0 0 -27 11 4 0 0 -27 11 5 0 0 -27 11 6 0 0 -27 11 7 0 0 -27 11 8 6 0 -27 11 9 34 0 -27 11 10 59 0 -27 11 11 296 263 -27 11 12 359 623 -27 11 13 288 619 -27 11 14 299 592 -27 11 15 164 228 -27 11 16 60 105 -27 11 17 0 0 -27 11 18 0 0 -27 11 19 0 0 -27 11 20 0 0 -27 11 21 0 0 -27 11 22 0 0 -27 11 23 0 0 -27 11 24 0 0 -28 11 1 0 0 -28 11 2 0 0 -28 11 3 0 0 -28 11 4 0 0 -28 11 5 0 0 -28 11 6 0 0 -28 11 7 0 0 -28 11 8 21 132 -28 11 9 109 406 -28 11 10 239 566 -28 11 11 318 690 -28 11 12 368 705 -28 11 13 315 611 -28 11 14 278 499 -28 11 15 179 372 -28 11 16 65 255 -28 11 17 0 0 -28 11 18 0 0 -28 11 19 0 0 -28 11 20 0 0 -28 11 21 0 0 -28 11 22 0 0 -28 11 23 0 0 -28 11 24 0 0 -29 11 1 0 0 -29 11 2 0 0 -29 11 3 0 0 -29 11 4 0 0 -29 11 5 0 0 -29 11 6 0 0 -29 11 7 0 0 -29 11 8 3 0 -29 11 9 24 0 -29 11 10 42 0 -29 11 11 28 0 -29 11 12 88 0 -29 11 13 76 0 -29 11 14 40 0 -29 11 15 29 0 -29 11 16 6 0 -29 11 17 0 0 -29 11 18 0 0 -29 11 19 0 0 -29 11 20 0 0 -29 11 21 0 0 -29 11 22 0 0 -29 11 23 0 0 -29 11 24 0 0 -30 11 1 0 0 -30 11 2 0 0 -30 11 3 0 0 -30 11 4 0 0 -30 11 5 0 0 -30 11 6 0 0 -30 11 7 0 0 -30 11 8 8 13 -30 11 9 49 137 -30 11 10 185 296 -30 11 11 337 736 -30 11 12 334 715 -30 11 13 240 444 -30 11 14 140 255 -30 11 15 111 382 -30 11 16 29 263 -30 11 17 0 0 -30 11 18 0 0 -30 11 19 0 0 -30 11 20 0 0 -30 11 21 0 0 -30 11 22 0 0 -30 11 23 0 0 -30 11 24 0 0 -1 12 1 0 0 -1 12 2 0 0 -1 12 3 0 0 -1 12 4 0 0 -1 12 5 0 0 -1 12 6 0 0 -1 12 7 0 0 -1 12 8 11 17 -1 12 9 61 71 -1 12 10 122 86 -1 12 11 216 91 -1 12 12 240 93 -1 12 13 178 92 -1 12 14 179 88 -1 12 15 187 552 -1 12 16 38 109 -1 12 17 0 0 -1 12 18 0 0 -1 12 19 0 0 -1 12 20 0 0 -1 12 21 0 0 -1 12 22 0 0 -1 12 23 0 0 -1 12 24 0 0 -2 12 1 0 0 -2 12 2 0 0 -2 12 3 0 0 -2 12 4 0 0 -2 12 5 0 0 -2 12 6 0 0 -2 12 7 0 0 -2 12 8 17 89 -2 12 9 122 493 -2 12 10 278 760 -2 12 11 381 904 -2 12 12 423 927 -2 12 13 409 919 -2 12 14 271 792 -2 12 15 186 712 -2 12 16 73 445 -2 12 17 0 0 -2 12 18 0 0 -2 12 19 0 0 -2 12 20 0 0 -2 12 21 0 0 -2 12 22 0 0 -2 12 23 0 0 -2 12 24 0 0 -3 12 1 0 0 -3 12 2 0 0 -3 12 3 0 0 -3 12 4 0 0 -3 12 5 0 0 -3 12 6 0 0 -3 12 7 0 0 -3 12 8 15 64 -3 12 9 88 361 -3 12 10 176 343 -3 12 11 208 183 -3 12 12 243 188 -3 12 13 235 93 -3 12 14 180 0 -3 12 15 128 80 -3 12 16 17 0 -3 12 17 0 0 -3 12 18 0 0 -3 12 19 0 0 -3 12 20 0 0 -3 12 21 0 0 -3 12 22 0 0 -3 12 23 0 0 -3 12 24 0 0 -4 12 1 0 0 -4 12 2 0 0 -4 12 3 0 0 -4 12 4 0 0 -4 12 5 0 0 -4 12 6 0 0 -4 12 7 0 0 -4 12 8 8 0 -4 12 9 19 0 -4 12 10 73 0 -4 12 11 79 0 -4 12 12 81 89 -4 12 13 67 0 -4 12 14 116 0 -4 12 15 183 528 -4 12 16 39 51 -4 12 17 0 0 -4 12 18 0 0 -4 12 19 0 0 -4 12 20 0 0 -4 12 21 0 0 -4 12 22 0 0 -4 12 23 0 0 -4 12 24 0 0 -5 12 1 0 0 -5 12 2 0 0 -5 12 3 0 0 -5 12 4 0 0 -5 12 5 0 0 -5 12 6 0 0 -5 12 7 0 0 -5 12 8 5 0 -5 12 9 32 0 -5 12 10 75 0 -5 12 11 249 353 -5 12 12 146 0 -5 12 13 232 89 -5 12 14 172 171 -5 12 15 114 77 -5 12 16 31 106 -5 12 17 0 0 -5 12 18 0 0 -5 12 19 0 0 -5 12 20 0 0 -5 12 21 0 0 -5 12 22 0 0 -5 12 23 0 0 -5 12 24 0 0 -6 12 1 0 0 -6 12 2 0 0 -6 12 3 0 0 -6 12 4 0 0 -6 12 5 0 0 -6 12 6 0 0 -6 12 7 0 0 -6 12 8 8 9 -6 12 9 74 65 -6 12 10 154 81 -6 12 11 198 174 -6 12 12 258 90 -6 12 13 249 89 -6 12 14 142 85 -6 12 15 113 75 -6 12 16 52 307 -6 12 17 0 0 -6 12 18 0 0 -6 12 19 0 0 -6 12 20 0 0 -6 12 21 0 0 -6 12 22 0 0 -6 12 23 0 0 -6 12 24 0 0 -7 12 1 0 0 -7 12 2 0 0 -7 12 3 0 0 -7 12 4 0 0 -7 12 5 0 0 -7 12 6 0 0 -7 12 7 0 0 -7 12 8 2 21 -7 12 9 104 135 -7 12 10 131 83 -7 12 11 291 265 -7 12 12 345 91 -7 12 13 224 0 -7 12 14 186 0 -7 12 15 95 0 -7 12 16 39 0 -7 12 17 0 0 -7 12 18 0 0 -7 12 19 0 0 -7 12 20 0 0 -7 12 21 0 0 -7 12 22 0 0 -7 12 23 0 0 -7 12 24 0 0 -8 12 1 0 0 -8 12 2 0 0 -8 12 3 0 0 -8 12 4 0 0 -8 12 5 0 0 -8 12 6 0 0 -8 12 7 0 0 -8 12 8 2 0 -8 12 9 74 0 -8 12 10 75 0 -8 12 11 114 0 -8 12 12 131 0 -8 12 13 129 0 -8 12 14 45 0 -8 12 15 51 0 -8 12 16 8 0 -8 12 17 0 0 -8 12 18 0 0 -8 12 19 0 0 -8 12 20 0 0 -8 12 21 0 0 -8 12 22 0 0 -8 12 23 0 0 -8 12 24 0 0 -9 12 1 0 0 -9 12 2 0 0 -9 12 3 0 0 -9 12 4 0 0 -9 12 5 0 0 -9 12 6 0 0 -9 12 7 0 0 -9 12 8 5 0 -9 12 9 14 0 -9 12 10 123 0 -9 12 11 131 0 -9 12 12 118 0 -9 12 13 172 0 -9 12 14 134 0 -9 12 15 89 0 -9 12 16 24 0 -9 12 17 0 0 -9 12 18 0 0 -9 12 19 0 0 -9 12 20 0 0 -9 12 21 0 0 -9 12 22 0 0 -9 12 23 0 0 -9 12 24 0 0 -10 12 1 0 0 -10 12 2 0 0 -10 12 3 0 0 -10 12 4 0 0 -10 12 5 0 0 -10 12 6 0 0 -10 12 7 0 0 -10 12 8 11 72 -10 12 9 135 692 -10 12 10 269 847 -10 12 11 366 915 -10 12 12 424 846 -10 12 13 386 936 -10 12 14 335 900 -10 12 15 221 809 -10 12 16 73 515 -10 12 17 0 0 -10 12 18 0 0 -10 12 19 0 0 -10 12 20 0 0 -10 12 21 0 0 -10 12 22 0 0 -10 12 23 0 0 -10 12 24 0 0 -11 12 1 0 0 -11 12 2 0 0 -11 12 3 0 0 -11 12 4 0 0 -11 12 5 0 0 -11 12 6 0 0 -11 12 7 0 0 -11 12 8 0 0 -11 12 9 103 138 -11 12 10 234 251 -11 12 11 346 451 -11 12 12 267 184 -11 12 13 191 91 -11 12 14 179 87 -11 12 15 141 78 -11 12 16 47 53 -11 12 17 0 0 -11 12 18 0 0 -11 12 19 0 0 -11 12 20 0 0 -11 12 21 0 0 -11 12 22 0 0 -11 12 23 0 0 -11 12 24 0 0 -12 12 1 0 0 -12 12 2 0 0 -12 12 3 0 0 -12 12 4 0 0 -12 12 5 0 0 -12 12 6 0 0 -12 12 7 0 0 -12 12 8 0 0 -12 12 9 22 0 -12 12 10 87 82 -12 12 11 114 0 -12 12 12 104 0 -12 12 13 56 0 -12 12 14 66 0 -12 12 15 82 0 -12 12 16 33 0 -12 12 17 0 0 -12 12 18 0 0 -12 12 19 0 0 -12 12 20 0 0 -12 12 21 0 0 -12 12 22 0 0 -12 12 23 0 0 -12 12 24 0 0 -13 12 1 0 0 -13 12 2 0 0 -13 12 3 0 0 -13 12 4 0 0 -13 12 5 0 0 -13 12 6 0 0 -13 12 7 0 0 -13 12 8 0 0 -13 12 9 36 0 -13 12 10 116 0 -13 12 11 76 0 -13 12 12 112 0 -13 12 13 109 0 -13 12 14 39 0 -13 12 15 49 0 -13 12 16 23 0 -13 12 17 0 0 -13 12 18 0 0 -13 12 19 0 0 -13 12 20 0 0 -13 12 21 0 0 -13 12 22 0 0 -13 12 23 0 0 -13 12 24 0 0 -14 12 1 0 0 -14 12 2 0 0 -14 12 3 0 0 -14 12 4 0 0 -14 12 5 0 0 -14 12 6 0 0 -14 12 7 0 0 -14 12 8 0 0 -14 12 9 26 0 -14 12 10 61 0 -14 12 11 143 178 -14 12 12 184 183 -14 12 13 175 274 -14 12 14 208 175 -14 12 15 154 548 -14 12 16 59 489 -14 12 17 0 0 -14 12 18 0 0 -14 12 19 0 0 -14 12 20 0 0 -14 12 21 0 0 -14 12 22 0 0 -14 12 23 0 0 -14 12 24 0 0 -15 12 1 0 0 -15 12 2 0 0 -15 12 3 0 0 -15 12 4 0 0 -15 12 5 0 0 -15 12 6 0 0 -15 12 7 0 0 -15 12 8 0 0 -15 12 9 53 0 -15 12 10 116 0 -15 12 11 168 0 -15 12 12 160 0 -15 12 13 73 0 -15 12 14 44 0 -15 12 15 71 0 -15 12 16 31 0 -15 12 17 0 0 -15 12 18 0 0 -15 12 19 0 0 -15 12 20 0 0 -15 12 21 0 0 -15 12 22 0 0 -15 12 23 0 0 -15 12 24 0 0 -16 12 1 0 0 -16 12 2 0 0 -16 12 3 0 0 -16 12 4 0 0 -16 12 5 0 0 -16 12 6 0 0 -16 12 7 0 0 -16 12 8 0 0 -16 12 9 110 499 -16 12 10 236 713 -16 12 11 339 862 -16 12 12 371 888 -16 12 13 375 884 -16 12 14 291 704 -16 12 15 173 595 -16 12 16 70 459 -16 12 17 0 0 -16 12 18 0 0 -16 12 19 0 0 -16 12 20 0 0 -16 12 21 0 0 -16 12 22 0 0 -16 12 23 0 0 -16 12 24 0 0 -17 12 1 0 0 -17 12 2 0 0 -17 12 3 0 0 -17 12 4 0 0 -17 12 5 0 0 -17 12 6 0 0 -17 12 7 0 0 -17 12 8 0 0 -17 12 9 9 0 -17 12 10 63 0 -17 12 11 90 0 -17 12 12 85 0 -17 12 13 94 0 -17 12 14 88 0 -17 12 15 87 0 -17 12 16 31 0 -17 12 17 0 0 -17 12 18 0 0 -17 12 19 0 0 -17 12 20 0 0 -17 12 21 0 0 -17 12 22 0 0 -17 12 23 0 0 -17 12 24 0 0 -18 12 1 0 0 -18 12 2 0 0 -18 12 3 0 0 -18 12 4 0 0 -18 12 5 0 0 -18 12 6 0 0 -18 12 7 0 0 -18 12 8 0 0 -18 12 9 119 670 -18 12 10 254 839 -18 12 11 352 909 -18 12 12 399 935 -18 12 13 345 743 -18 12 14 289 803 -18 12 15 195 562 -18 12 16 54 398 -18 12 17 0 0 -18 12 18 0 0 -18 12 19 0 0 -18 12 20 0 0 -18 12 21 0 0 -18 12 22 0 0 -18 12 23 0 0 -18 12 24 0 0 -19 12 1 0 0 -19 12 2 0 0 -19 12 3 0 0 -19 12 4 0 0 -19 12 5 0 0 -19 12 6 0 0 -19 12 7 0 0 -19 12 8 0 0 -19 12 9 117 666 -19 12 10 253 836 -19 12 11 351 906 -19 12 12 398 931 -19 12 13 389 924 -19 12 14 327 888 -19 12 15 218 799 -19 12 16 76 561 -19 12 17 0 0 -19 12 18 0 0 -19 12 19 0 0 -19 12 20 0 0 -19 12 21 0 0 -19 12 22 0 0 -19 12 23 0 0 -19 12 24 0 0 -20 12 1 0 0 -20 12 2 0 0 -20 12 3 0 0 -20 12 4 0 0 -20 12 5 0 0 -20 12 6 0 0 -20 12 7 0 0 -20 12 8 0 0 -20 12 9 131 468 -20 12 10 203 167 -20 12 11 357 453 -20 12 12 367 278 -20 12 13 329 185 -20 12 14 253 89 -20 12 15 160 79 -20 12 16 56 55 -20 12 17 0 0 -20 12 18 0 0 -20 12 19 0 0 -20 12 20 0 0 -20 12 21 0 0 -20 12 22 0 0 -20 12 23 0 0 -20 12 24 0 0 -21 12 1 0 0 -21 12 2 0 0 -21 12 3 0 0 -21 12 4 0 0 -21 12 5 0 0 -21 12 6 0 0 -21 12 7 0 0 -21 12 8 0 0 -21 12 9 26 0 -21 12 10 94 0 -21 12 11 56 0 -21 12 12 127 0 -21 12 13 135 0 -21 12 14 122 0 -21 12 15 84 0 -21 12 16 11 0 -21 12 17 0 0 -21 12 18 0 0 -21 12 19 0 0 -21 12 20 0 0 -21 12 21 0 0 -21 12 22 0 0 -21 12 23 0 0 -21 12 24 0 0 -22 12 1 0 0 -22 12 2 0 0 -22 12 3 0 0 -22 12 4 0 0 -22 12 5 0 0 -22 12 6 0 0 -22 12 7 0 0 -22 12 8 0 0 -22 12 9 111 643 -22 12 10 233 745 -22 12 11 375 716 -22 12 12 480 825 -22 12 13 475 637 -22 12 14 378 701 -22 12 15 180 551 -22 12 16 59 167 -22 12 17 0 0 -22 12 18 0 0 -22 12 19 0 0 -22 12 20 0 0 -22 12 21 0 0 -22 12 22 0 0 -22 12 23 0 0 -22 12 24 0 0 -23 12 1 0 0 -23 12 2 0 0 -23 12 3 0 0 -23 12 4 0 0 -23 12 5 0 0 -23 12 6 0 0 -23 12 7 0 0 -23 12 8 0 0 -23 12 9 68 128 -23 12 10 212 561 -23 12 11 337 873 -23 12 12 384 897 -23 12 13 337 803 -23 12 14 319 858 -23 12 15 193 539 -23 12 16 71 424 -23 12 17 0 0 -23 12 18 0 0 -23 12 19 0 0 -23 12 20 0 0 -23 12 21 0 0 -23 12 22 0 0 -23 12 23 0 0 -23 12 24 0 0 -24 12 1 0 0 -24 12 2 0 0 -24 12 3 0 0 -24 12 4 0 0 -24 12 5 0 0 -24 12 6 0 0 -24 12 7 0 0 -24 12 8 0 0 -24 12 9 41 62 -24 12 10 90 80 -24 12 11 126 88 -24 12 12 143 90 -24 12 13 108 0 -24 12 14 206 259 -24 12 15 175 77 -24 12 16 49 55 -24 12 17 0 0 -24 12 18 0 0 -24 12 19 0 0 -24 12 20 0 0 -24 12 21 0 0 -24 12 22 0 0 -24 12 23 0 0 -24 12 24 0 0 -25 12 1 0 0 -25 12 2 0 0 -25 12 3 0 0 -25 12 4 0 0 -25 12 5 0 0 -25 12 6 0 0 -25 12 7 0 0 -25 12 8 0 0 -25 12 9 30 0 -25 12 10 67 0 -25 12 11 91 0 -25 12 12 103 0 -25 12 13 108 0 -25 12 14 67 0 -25 12 15 99 0 -25 12 16 18 0 -25 12 17 0 0 -25 12 18 0 0 -25 12 19 0 0 -25 12 20 0 0 -25 12 21 0 0 -25 12 22 0 0 -25 12 23 0 0 -25 12 24 0 0 -26 12 1 0 0 -26 12 2 0 0 -26 12 3 0 0 -26 12 4 0 0 -26 12 5 0 0 -26 12 6 0 0 -26 12 7 0 0 -26 12 8 0 0 -26 12 9 36 0 -26 12 10 61 0 -26 12 11 150 0 -26 12 12 163 90 -26 12 13 161 0 -26 12 14 135 86 -26 12 15 87 156 -26 12 16 51 334 -26 12 17 0 0 -26 12 18 0 0 -26 12 19 0 0 -26 12 20 0 0 -26 12 21 0 0 -26 12 22 0 0 -26 12 23 0 0 -26 12 24 0 0 -27 12 1 0 0 -27 12 2 0 0 -27 12 3 0 0 -27 12 4 0 0 -27 12 5 0 0 -27 12 6 0 0 -27 12 7 0 0 -27 12 8 0 0 -27 12 9 88 314 -27 12 10 97 0 -27 12 11 169 89 -27 12 12 113 0 -27 12 13 256 92 -27 12 14 159 353 -27 12 15 133 79 -27 12 16 27 59 -27 12 17 0 0 -27 12 18 0 0 -27 12 19 0 0 -27 12 20 0 0 -27 12 21 0 0 -27 12 22 0 0 -27 12 23 0 0 -27 12 24 0 0 -28 12 1 0 0 -28 12 2 0 0 -28 12 3 0 0 -28 12 4 0 0 -28 12 5 0 0 -28 12 6 0 0 -28 12 7 0 0 -28 12 8 0 0 -28 12 9 89 512 -28 12 10 198 580 -28 12 11 173 270 -28 12 12 271 278 -28 12 13 284 369 -28 12 14 177 267 -28 12 15 159 241 -28 12 16 39 58 -28 12 17 0 0 -28 12 18 0 0 -28 12 19 0 0 -28 12 20 0 0 -28 12 21 0 0 -28 12 22 0 0 -28 12 23 0 0 -28 12 24 0 0 -29 12 1 0 0 -29 12 2 0 0 -29 12 3 0 0 -29 12 4 0 0 -29 12 5 0 0 -29 12 6 0 0 -29 12 7 0 0 -29 12 8 0 0 -29 12 9 16 63 -29 12 10 153 164 -29 12 11 309 446 -29 12 12 374 830 -29 12 13 399 827 -29 12 14 339 796 -29 12 15 239 721 -29 12 16 100 528 -29 12 17 0 0 -29 12 18 0 0 -29 12 19 0 0 -29 12 20 0 0 -29 12 21 0 0 -29 12 22 0 0 -29 12 23 0 0 -29 12 24 0 0 -30 12 1 0 0 -30 12 2 0 0 -30 12 3 0 0 -30 12 4 0 0 -30 12 5 0 0 -30 12 6 0 0 -30 12 7 0 0 -30 12 8 0 0 -30 12 9 65 254 -30 12 10 178 410 -30 12 11 183 177 -30 12 12 254 0 -30 12 13 261 0 -30 12 14 181 88 -30 12 15 66 0 -30 12 16 51 58 -30 12 17 0 0 -30 12 18 0 0 -30 12 19 0 0 -30 12 20 0 0 -30 12 21 0 0 -30 12 22 0 0 -30 12 23 0 0 -30 12 24 0 0 -31 12 1 0 0 -31 12 2 0 0 -31 12 3 0 0 -31 12 4 0 0 -31 12 5 0 0 -31 12 6 0 0 -31 12 7 0 0 -31 12 8 0 0 -31 12 9 52 0 -31 12 10 111 0 -31 12 11 63 0 -31 12 12 189 0 -31 12 13 187 0 -31 12 14 121 0 -31 12 15 109 0 -31 12 16 49 0 -31 12 17 0 0 -31 12 18 0 0 -31 12 19 0 0 -31 12 20 0 0 -31 12 21 0 0 -31 12 22 0 0 -31 12 23 0 0 -31 12 24 0 0 From 5bb032500cd5dbfc25f25e1f9fdface4f2751b43 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 29 Nov 2023 13:55:38 -0500 Subject: [PATCH 16/25] Added gitignore back --- tests/tests_outputs/.gitignore | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 tests/tests_outputs/.gitignore diff --git a/tests/tests_outputs/.gitignore b/tests/tests_outputs/.gitignore new file mode 100644 index 0000000..e0a497a --- /dev/null +++ b/tests/tests_outputs/.gitignore @@ -0,0 +1,3 @@ +# Except this file +* +!.gitignore \ No newline at end of file From f49e2f3afa3ed45ab855d590ec8284f08a1ddb51 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 6 Dec 2023 11:47:27 -0500 Subject: [PATCH 17/25] remove test_db_retrieve --- cerc_persistence/configuration.py | 2 +- cerc_persistence/db_setup.py | 2 +- tests/test_db_factory.py | 126 ++++++++++++--------------- tests/test_db_retrieve.py | 137 ------------------------------ 4 files changed, 58 insertions(+), 209 deletions(-) delete mode 100644 tests/test_db_retrieve.py diff --git a/cerc_persistence/configuration.py b/cerc_persistence/configuration.py index 9ca37e6..a71ca59 100644 --- a/cerc_persistence/configuration.py +++ b/cerc_persistence/configuration.py @@ -16,7 +16,7 @@ Models = declarative_base() class Configuration: """ - Configuration class to hold common cerc_persistence configuration + Configuration class to hold common persistence configuration """ def __init__(self, db_name: str, dotenv_path: str, app_env='TEST'): diff --git a/cerc_persistence/db_setup.py b/cerc_persistence/db_setup.py index 6909fd2..3b76fe1 100644 --- a/cerc_persistence/db_setup.py +++ b/cerc_persistence/db_setup.py @@ -48,7 +48,7 @@ class DBSetup: @staticmethod def _create_admin_app(application_repo, application_uuid): name = 'AdminTool' - description = 'Admin tool to control city cerc_persistence and to test the API v1.4' + description = 'Admin tool to control city persistence and to test the API v1.4' logging.info('Creating default admin tool application...') application = application_repo.insert(name, description, application_uuid) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index c9141dd..b62bf34 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -17,6 +17,7 @@ from unittest import TestCase import sqlalchemy.exc from sqlalchemy import create_engine from sqlalchemy.exc import ProgrammingError +from sqlalchemy.ext.declarative import declarative_base import hub.helpers.constants as cte from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory @@ -45,17 +46,19 @@ class Control: :return: None """ self._skip_test = False - # Create test database + + # Create test database. dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~'))).resolve() if not dotenv_path.exists(): self._skip_test = True self._skip_reason = f'.env file missing at {dotenv_path}' return dotenv_path = str(dotenv_path) + + # Check if database exists. repository = Repository(db_name='test_db', app_env='TEST', dotenv_path=dotenv_path) - engine = create_engine(repository.configuration.connection_string) try: - # delete test database if it exists + engine = create_engine(repository.configuration.connection_string) connection = engine.connect() connection.close() except ProgrammingError: @@ -65,12 +68,14 @@ class Control: self._skip_reason = f'{operational_error}' return + # Create tables if they don't exist. Application.__table__.create(bind=repository.engine, checkfirst=True) User.__table__.create(bind=repository.engine, checkfirst=True) City.__table__.create(bind=repository.engine, checkfirst=True) CityObject.__table__.create(bind=repository.engine, checkfirst=True) SimulationResults.__table__.create(bind=repository.engine, checkfirst=True) + # Generate files for the persistence tests. city_file = (Path(__file__).parent / 'tests_data/test.geojson').resolve() output_path = (Path(__file__).parent / 'tests_outputs').resolve() self._city = GeometryFactory('geojson', @@ -98,15 +103,13 @@ class Control: subprocess.run([self.insel, str(insel_file)], stdout=subprocess.DEVNULL) ResultFactory('insel_monthly_energy_balance', self._city, output_path).enrich() + # Create test application and user. self._database = DBControl( db_name=repository.configuration.db_name, app_env='TEST', dotenv_path=dotenv_path) self._application_uuid = 'b9e0ce80-1218-410c-8a64-9d9b7026aad8' - self._application_id = 1 - self._user_id = 1 - self._application_id = self._database.persist_application( 'test', 'test', @@ -186,6 +189,7 @@ TestDBFactory @unittest.skipIf(control.skip_test, control.skip_reason) def test_get_update_city(self): + # Create and update city name city_id = control.database.persist_city(control.city, control.pickle_path, control.city.name, @@ -193,101 +197,83 @@ TestDBFactory control.user_id) control.city.name = "Ottawa" control.database.update_city(city_id, control.city) + + # Check the city was updated cities = control.database.cities_by_user_and_application( control.user_id, - control.application_id) + control.application_id) # TODO: woudln't this be better wih a search by city id? + for updated_city in cities: if updated_city.id == city_id: self.assertEqual(updated_city.name, control.city.name) break + + # Delete extra city created control.database.delete_city(city_id) @unittest.skipIf(control.skip_test, control.skip_reason) @unittest.skipIf(control.skip_insel_test, 'insel is not installed') def test_save_results(self): + # Create city city_id = control.database.persist_city(control.city, control.pickle_path, 'current status', control.application_id, control.user_id) + + # Create city objects city_objects_id = [] for building in control.city.buildings: - _building = control.database.building_info(building.name, city_id) + building_info = control.database.building_info(building.name, city_id) if cte.MONTH not in building.cooling_demand: print(f'building {building.name} not calculated') continue - monthly_cooling_peak_load = building.cooling_peak_load[cte.MONTH] - yearly_cooling_peak_load = building.cooling_peak_load[cte.YEAR] - monthly_heating_peak_load = building.heating_peak_load[cte.MONTH] - yearly_heating_peak_load = building.heating_peak_load[cte.YEAR] - monthly_lighting_peak_load = building.lighting_peak_load[cte.MONTH] - yearly_lighting_peak_load = building.lighting_peak_load[cte.YEAR] - monthly_appliances_peak_load = building.appliances_peak_load[cte.MONTH] - yearly_appliances_peak_load = building.appliances_peak_load[cte.YEAR] - monthly_cooling_demand = building.cooling_demand[cte.MONTH] - yearly_cooling_demand = building.cooling_demand[cte.YEAR] - monthly_heating_demand = building.heating_demand[cte.MONTH] - yearly_heating_demand = building.heating_demand[cte.YEAR] - monthly_lighting_electrical_demand = building.lighting_electrical_demand[cte.MONTH] - yearly_lighting_electrical_demand = building.lighting_electrical_demand[cte.YEAR] - monthly_appliances_electrical_demand = building.appliances_electrical_demand[cte.MONTH] - yearly_appliances_electrical_demand = building.appliances_electrical_demand[cte.YEAR] - monthly_domestic_hot_water_heat_demand = building.domestic_hot_water_heat_demand[cte.MONTH] - yearly_domestic_hot_water_heat_demand = building.domestic_hot_water_heat_demand[cte.YEAR] - monthly_heating_consumption = building.heating_consumption[cte.MONTH] - yearly_heating_consumption = building.heating_consumption[cte.YEAR] - monthly_cooling_consumption = building.cooling_consumption[cte.MONTH] - yearly_cooling_consumption = building.cooling_consumption[cte.YEAR] - monthly_domestic_hot_water_consumption = building.domestic_hot_water_consumption[cte.MONTH] - yearly_domestic_hot_water_consumption = building._domestic_hot_water_consumption[cte.YEAR] - monthly_distribution_systems_electrical_consumption = building.distribution_systems_electrical_consumption[ - cte.MONTH] - yearly_distribution_systems_electrical_consumption = building.distribution_systems_electrical_consumption[ - cte.YEAR] - monthly_on_site_electrical_production = [x * cte.WATTS_HOUR_TO_JULES - for x in building.onsite_electrical_production[cte.MONTH]] - yearly_on_site_electrical_production = [x * cte.WATTS_HOUR_TO_JULES - for x in building.onsite_electrical_production[cte.YEAR]] + + demands = ['cooling_demand', 'heating_demand', 'lighting_electrical_demand', + 'appliances_electrical_demand', 'domestic_hot_water_heat_demand', + 'heating_consumption', 'cooling_consumption', + 'domestic_hot_water_consumption', 'distribution_systems_electrical_consumption'] + results = {cte.INSEL_MEB: { - 'monthly_cooling_peak_load': monthly_cooling_peak_load, - 'yearly_cooling_peak_load': yearly_cooling_peak_load, - 'monthly_heating_peak_load': monthly_heating_peak_load, - 'yearly_heating_peak_load': yearly_heating_peak_load, - 'monthly_lighting_peak_load': monthly_lighting_peak_load, - 'yearly_lighting_peak_load': yearly_lighting_peak_load, - 'monthly_appliances_peak_load': monthly_appliances_peak_load, - 'yearly_appliances_peak_load': yearly_appliances_peak_load, - 'monthly_cooling_demand': monthly_cooling_demand, - 'yearly_cooling_demand': yearly_cooling_demand, - 'monthly_heating_demand': monthly_heating_demand, - 'yearly_heating_demand': yearly_heating_demand, - 'monthly_lighting_electrical_demand': monthly_lighting_electrical_demand, - 'yearly_lighting_electrical_demand': yearly_lighting_electrical_demand, - 'monthly_appliances_electrical_demand': monthly_appliances_electrical_demand, - 'yearly_appliances_electrical_demand': yearly_appliances_electrical_demand, - 'monthly_domestic_hot_water_heat_demand': monthly_domestic_hot_water_heat_demand, - 'yearly_domestic_hot_water_heat_demand': yearly_domestic_hot_water_heat_demand, - 'monthly_heating_consumption': monthly_heating_consumption, - 'yearly_heating_consumption': yearly_heating_consumption, - 'monthly_cooling_consumption': monthly_cooling_consumption, - 'yearly_cooling_consumption': yearly_cooling_consumption, - 'monthly_domestic_hot_water_consumption': monthly_domestic_hot_water_consumption, - 'yearly_domestic_hot_water_consumption': yearly_domestic_hot_water_consumption, - 'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption, - 'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption, - 'monthly_on_site_electrical_production': monthly_on_site_electrical_production, - 'yearly_on_site_electrical_production': yearly_on_site_electrical_production + f'{period}_{demand}': getattr(building, demand)[cte.MONTH if 'monthly' in period else cte.YEAR] + for demand in demands for period in ['monthly', 'yearly'] }} - db_building_id = _building.id + results[cte.INSEL_MEB].update({ + 'monthly_on_site_electrical_production': [x * cte.WATTS_HOUR_TO_JULES for x in + building.onsite_electrical_production[cte.MONTH]], + 'yearly_on_site_electrical_production': [x * cte.WATTS_HOUR_TO_JULES for x in + building.onsite_electrical_production[cte.YEAR]] + }) + + db_building_id = building_info.id city_objects_id.append(db_building_id) control.database.add_simulation_results( cte.INSEL_MEB, results, city_object_id=db_building_id) + + # Verify 17 city objects have been created self.assertEqual(17, len(city_objects_id), 'wrong number of results') - self.assertIsNotNone(city_objects_id[0], 'city_object_id is None') + + # Verify results have been saved + # TODO: How do I get city object ids? + request_values = { + "scenarios": [ + { + "insel meb": ["01002777", "01002773", "01036804"] + }, + { + "skin retrofit": ["01002777", "01002773", "01036804"] + }, + ] + } + results = control.database.results(control.user_id, control.application_id, request_values) + + print(results) + for _id in city_objects_id: control.database.delete_results_by_name('insel meb', city_object_id=_id) + control.database.delete_city(city_id) @classmethod diff --git a/tests/test_db_retrieve.py b/tests/test_db_retrieve.py deleted file mode 100644 index fd917c7..0000000 --- a/tests/test_db_retrieve.py +++ /dev/null @@ -1,137 +0,0 @@ -""" -Test db factory -SPDX - License - Identifier: LGPL - 3.0 - or -later -Copyright © 2022 Concordia CERC group -Project Coder Peter Yefi peteryefi@gmail.com -""" -import distutils.spawn -import logging -import os -import unittest -from pathlib import Path -from unittest import TestCase - -import sqlalchemy.exc -from sqlalchemy import create_engine -from sqlalchemy.exc import ProgrammingError - -from cerc_persistence.db_control import DBControl -from cerc_persistence.repository import Repository - - -class Control: - _skip_test = False - _skip_reason = 'PostgreSQL not properly installed in host machine' - - def __init__(self): - """ - Test - setup - :return: None - """ - self._skip_test = False - # Create test database - dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~'))).resolve() - if not dotenv_path.exists(): - self._skip_test = True - self._skip_reason = f'.env file missing at {dotenv_path}' - return - dotenv_path = str(dotenv_path) - repository = Repository(db_name='montreal_retrofit_test', app_env='TEST', dotenv_path=dotenv_path) - engine = create_engine(repository.configuration.connection_string) - try: - # delete test database if it exists - connection = engine.connect() - connection.close() - except ProgrammingError: - logging.info('Database does not exist. Nothing to delete') - except sqlalchemy.exc.OperationalError as operational_error: - self._skip_test = True - self._skip_reason = f'{operational_error}' - return - - self._database = DBControl( - db_name=repository.configuration.db_name, - app_env='TEST', - dotenv_path=dotenv_path) - - self._application_uuid = '60b7fc1b-f389-4254-9ffd-22a4cf32c7a3' - self._application_id = 1 - self._user_id = 1 - self._pickle_path = (Path(__file__).parent / 'tests_data/pickle_path.bz2').resolve() - - @property - def database(self): - return self._database - - @property - def application_uuid(self): - return self._application_uuid - - @property - def application_id(self): - return self._application_id - - @property - def user_id(self): - return self._user_id - - @property - def skip_test(self): - return self._skip_test - - @property - def insel(self): - return distutils.spawn.find_executable('insel') - - @property - def sra(self): - return distutils.spawn.find_executable('sra') - - @property - def skip_insel_test(self): - return self.insel is None - - @property - def skip_reason(self): - return self._skip_reason - - @property - def message(self): - return self._skip_reason - - @property - def pickle_path(self): - return self._pickle_path - - -control = Control() - - -class TestDBFactory(TestCase): - """ -TestDBFactory -""" - - @unittest.skipIf(control.skip_test, control.skip_reason) - def test_retrieve_results(self): - request_values = { - "scenarios": [ - { - "current status": ["01002777", "01002773", "01036804"] - }, - { - "skin retrofit": ["01002777", "01002773", "01036804"] - }, - { - "system retrofit and pv": ["01002777", "01002773", "01036804"] - }, - { - "skin and system retrofit with pv": ["01002777", "01002773", "01036804"] - } - - - ] - } - results = control.database.results(control.user_id, control.application_id, request_values) - print(results) From 88c712794cd51b8623c661f87407e6a14f3fd387 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 6 Dec 2023 15:27:39 -0500 Subject: [PATCH 18/25] Update test_db_factory to verify the results were saved --- tests/test_db_factory.py | 94 ++++++++++++++++++++++++++++++---------- 1 file changed, 72 insertions(+), 22 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index b62bf34..968d942 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -17,7 +17,6 @@ from unittest import TestCase import sqlalchemy.exc from sqlalchemy import create_engine from sqlalchemy.exc import ProgrammingError -from sqlalchemy.ext.declarative import declarative_base import hub.helpers.constants as cte from hub.exports.energy_building_exports_factory import EnergyBuildingsExportsFactory @@ -223,57 +222,108 @@ TestDBFactory # Create city objects city_objects_id = [] + expected_results = {} + for building in control.city.buildings: building_info = control.database.building_info(building.name, city_id) + if cte.MONTH not in building.cooling_demand: print(f'building {building.name} not calculated') continue - demands = ['cooling_demand', 'heating_demand', 'lighting_electrical_demand', - 'appliances_electrical_demand', 'domestic_hot_water_heat_demand', - 'heating_consumption', 'cooling_consumption', - 'domestic_hot_water_consumption', 'distribution_systems_electrical_consumption'] + monthly_cooling_peak_load = building.cooling_peak_load[cte.MONTH] + yearly_cooling_peak_load = building.cooling_peak_load[cte.YEAR] + monthly_heating_peak_load = building.heating_peak_load[cte.MONTH] + yearly_heating_peak_load = building.heating_peak_load[cte.YEAR] + monthly_lighting_peak_load = building.lighting_peak_load[cte.MONTH] + yearly_lighting_peak_load = building.lighting_peak_load[cte.YEAR] + monthly_appliances_peak_load = building.appliances_peak_load[cte.MONTH] + yearly_appliances_peak_load = building.appliances_peak_load[cte.YEAR] + monthly_cooling_demand = building.cooling_demand[cte.MONTH] + yearly_cooling_demand = building.cooling_demand[cte.YEAR] + monthly_heating_demand = building.heating_demand[cte.MONTH] + yearly_heating_demand = building.heating_demand[cte.YEAR] + monthly_lighting_electrical_demand = building.lighting_electrical_demand[cte.MONTH] + yearly_lighting_electrical_demand = building.lighting_electrical_demand[cte.YEAR] + monthly_appliances_electrical_demand = building.appliances_electrical_demand[cte.MONTH] + yearly_appliances_electrical_demand = building.appliances_electrical_demand[cte.YEAR] + monthly_domestic_hot_water_heat_demand = building.domestic_hot_water_heat_demand[cte.MONTH] + yearly_domestic_hot_water_heat_demand = building.domestic_hot_water_heat_demand[cte.YEAR] + monthly_heating_consumption = building.heating_consumption[cte.MONTH] + yearly_heating_consumption = building.heating_consumption[cte.YEAR] + monthly_cooling_consumption = building.cooling_consumption[cte.MONTH] + yearly_cooling_consumption = building.cooling_consumption[cte.YEAR] + monthly_domestic_hot_water_consumption = building.domestic_hot_water_consumption[cte.MONTH] + yearly_domestic_hot_water_consumption = building._domestic_hot_water_consumption[cte.YEAR] + monthly_distribution_systems_electrical_consumption = building.distribution_systems_electrical_consumption[ + cte.MONTH] + yearly_distribution_systems_electrical_consumption = building.distribution_systems_electrical_consumption[ + cte.YEAR] + monthly_on_site_electrical_production = [x * cte.WATTS_HOUR_TO_JULES + for x in building.onsite_electrical_production[cte.MONTH]] + yearly_on_site_electrical_production = [x * cte.WATTS_HOUR_TO_JULES + for x in building.onsite_electrical_production[cte.YEAR]] - results = {cte.INSEL_MEB: { - f'{period}_{demand}': getattr(building, demand)[cte.MONTH if 'monthly' in period else cte.YEAR] - for demand in demands for period in ['monthly', 'yearly'] + building_expected_results = {cte.INSEL_MEB: { + 'monthly_cooling_peak_load': monthly_cooling_peak_load, + 'yearly_cooling_peak_load': yearly_cooling_peak_load, + 'monthly_heating_peak_load': monthly_heating_peak_load, + 'yearly_heating_peak_load': yearly_heating_peak_load, + 'monthly_lighting_peak_load': monthly_lighting_peak_load, + 'yearly_lighting_peak_load': yearly_lighting_peak_load, + 'monthly_appliances_peak_load': monthly_appliances_peak_load, + 'yearly_appliances_peak_load': yearly_appliances_peak_load, + 'monthly_cooling_demand': monthly_cooling_demand, + 'yearly_cooling_demand': yearly_cooling_demand, + 'monthly_heating_demand': monthly_heating_demand, + 'yearly_heating_demand': yearly_heating_demand, + 'monthly_lighting_electrical_demand': monthly_lighting_electrical_demand, + 'yearly_lighting_electrical_demand': yearly_lighting_electrical_demand, + 'monthly_appliances_electrical_demand': monthly_appliances_electrical_demand, + 'yearly_appliances_electrical_demand': yearly_appliances_electrical_demand, + 'monthly_domestic_hot_water_heat_demand': monthly_domestic_hot_water_heat_demand, + 'yearly_domestic_hot_water_heat_demand': yearly_domestic_hot_water_heat_demand, + 'monthly_heating_consumption': monthly_heating_consumption, + 'yearly_heating_consumption': yearly_heating_consumption, + 'monthly_cooling_consumption': monthly_cooling_consumption, + 'yearly_cooling_consumption': yearly_cooling_consumption, + 'monthly_domestic_hot_water_consumption': monthly_domestic_hot_water_consumption, + 'yearly_domestic_hot_water_consumption': yearly_domestic_hot_water_consumption, + 'monthly_distribution_systems_electrical_consumption': monthly_distribution_systems_electrical_consumption, + 'yearly_distribution_systems_electrical_consumption': yearly_distribution_systems_electrical_consumption, + 'monthly_on_site_electrical_production': monthly_on_site_electrical_production, + 'yearly_on_site_electrical_production': yearly_on_site_electrical_production }} - results[cte.INSEL_MEB].update({ - 'monthly_on_site_electrical_production': [x * cte.WATTS_HOUR_TO_JULES for x in - building.onsite_electrical_production[cte.MONTH]], - 'yearly_on_site_electrical_production': [x * cte.WATTS_HOUR_TO_JULES for x in - building.onsite_electrical_production[cte.YEAR]] - }) + expected_results[building.name] = building_expected_results[cte.INSEL_MEB] db_building_id = building_info.id city_objects_id.append(db_building_id) control.database.add_simulation_results( cte.INSEL_MEB, - results, city_object_id=db_building_id) + building_expected_results, + city_object_id=db_building_id) # Verify 17 city objects have been created self.assertEqual(17, len(city_objects_id), 'wrong number of results') # Verify results have been saved + scenario_name = "current status" # TODO: How do I get city object ids? request_values = { "scenarios": [ { - "insel meb": ["01002777", "01002773", "01036804"] - }, - { - "skin retrofit": ["01002777", "01002773", "01036804"] + scenario_name: list(expected_results.keys()) }, ] } results = control.database.results(control.user_id, control.application_id, request_values) - print(results) + for result in results[scenario_name]: + self.assertEqual(expected_results[result['building']], result[cte.INSEL_MEB]) for _id in city_objects_id: - control.database.delete_results_by_name('insel meb', city_object_id=_id) - + control.database.delete_results_by_name(cte.INSEL_MEB, city_object_id=_id) control.database.delete_city(city_id) @classmethod From cdb5b06421530a22f32162784e7eaeb0b6bb621a Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 6 Dec 2023 15:28:12 -0500 Subject: [PATCH 19/25] Remove TODO --- tests/test_db_factory.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 968d942..42dc82c 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -309,7 +309,6 @@ TestDBFactory # Verify results have been saved scenario_name = "current status" - # TODO: How do I get city object ids? request_values = { "scenarios": [ { From a24f9fe7b7ce34995d15ed7d5f160dea38cb6de1 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Wed, 6 Dec 2023 15:31:39 -0500 Subject: [PATCH 20/25] Update assert message --- tests/test_db_factory.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 42dc82c..8d850b3 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -319,7 +319,7 @@ TestDBFactory results = control.database.results(control.user_id, control.application_id, request_values) for result in results[scenario_name]: - self.assertEqual(expected_results[result['building']], result[cte.INSEL_MEB]) + self.assertEqual(expected_results[result['building']], result[cte.INSEL_MEB], f"building '{result['building']}' saved results does not match expected results") for _id in city_objects_id: control.database.delete_results_by_name(cte.INSEL_MEB, city_object_id=_id) From 7f1ba2818414c3137ae8a997974ccdc86525178a Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Sat, 9 Dec 2023 19:31:07 -0500 Subject: [PATCH 21/25] Modify tests and Delete city test --- tests/test_db_factory.py | 47 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 44 insertions(+), 3 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 8d850b3..33c38e0 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -176,7 +176,7 @@ TestDBFactory """ @unittest.skipIf(control.skip_test, control.skip_reason) - def test_save_city(self): + def test_create_city(self): control.city.name = "Montreal" city_id = control.database.persist_city( control.city, @@ -184,23 +184,38 @@ TestDBFactory control.city.name, control.application_id, control.user_id) + + # Check the city was updated + cities = control.database.cities_by_user_and_application( + control.user_id, + control.application_id) + + for updated_city in cities: + if updated_city.id == city_id: + self.assertEqual(updated_city.name, control.city.name) + break + + # Tear down after test control.database.delete_city(city_id) @unittest.skipIf(control.skip_test, control.skip_reason) - def test_get_update_city(self): + def test_update_city(self): # Create and update city name city_id = control.database.persist_city(control.city, control.pickle_path, control.city.name, control.application_id, control.user_id) + + # Update city control.city.name = "Ottawa" + control.city.pickle_path = "new_pickle_path" control.database.update_city(city_id, control.city) # Check the city was updated cities = control.database.cities_by_user_and_application( control.user_id, - control.application_id) # TODO: woudln't this be better wih a search by city id? + control.application_id) for updated_city in cities: if updated_city.id == city_id: @@ -210,6 +225,32 @@ TestDBFactory # Delete extra city created control.database.delete_city(city_id) + @unittest.skipIf(control.skip_test, control.skip_reason) + def test_get_deleted_city(self): + control.city.name = "Montreal" + city_id = control.database.persist_city( + control.city, + control.pickle_path, + control.city.name, + control.application_id, + control.user_id) + + control.database.delete_city(city_id) + + # Check the city was deleted properly + cities = control.database.cities_by_user_and_application( + control.user_id, + control.application_id) + + city_id_found = False + + for updated_city in cities: + if updated_city.id == city_id: + city_id_found = True + break + + self.assertTrue(not city_id_found, "The city_id was not deleted successfully") + @unittest.skipIf(control.skip_test, control.skip_reason) @unittest.skipIf(control.skip_insel_test, 'insel is not installed') def test_save_results(self): From 1a4ccfec01439bce976b9d0a4434e31b3efa411e Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Sat, 9 Dec 2023 19:50:06 -0500 Subject: [PATCH 22/25] Add user manipulation test --- tests/test_db_factory.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 33c38e0..ba1faf9 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -175,6 +175,30 @@ class TestDBFactory(TestCase): TestDBFactory """ + @unittest.skipIf(control.skip_test, control.skip_reason) + def test_create_user(self): + new_user_name = 'user_creation_test' + new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) + + saved_user = control.database.get_by_name_and_application(new_user_name, control.application_id) + self.assertEqual(new_user_id, saved_user.id, "Could not find matching user id") + + control.database.delete_user(new_user_id) + + @unittest.skipIf(control.skip_test, control.skip_reason) + def test_create_and_delete_user(self): + new_user_name = 'user_deletion_test' + new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) + + control.database.get_by_name_and_application(new_user_name, control.application_id) + + control.database.delete_user(new_user_id) + try: + deleted_user = control.database.get_by_name_and_application(new_user_name, control.application_id) + self.assertIsNone(deleted_user, "User was not deleted successfully") + except TypeError: + pass + @unittest.skipIf(control.skip_test, control.skip_reason) def test_create_city(self): control.city.name = "Montreal" From 2188b6249012cbae197790838cc5899885f81183 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Mon, 11 Dec 2023 17:06:15 -0500 Subject: [PATCH 23/25] Only user fetching failing --- cerc_persistence/db_control.py | 17 ++-- cerc_persistence/repositories/city_object.py | 23 ++++- tests/test_db_factory.py | 92 ++++++++++++++++++-- 3 files changed, 114 insertions(+), 18 deletions(-) diff --git a/cerc_persistence/db_control.py b/cerc_persistence/db_control.py index 93362ed..02616fa 100644 --- a/cerc_persistence/db_control.py +++ b/cerc_persistence/db_control.py @@ -4,10 +4,8 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2022 Concordia CERC group Project CoderPeter Yefi peteryefi@gmail.com """ -import json from typing import Dict - from cerc_persistence.repositories.application import Application from cerc_persistence.repositories.city import City from cerc_persistence.repositories.city_object import CityObject @@ -99,17 +97,18 @@ class DBControl: """ return self._city_object.get_by_name_or_alias_in_cities(name, cities) - def buildings_info(self, request_values, city_id) -> [CityObject]: + def buildings_info(self, user_id, application_id, names_or_aliases) -> [CityObject]: """ Retrieve the buildings info from the database - :param request_values: Building names - :param city_id: City ID + :param user_id: User ID + :param application_id: Application ID + :param names_or_aliases: A list of names or alias for the buildings :return: [CityObject] """ - buildings = [] - for name in request_values['names']: - buildings.append(self.building_info(name, city_id)) - return buildings + results = self._city_object.get_by_name_or_alias_for_user_app(user_id, application_id, names_or_aliases) + if results is None: + return [] + return results def results(self, user_id, application_id, request_values, result_names=None) -> Dict: """ diff --git a/cerc_persistence/repositories/city_object.py b/cerc_persistence/repositories/city_object.py index 927ffd1..9e33b8c 100644 --- a/cerc_persistence/repositories/city_object.py +++ b/cerc_persistence/repositories/city_object.py @@ -14,6 +14,7 @@ from sqlalchemy.orm import Session from hub.city_model_structure.building import Building from cerc_persistence.models import CityObject as Model +from cerc_persistence.models import City as CityModel from cerc_persistence.repository import Repository @@ -73,7 +74,7 @@ class CityObject(Repository): with Session(self.engine) as session: session.query(Model).filter(Model.name == building.name, Model.city_id == city_id).update( {'name': building.name, - 'alias': building.alias, + 'aliases': building.aliases, 'object_type': building.type, 'year_of_construction': building.year_of_construction, 'function': building.function, @@ -135,6 +136,26 @@ class CityObject(Repository): logging.error('Error while fetching city object by name and city, empty result %s', err) raise IndexError from err + def get_by_name_or_alias_for_user_app(self, user_id, application_id, names) -> Union[Model, None]: + """ + Fetch city objects belonging to the user and application where the name or alias is in the names list + :param user_id: User ID + :param application_id: Application ID + :param names: a list of building aliases or names + :return [CityObject] or None + """ + with Session(self.engine) as session: + cities = session.execute(select(CityModel).where( + CityModel.user_id == user_id, CityModel.application_id == application_id + )).all() + ids = [c[0].id for c in cities] + buildings = session.execute(select(Model).where( + Model.city_id.in_(ids), Model.name.in_(names) + )) + results = [r[0] for r in buildings] + print(ids, buildings) + return None + def get_by_name_or_alias_and_city(self, name, city_id) -> Union[Model, None]: """ Fetch a city object based on name and city id diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index ba1faf9..c14454d 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -174,25 +174,26 @@ class TestDBFactory(TestCase): """ TestDBFactory """ - @unittest.skipIf(control.skip_test, control.skip_reason) def test_create_user(self): new_user_name = 'user_creation_test' new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) - saved_user = control.database.get_by_name_and_application(new_user_name, control.application_id) - self.assertEqual(new_user_id, saved_user.id, "Could not find matching user id") + try: + saved_user = control.database.get_by_name_and_application(new_user_name, control.application_id) + self.assertEqual(new_user_id, saved_user.id, "Could not find matching user id") + except Exception as err: + control.database.delete_user(new_user_id) + self.assertTrue(False, f'Unexpected {err=}, {type(err)=}') control.database.delete_user(new_user_id) @unittest.skipIf(control.skip_test, control.skip_reason) - def test_create_and_delete_user(self): + def test_delete_user(self): new_user_name = 'user_deletion_test' new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) - - control.database.get_by_name_and_application(new_user_name, control.application_id) - control.database.delete_user(new_user_id) + try: deleted_user = control.database.get_by_name_and_application(new_user_name, control.application_id) self.assertIsNone(deleted_user, "User was not deleted successfully") @@ -384,12 +385,87 @@ TestDBFactory results = control.database.results(control.user_id, control.application_id, request_values) for result in results[scenario_name]: - self.assertEqual(expected_results[result['building']], result[cte.INSEL_MEB], f"building '{result['building']}' saved results does not match expected results") + self.assertEqual(expected_results[result['building']], result[cte.INSEL_MEB], + f"building '{result['building']}' saved results does not match expected results") for _id in city_objects_id: control.database.delete_results_by_name(cte.INSEL_MEB, city_object_id=_id) control.database.delete_city(city_id) + @unittest.skipIf(control.skip_test, control.skip_reason) + def test_get_building(self): + # Insert two cities with same buildings but different city names + control.city.name = 'Montreal' + mtl_city_id = control.database.persist_city( + control.city, + control.pickle_path, + control.city.name, + control.application_id, + control.user_id) + + control.city.name = 'Ottawa' + ott_city_id = control.database.persist_city( + control.city, + control.pickle_path, + control.city.name, + control.application_id, + control.user_id) + + # Retrieve building from database + test_building = control.city.buildings[0] + city_object = control.database.building(test_building.name, control.user_id, control.application_id, 'Montreal') + self.assertEqual(city_object.name, test_building.name, "City name does not match") + + city_object = control.database.building_info(test_building.name, mtl_city_id) + self.assertEqual(city_object.name, test_building.name, "City name does not match") + + city_object = control.database.building_info_in_cities(test_building.name, [mtl_city_id, ott_city_id]) + self.assertEqual(city_object.name, test_building.name, "City name does not match") + + # TODO: Waiting for the code to be finished to complete this test. + city_objects = control.database.buildings_info(control.user_id, control.application_id, [control.city.buildings[0].name, control.city.buildings[1].name]) + # for city_obj in city_objects: + + control.database.delete_city(mtl_city_id) + control.database.delete_city(ott_city_id) + + @unittest.skipIf(control.skip_test, control.skip_reason) + def test_get_non_existing_building(self): + # Create and delete cities + control.city.name = 'Montreal' + mtl_city_id = control.database.persist_city( + control.city, + control.pickle_path, + control.city.name, + control.application_id, + control.user_id) + + control.city.name = 'Ottawa' + ott_city_id = control.database.persist_city( + control.city, + control.pickle_path, + control.city.name, + control.application_id, + control.user_id) + + control.database.delete_city(mtl_city_id) + control.database.delete_city(ott_city_id) + + # Retrieve building from database + test_building = control.city.buildings[0] + result = control.database.building(test_building.name, control.user_id, control.application_id, 'Montreal') + self.assertIsNone(result, "City object exists.") + + result = control.database.building_info(test_building.name, mtl_city_id) + self.assertIsNone(result, "City object exists.") + + result = control.database.building_info_in_cities(test_building.name, [mtl_city_id, ott_city_id]) + self.assertIsNone(result, "City object exists.") + + city_objects = control.database.buildings_info(control.user_id, control.application_id, + [control.city.buildings[0].name, control.city.buildings[1].name]) + self.assertEqual(len(city_objects), 0, "Found a city object with given values"); + @classmethod @unittest.skipIf(control.skip_test, control.skip_reason) def tearDownClass(cls): From 5f5dd2c60a5c3108ec89eeea85996def617933d5 Mon Sep 17 00:00:00 2001 From: Ruben Sanchez Date: Tue, 12 Dec 2023 09:48:12 -0500 Subject: [PATCH 24/25] Removed user tests --- tests/test_db_factory.py | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index c14454d..24e140a 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -174,31 +174,6 @@ class TestDBFactory(TestCase): """ TestDBFactory """ - @unittest.skipIf(control.skip_test, control.skip_reason) - def test_create_user(self): - new_user_name = 'user_creation_test' - new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) - - try: - saved_user = control.database.get_by_name_and_application(new_user_name, control.application_id) - self.assertEqual(new_user_id, saved_user.id, "Could not find matching user id") - except Exception as err: - control.database.delete_user(new_user_id) - self.assertTrue(False, f'Unexpected {err=}, {type(err)=}') - - control.database.delete_user(new_user_id) - - @unittest.skipIf(control.skip_test, control.skip_reason) - def test_delete_user(self): - new_user_name = 'user_deletion_test' - new_user_id = control.database.create_user(new_user_name, control.application_id, 'test', UserRoles.Admin) - control.database.delete_user(new_user_id) - - try: - deleted_user = control.database.get_by_name_and_application(new_user_name, control.application_id) - self.assertIsNone(deleted_user, "User was not deleted successfully") - except TypeError: - pass @unittest.skipIf(control.skip_test, control.skip_reason) def test_create_city(self): From d76a8d2486973e5420fc2cd965ade2dbb5736347 Mon Sep 17 00:00:00 2001 From: Ruben1729 Date: Sat, 16 Dec 2023 13:13:07 -0500 Subject: [PATCH 25/25] Finalized buildings_info --- cerc_persistence/repositories/city_object.py | 31 ++++++++++++-------- tests/test_db_factory.py | 8 +++-- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/cerc_persistence/repositories/city_object.py b/cerc_persistence/repositories/city_object.py index 9e33b8c..6fa720c 100644 --- a/cerc_persistence/repositories/city_object.py +++ b/cerc_persistence/repositories/city_object.py @@ -136,7 +136,7 @@ class CityObject(Repository): logging.error('Error while fetching city object by name and city, empty result %s', err) raise IndexError from err - def get_by_name_or_alias_for_user_app(self, user_id, application_id, names) -> Union[Model, None]: + def get_by_name_or_alias_for_user_app(self, user_id, application_id, names) -> [Model]: """ Fetch city objects belonging to the user and application where the name or alias is in the names list :param user_id: User ID @@ -144,17 +144,24 @@ class CityObject(Repository): :param names: a list of building aliases or names :return [CityObject] or None """ - with Session(self.engine) as session: - cities = session.execute(select(CityModel).where( - CityModel.user_id == user_id, CityModel.application_id == application_id - )).all() - ids = [c[0].id for c in cities] - buildings = session.execute(select(Model).where( - Model.city_id.in_(ids), Model.name.in_(names) - )) - results = [r[0] for r in buildings] - print(ids, buildings) - return None + try: + results = [] + with Session(self.engine) as session: + cities = session.execute(select(CityModel).where( + CityModel.user_id == user_id, CityModel.application_id == application_id + )).all() + ids = [c[0].id for c in cities] + buildings = session.execute(select(Model).where( + Model.city_id.in_(ids), Model.name.in_(names) + )) + results = [r[0] for r in buildings] + return results + except SQLAlchemyError as err: + logging.error('Error while fetching city object by name and city: %s', err) + raise SQLAlchemyError from err + except IndexError as err: + logging.error('Error while fetching city object by name and city, empty result %s', err) + raise IndexError from err def get_by_name_or_alias_and_city(self, name, city_id) -> Union[Model, None]: """ diff --git a/tests/test_db_factory.py b/tests/test_db_factory.py index 24e140a..9320677 100644 --- a/tests/test_db_factory.py +++ b/tests/test_db_factory.py @@ -48,6 +48,7 @@ class Control: # Create test database. dotenv_path = Path("{}/.local/etc/hub/.env".format(os.path.expanduser('~'))).resolve() + print(dotenv_path) if not dotenv_path.exists(): self._skip_test = True self._skip_reason = f'.env file missing at {dotenv_path}' @@ -397,9 +398,10 @@ TestDBFactory city_object = control.database.building_info_in_cities(test_building.name, [mtl_city_id, ott_city_id]) self.assertEqual(city_object.name, test_building.name, "City name does not match") - # TODO: Waiting for the code to be finished to complete this test. city_objects = control.database.buildings_info(control.user_id, control.application_id, [control.city.buildings[0].name, control.city.buildings[1].name]) - # for city_obj in city_objects: + self.assertEqual(len(city_objects), 4, "Found {} city objects but expected 4".format(len(city_objects))) + for city_obj in city_objects: + self.assertTrue(city_obj.name == control.city.buildings[0].name or city_obj.name == control.city.buildings[1].name, "City object name does not match any expected value. Obtained {} instead.".format(city_obj.name)) control.database.delete_city(mtl_city_id) control.database.delete_city(ott_city_id) @@ -439,7 +441,7 @@ TestDBFactory city_objects = control.database.buildings_info(control.user_id, control.application_id, [control.city.buildings[0].name, control.city.buildings[1].name]) - self.assertEqual(len(city_objects), 0, "Found a city object with given values"); + self.assertEqual(len(city_objects), 0, "Found a city object with given values") @classmethod @unittest.skipIf(control.skip_test, control.skip_reason)