diff --git a/scripts/base_network.py b/scripts/base_network.py index 9a9be8ee3..8d953117c 100644 --- a/scripts/base_network.py +++ b/scripts/base_network.py @@ -90,7 +90,7 @@ from packaging.version import Version, parse from scipy.sparse import csgraph from scipy.spatial import KDTree -from shapely.geometry import LineString, Point +from shapely.geometry import Point PD_GE_2_2 = parse(pd.__version__) >= Version("2.2") diff --git a/test/conftest.py b/test/conftest.py index 13a0d1a9f..da08e75f6 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -7,6 +7,7 @@ import pathlib +import pandas as pd import pypsa import pytest import yaml @@ -22,9 +23,95 @@ def ac_dc_network(): return pypsa.examples.ac_dc_meshed(from_master=True) -@pytest.fixture(scope="function") +@pytest.fixture(scope="session") def config(): path_config = pathlib.Path(pathlib.Path.cwd(), "config", "config.default.yaml") with open(path_config, "r") as file: config_dict = yaml.safe_load(file) return config_dict + + +@pytest.fixture(scope="function") +def buses_dataframe(): + return pd.DataFrame( + { + "bus_id": [5231, 5232], + "voltage": [380.0, 380.0], + "dc": ["f", "f"], + "symbol": ["Substation", "Substation"], + "under_construction": ["f", "f"], + "x": [6.8884, 6.8894], + "y": [45.6783, 45.6793], + "country": ["IT", "IT"], + "geometry": ["POINT (6.8884 45.6783)", "POINT (6.8894 45.6793)"], + }, + index=[5090, 5091], + ) + + +@pytest.fixture(scope="function") +def converters_dataframe(): + return pd.DataFrame( + { + "converter_id": "convert_5231_5232", + "bus0": 5231, + "bus1": 5232, + "voltage": 380.0, + "geometry": "'LINESTRING(6.8884 45.6783 ", + "": "6.8894 45.6793)'", + }, + index=[0], + ) + + +@pytest.fixture(scope="function") +def lines_dataframe(): + return pd.DataFrame( + { + "line_id": "line_5231_5232", + "bus0": 5231, + "bus1": 5232, + "voltage": 380.0, + "circuits": 1.0, + "length": 1000.0, + "underground": "t", + "under_construction": "f", + "geometry": "'LINESTRING(6.8884 45.6783 ", + "": "6.8894 45.6793)'", + }, + index=[0], + ) + + +@pytest.fixture(scope="function") +def links_dataframe(): + return pd.DataFrame( + { + "link_id": "link_5231_5232", + "bus0": 5231, + "bus1": 5232, + "voltage": 380.0, + "p_nom": 600.0, + "length": 1000.0, + "underground": "t", + "under_construction": "f", + "geometry": "'LINESTRING(6.8884 45.6783 ", + "": "6.8894 45.6793)'", + }, + index=[0], + ) + + +@pytest.fixture(scope="function") +def transformers_dataframe(): + return pd.DataFrame( + { + "transformer_id": "transf_5231_5232", + "bus0": 5231, + "bus1": 5232, + "voltage": 380.0, + "geometry": "'LINESTRING(6.8884 45.6783 ", + "": "6.8894 45.6793)'", + }, + index=[0], + ) diff --git a/test/test_base_network.py b/test/test_base_network.py new file mode 100644 index 000000000..2ec1e5f14 --- /dev/null +++ b/test/test_base_network.py @@ -0,0 +1,675 @@ +# -*- coding: utf-8 -*- +# SPDX-FileCopyrightText: : 2017-2024 The PyPSA-Eur Authors +# +# SPDX-License-Identifier: MIT + +# coding: utf-8 +""" +Tests the functionalities of scripts/base_network.py. +""" + +import pathlib +import sys + +import numpy as np +import pandas as pd +import pytest + +sys.path.append("./scripts") + +from base_network import ( + _get_country, + _get_linetype_by_voltage, + _get_linetypes_config, + _get_oid, + _load_buses, + _load_converters_from_eg, + _load_converters_from_osm, + _load_lines, + _load_links_from_eg, + _load_links_from_osm, + _load_transformers, + _reconnect_crimea, + _set_electrical_parameters_converters, + _set_electrical_parameters_lines_eg, + _set_electrical_parameters_lines_osm, + _set_electrical_parameters_links_osm, + _set_electrical_parameters_transformers, +) + +path_cwd = pathlib.Path.cwd() + + +@pytest.mark.parametrize( + "column_name, expected", + [ + ("tags", pd.Series(["NG", "CH", "AU"])), + ("other", pd.Series([np.nan, np.nan, np.nan])), + ], +) +def test_get_country(column_name, expected): + """ + Verify what returned by _get_country() + """ + data_list = [['"country"=>"NG"'], ['"country"=>"CH"'], ['"country"=>"AU"']] + df_exercise = pd.DataFrame(data_list, columns=[column_name]) + output_series = _get_country(df_exercise) + comparison_series = output_series.compare(expected) + assert comparison_series.size == 0 + + +def test_get_linetypes_config(config): + """ + Verify what returned by _get_linetypes_config. + """ + output_dict = _get_linetypes_config( + config["lines"]["types"], config["electricity"]["voltages"] + ) + assert output_dict == config["lines"]["types"] + + +def test_get_linetype_by_voltage(config): + """ + Verify what returned by _get_linetype_by_voltage. + """ + + reference_list = [ + "Al/St 240/40 2-bundle 220.0", + "Al/St 240/40 3-bundle 300.0", + "Al/St 240/40 3-bundle 300.0", + "Al/St 240/40 4-bundle 380.0", + "Al/St 240/40 4-bundle 380.0", + "Al/St 240/40 4-bundle 380.0", + "Al/St 560/50 4-bundle 750.0", + ] + + v_nom_list = [ + 220.0, + 300.0, + 330.0, + 380.0, + 400.0, + 500.0, + 750.0, + ] + + line_type_list = [] + + for v_nom in v_nom_list: + line_type_list.append(_get_linetype_by_voltage(v_nom, config["lines"]["types"])) + assert len(line_type_list) == len(reference_list) + assert all([x == y for x, y in zip(line_type_list, reference_list)]) + + +@pytest.mark.parametrize( + "column_name, expected", + [ + ("tags", pd.Series(["12", "12345", "9876654"])), + ("other", pd.Series([np.nan, np.nan, np.nan])), + ], +) +def test_get_oid(column_name, expected): + """ + Verify what returned by _get_oid() + """ + data_list = [['"oid"=>"12"'], ['"oid"=>"12345"'], ['"oid"=>"9876654"']] + df_exercise = pd.DataFrame(data_list, columns=[column_name]) + output_series = _get_oid(df_exercise) + comparison_series = output_series.compare(expected) + assert comparison_series.size == 0 + + +def test_load_buses(tmpdir, config, buses_dataframe): + """ + Verify what returned by _load_buses. + """ + df_buses_reference = pd.DataFrame( + { + "bus_id": ["5231", "5232"], + "v_nom": [380.0, 380.0], + "symbol": ["Substation", "Substation"], + "under_construction": [False, False], + "x": [6.8884, 6.8894], + "y": [45.6783, 45.6793], + "country": ["IT", "IT"], + "geometry": ["POINT (6.8884 45.6783)", "POINT (6.8894 45.6793)"], + "carrier": ["AC", "AC"], + }, + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses_output = _load_buses( + buses_path, italy_shape, countries, config + ).reset_index() + pathlib.Path(buses_path).unlink(missing_ok=True) + df_comparison = df_buses_output.compare(df_buses_reference) + assert df_comparison.empty + + +def test_load_converters_from_eg(tmpdir, buses_dataframe, config, converters_dataframe): + """ + Verify what returned by _load_converters_from_eg. + """ + df_converters_eg_reference = pd.DataFrame( + { + "converter_id": "convert_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "B2B", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + converters_path = pathlib.Path(tmpdir, "converters_exercise.csv") + converters_dataframe.to_csv(converters_path, index=False) + df_converters_output = ( + _load_converters_from_eg(df_buses, converters_path) + .reset_index() + .loc[:, ("converter_id", "bus0", "bus1", "voltage", "geometry", "carrier")] + ) + df_converters_comparison = df_converters_output.compare(df_converters_eg_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(converters_path).unlink(missing_ok=True) + assert df_converters_comparison.empty + + +def test_load_converters_from_osm( + tmpdir, buses_dataframe, config, converters_dataframe +): + """ + Verify what returned by _load_converters_from_osm. + """ + df_converters_osm_reference = pd.DataFrame( + { + "converter_id": "convert_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + converters_path = pathlib.Path(tmpdir, "converters_exercise.csv") + converters_dataframe.to_csv(converters_path, index=False) + df_converters_output = ( + _load_converters_from_osm(df_buses, converters_path) + .reset_index() + .loc[:, ("converter_id", "bus0", "bus1", "voltage", "geometry", "carrier")] + ) + df_converters_comparison = df_converters_output.compare(df_converters_osm_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(converters_path).unlink(missing_ok=True) + assert df_converters_comparison.empty + + +def test_load_lines(tmpdir, buses_dataframe, config, lines_dataframe): + """ + Verify what returned by _load_lines. + """ + df_lines_reference = pd.DataFrame( + { + "line_id": "line_5231_5232", + "bus0": "5231", + "bus1": "5232", + "v_nom": 380.0, + "num_parallel": 1.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "AC", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + lines_path = pathlib.Path(tmpdir, "lines_exercise.csv") + lines_dataframe.to_csv(lines_path, index=False) + df_lines_output = ( + _load_lines(df_buses, lines_path) + .reset_index() + .loc[ + :, + ( + "line_id", + "bus0", + "bus1", + "v_nom", + "num_parallel", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_lines_comparison = df_lines_output.compare(df_lines_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(lines_path).unlink(missing_ok=True) + assert df_lines_comparison.empty + + +def test_load_links_from_eg(tmpdir, buses_dataframe, config, links_dataframe): + """ + Verify what returned by _load_links_from_eg. + """ + df_links_eg_reference = pd.DataFrame( + { + "link_id": "link_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "p_nom": 600.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "DC", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + links_path = pathlib.Path(tmpdir, "links_exercise.csv") + links_dataframe.to_csv(links_path, index=False) + df_links_output = ( + _load_links_from_eg(df_buses, links_path) + .reset_index() + .loc[ + :, + ( + "link_id", + "bus0", + "bus1", + "voltage", + "p_nom", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_links_comparison = df_links_output.compare(df_links_eg_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(links_path).unlink(missing_ok=True) + assert df_links_comparison.empty + + +def test_load_links_from_osm(tmpdir, buses_dataframe, config, links_dataframe): + """ + Verify what returned by _load_links_from_osm. + """ + df_links_osm_reference = pd.DataFrame( + { + "link_id": "link_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "p_nom": 600.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "DC", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + links_path = pathlib.Path(tmpdir, "links_exercise.csv") + links_dataframe.to_csv(links_path, index=False) + df_links_output = ( + _load_links_from_osm(df_buses, links_path) + .reset_index() + .loc[ + :, + ( + "link_id", + "bus0", + "bus1", + "voltage", + "p_nom", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_links_comparison = df_links_output.compare(df_links_osm_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(links_path).unlink(missing_ok=True) + assert df_links_comparison.empty + + +def test_load_transformers(tmpdir, buses_dataframe, config, transformers_dataframe): + """ + Verify what returned by _load_transformers. + """ + df_transformers_reference = pd.DataFrame( + { + "transformer_id": "transf_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + transformers_path = pathlib.Path(tmpdir, "transformers_exercise.csv") + transformers_dataframe.to_csv(transformers_path, index=False) + df_transformers_output = ( + _load_transformers(df_buses, transformers_path) + .reset_index() + .loc[:, ("transformer_id", "bus0", "bus1", "voltage", "geometry")] + ) + df_transformers_comparison = df_transformers_output.compare( + df_transformers_reference + ) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(transformers_path).unlink(missing_ok=True) + assert df_transformers_comparison.empty + + +def test_reconnect_crimea(tmpdir, buses_dataframe, config, lines_dataframe): + """ + Verify what returned by _reconnect_crimea. + """ + df_lines_crimea_reference = pd.DataFrame( + { + "index": [ + "line_5231_5232", + "Melitopol", + "Liubymivka left", + "Luibymivka right", + ], + "bus0": ["5231", "3065", "3181", "3181"], + "bus1": ["5232", "3057", "3055", "3057"], + "v_nom": [380.0, 300.0, 300.0, 300.0], + "num_parallel": [1.0, 1.0, 1.0, 1.0], + "length": [1.0, 140.0, 120.0, 140.0], + "underground": [True, False, False, False], + "under_construction": [False, False, False, False], + "geometry": [ + "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + np.nan, + np.nan, + np.nan, + ], + "carrier": ["AC", "AC", "AC", "AC"], + }, + index=[0, 1, 2, 3], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + lines_path = pathlib.Path(tmpdir, "lines_exercise.csv") + lines_dataframe.to_csv(lines_path, index=False) + df_lines = _load_lines(df_buses, lines_path).loc[ + :, + ( + "bus0", + "bus1", + "v_nom", + "num_parallel", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + df_lines_crimea_output = _reconnect_crimea(df_lines).reset_index() + df_lines_crimea_comparison = df_lines_crimea_output.compare( + df_lines_crimea_reference + ) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(lines_path).unlink(missing_ok=True) + assert df_lines_crimea_comparison.empty + + +def test_set_electrical_parameters_lines_eg( + tmpdir, buses_dataframe, config, lines_dataframe +): + """ + Verify what returned by _set_electrical_parameters_lines_eg. + """ + df_lines_parameters_reference = pd.DataFrame( + { + "line_id": "line_5231_5232", + "bus0": "5231", + "bus1": "5232", + "v_nom": 380.0, + "num_parallel": 1.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "AC", + "type": "Al/St 240/40 4-bundle 380.0", + "s_max_pu": 0.7, + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + lines_path = pathlib.Path(tmpdir, "lines_exercise.csv") + lines_dataframe.to_csv(lines_path, index=False) + df_lines = ( + _load_lines(df_buses, lines_path) + .reset_index() + .loc[ + :, + ( + "line_id", + "bus0", + "bus1", + "v_nom", + "num_parallel", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_lines_output = _set_electrical_parameters_lines_eg(df_lines, config) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(lines_path).unlink(missing_ok=True) + df_lines_comparison = df_lines_output.compare(df_lines_parameters_reference) + assert df_lines_comparison.empty + + +def test_set_electrical_parameters_lines_osm( + tmpdir, buses_dataframe, config, lines_dataframe +): + """ + Verify what returned by _set_electrical_parameters_lines_osm. + """ + df_lines_parameters_reference = pd.DataFrame( + { + "line_id": "line_5231_5232", + "bus0": "5231", + "bus1": "5232", + "v_nom": 380.0, + "num_parallel": 1.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "AC", + "dc": False, + "type": "Al/St 240/40 4-bundle 380.0", + "s_max_pu": 0.7, + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + lines_path = pathlib.Path(tmpdir, "lines_exercise.csv") + lines_dataframe.to_csv(lines_path, index=False) + df_lines = ( + _load_lines(df_buses, lines_path) + .reset_index() + .loc[ + :, + ( + "line_id", + "bus0", + "bus1", + "v_nom", + "num_parallel", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_lines_output = _set_electrical_parameters_lines_osm(df_lines, config) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(lines_path).unlink(missing_ok=True) + df_lines_comparison = df_lines_output.compare(df_lines_parameters_reference) + assert df_lines_comparison.empty + + +def test_set_electrical_parameters_links_osm( + tmpdir, buses_dataframe, config, links_dataframe +): + """ + Verify what returned by _set_electrical_parameters_links_osm. + """ + df_links_parameters_reference = pd.DataFrame( + { + "link_id": "link_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "p_nom": 600.0, + "length": 1.0, + "underground": True, + "under_construction": False, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "DC", + "p_max_pu": 1.0, + "p_min_pu": -1.0, + "dc": True, + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + links_path = pathlib.Path(tmpdir, "links_exercise.csv") + links_dataframe.to_csv(links_path, index=False) + df_links = ( + _load_links_from_eg(df_buses, links_path) + .reset_index() + .loc[ + :, + ( + "link_id", + "bus0", + "bus1", + "voltage", + "p_nom", + "length", + "underground", + "under_construction", + "geometry", + "carrier", + ), + ] + ) + df_links_output = _set_electrical_parameters_links_osm(df_links, config) + df_links_comparison = df_links_output.compare(df_links_parameters_reference) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(links_path).unlink(missing_ok=True) + assert df_links_comparison.empty + + +def test_set_electrical_parameters_converters( + tmpdir, buses_dataframe, config, converters_dataframe +): + """ + Verify what returned by _set_electrical_parameters_converters. + """ + df_converters_parameters_reference = pd.DataFrame( + { + "converter_id": "convert_5231_5232", + "bus0": "5231", + "bus1": "5232", + "voltage": 380.0, + "geometry": "LINESTRING(6.8884 45.6783 ,6.8894 45.6793)", + "carrier": "B2B", + "p_max_pu": 1.0, + "p_min_pu": -1.0, + "p_nom": 2000, + "under_construction": False, + "underground": False, + }, + index=[0], + ) + buses_path = pathlib.Path(tmpdir, "buses.csv") + buses_dataframe.to_csv(buses_path, index=False) + countries = config["countries"] + italy_shape = pathlib.Path(path_cwd, "test", "test_data", "italy_shape.geojson") + df_buses = _load_buses(buses_path, italy_shape, countries, config) + converters_path = pathlib.Path(tmpdir, "converters_exercise.csv") + converters_dataframe.to_csv(converters_path, index=False) + df_converters = ( + _load_converters_from_eg(df_buses, converters_path) + .reset_index() + .loc[:, ("converter_id", "bus0", "bus1", "voltage", "geometry", "carrier")] + ) + df_converters_output = _set_electrical_parameters_converters(df_converters, config) + df_converters_comparison = df_converters_output.compare( + df_converters_parameters_reference + ) + pathlib.Path(buses_path).unlink(missing_ok=True) + pathlib.Path(converters_path).unlink(missing_ok=True) + assert df_converters_comparison.empty diff --git a/test/test_build_powerplants.py b/test/test_build_powerplants.py index b617bcdec..f02f9e142 100644 --- a/test/test_build_powerplants.py +++ b/test/test_build_powerplants.py @@ -34,8 +34,7 @@ def test_add_custom_powerplants(config, query_value, expected): """ Verify what returned by add_custom_powerplants. """ - config_dict = config - config_dict["electricity"]["custom_powerplants"] = query_value + config["electricity"]["custom_powerplants"] = query_value custom_powerplants_path = pathlib.Path( path_cwd, "test", "test_data", "custom_powerplants_DE.csv" ) @@ -44,7 +43,7 @@ def test_add_custom_powerplants(config, query_value, expected): ppl_final = add_custom_powerplants( ppl_df, custom_powerplants_path, - config_dict["electricity"]["custom_powerplants"], + config["electricity"]["custom_powerplants"], ) assert ppl_df.shape == (131, 18) assert ppl_final.shape == expected diff --git a/test/test_data/italy_shape.geojson b/test/test_data/italy_shape.geojson new file mode 100644 index 000000000..533d5d7ff --- /dev/null +++ b/test/test_data/italy_shape.geojson @@ -0,0 +1,8 @@ +{ +"type": "FeatureCollection", +"name": "europe_shape", +"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } }, +"features": [ +{ "type": "Feature", "properties": { "index": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 9.270000000050402, 41.291944442214458 ], [ 9.316666667, 41.336111110425918 ], [ 9.450000000050352, 41.406388889462335 ], [ 9.630555555925184, 41.433611110688105 ], [ 9.716944444088028, 41.433611110688105 ], [ 10.218333331476686, 41.553611110388204 ], [ 10.218333331476686, 41.71055555777366 ], [ 10.143333331551617, 41.777500000212569 ], [ 10.055000000075211, 41.952222221201168 ], [ 9.951666666725316, 42.064166668361565 ], [ 9.878611111012845, 42.161111110500883 ], [ 9.838611110962859, 42.23055555797356 ], [ 9.803055555662866, 42.337500000012881 ], [ 9.798888888850399, 42.381666668224113 ], [ 9.783055555862575, 42.625833331738932 ], [ 9.745833333387793, 42.772499999937793 ], [ 9.730171223623131, 42.799940016119024 ], [ 9.712478792662125, 42.795528948502238 ], [ 9.699356313443161, 42.822264995233411 ], [ 9.680098216759404, 42.854988564470716 ], [ 9.654536426514937, 42.907361465159681 ], [ 9.645433787339527, 42.928682891702238 ], [ 9.637186148921785, 42.955385437787811 ], [ 9.620957343007035, 43.087084974891752 ], [ 9.615624838115878, 43.111829901029239 ], [ 9.609625945481127, 43.133608739851582 ], [ 9.594426429835892, 43.176661708970755 ], [ 9.588086468449092, 43.175858045120606 ], [ 9.583888888975423, 43.193611110638187 ], [ 9.570555555625276, 43.275277778812153 ], [ 8.999444443905929, 43.636944440333707 ], [ 8.73722222192572, 43.461388889387536 ], [ 8.459722222112987, 43.253333331651561 ], [ 8.081666666974968, 43.123888889275065 ], [ 7.840277777887877, 43.123888889275065 ], [ 7.672222222000698, 43.425277779111809 ], [ 7.63055555567513, 43.57527777896189 ], [ 7.612222222150365, 43.64527777871217 ], [ 7.538055555587846, 43.744166668211619 ], [ 7.537500000162879, 43.752500000037799 ], [ 7.528611111112809, 43.774444442251934 ], [ 7.529865313736536, 43.783694191837412 ], [ 7.558631539514465, 43.781000853007413 ], [ 7.560266852334053, 43.788395643644492 ], [ 7.560855598402953, 43.788590114057676 ], [ 7.544118686000047, 43.784491278000075 ], [ 7.531097852000073, 43.784491278000075 ], [ 7.52320397200009, 43.789048570000034 ], [ 7.512868686000047, 43.792141018000052 ], [ 7.502289259000065, 43.792222398000035 ], [ 7.482726278000058, 43.840219219000076 ], [ 7.477868693000062, 43.86551483200013 ], [ 7.493474976000101, 43.886237081000061 ], [ 7.536779826000071, 43.920782776000053 ], [ 7.556933634000131, 43.944088847000089 ], [ 7.608610066000068, 43.97561147100005 ], [ 7.630934285000137, 43.993543193000036 ], [ 7.63868575000015, 44.005067037000046 ], [ 7.646953979000102, 44.027494609000044 ], [ 7.65336185700005, 44.039690247000053 ], [ 7.664317261000093, 44.048578593000073 ], [ 7.67878666200005, 44.056588441000045 ], [ 7.689948771000076, 44.06733713800007 ], [ 7.691912475000095, 44.084648743000074 ], [ 7.687942587000094, 44.090799457000074 ], [ 7.676202840000144, 44.108988343000092 ], [ 7.654085327000132, 44.124956360000041 ], [ 7.64188968900001, 44.143559876000083 ], [ 7.655635620000055, 44.176064352000097 ], [ 7.624733114000065, 44.180095113 ], [ 7.583598674000086, 44.160716451000056 ], [ 7.554763224000055, 44.15906280600008 ], [ 7.380820353000075, 44.122940980000081 ], [ 7.34061608900015, 44.123664449000088 ], [ 7.331004272000143, 44.125266419000113 ], [ 7.32159916100008, 44.131881002000014 ], [ 7.316224813000133, 44.140200908000068 ], [ 7.309300171000132, 44.147487284000064 ], [ 7.296174357000069, 44.151156311000037 ], [ 7.270129435000115, 44.154308574000098 ], [ 7.251319214000091, 44.160044657000057 ], [ 7.144969116000084, 44.207225240000085 ], [ 7.104868205000088, 44.21776723300006 ], [ 7.046060425000121, 44.240298157000055 ], [ 7.033451375000084, 44.242933655000073 ], [ 7.020015503000138, 44.242106832000061 ], [ 7.008026570000084, 44.239212952000074 ], [ 6.996140991000061, 44.237817688000078 ], [ 6.982808471000055, 44.241745098000067 ], [ 6.973403361000095, 44.249444885000045 ], [ 6.968855835000056, 44.258178202000025 ], [ 6.96554854300004, 44.267531636000072 ], [ 6.959244019000039, 44.277350159000051 ], [ 6.950045613000043, 44.285101624000035 ], [ 6.930201864000139, 44.295385234000051 ], [ 6.921210164000087, 44.302154846000079 ], [ 6.915629110000083, 44.309699605000034 ], [ 6.903846883000085, 44.330008444000057 ], [ 6.895992065000144, 44.339826966000018 ], [ 6.873977905000061, 44.358378805000044 ], [ 6.869843791000051, 44.362926331 ], [ 6.866123088000052, 44.372124736000089 ], [ 6.866329793000091, 44.377189026000067 ], [ 6.868810262000068, 44.3831834920001 ], [ 6.877181844000035, 44.414396057000076 ], [ 6.88420983900005, 44.42302602200003 ], [ 6.917799519000084, 44.436306864000031 ], [ 6.891651245000077, 44.451964824000086 ], [ 6.861265503000112, 44.474909160000024 ], [ 6.838837931000114, 44.502917786000026 ], [ 6.835737345000069, 44.534026998000073 ], [ 6.84638269000007, 44.547462871000036 ], [ 6.89733565200001, 44.575419821000125 ], [ 6.931648804000133, 44.617949525000071 ], [ 6.945601441000122, 44.625442607000096 ], [ 6.934335978000149, 44.64668162 ], [ 6.941467326000094, 44.666990459000019 ], [ 6.959864135000089, 44.683165182 ], [ 6.982808471000055, 44.692156881000031 ], [ 7.001205282000029, 44.692260234000074 ], [ 7.03727543200003, 44.684612122 ], [ 7.055155476000095, 44.684870504000074 ], [ 7.049367717000109, 44.697892965 ], [ 7.01898197400007, 44.738872376000032 ], [ 7.015157918000114, 44.747398987000039 ], [ 7.009783569000149, 44.772100322000071 ], [ 6.998414754000066, 44.793752747000056 ], [ 6.999138224000063, 44.795044658000094 ], [ 7.004099162000017, 44.810805969000072 ], [ 7.00595951400004, 44.811529440000086 ], [ 7.005856160000093, 44.816335348000067 ], [ 7.006786336000062, 44.819022522000111 ], [ 7.007096395000133, 44.822071432000044 ], [ 7.004925985000057, 44.827962545000034 ], [ 7.000791870000114, 44.8329751590001 ], [ 6.982808471000055, 44.846979472 ], [ 6.932682332000127, 44.8616555790001 ], [ 6.915319051000097, 44.862689108000083 ], [ 6.866019735000094, 44.855661113000068 ], [ 6.847106161000056, 44.859071758000098 ], [ 6.778169800000029, 44.887648825000056 ], [ 6.745406941000027, 44.907802633000031 ], [ 6.727940307000097, 44.928731588000019 ], [ 6.729904012000105, 44.984697164000025 ], [ 6.723496134000072, 45.013377584000025 ], [ 6.69724450700005, 45.02691681 ], [ 6.662207885000043, 45.029242249000035 ], [ 6.651665894000075, 45.035650126000078 ], [ 6.639676961000106, 45.05037791000008 ], [ 6.63698978700009, 45.059421285000028 ], [ 6.638126669000087, 45.067431132000095 ], [ 6.636576375000061, 45.074459127000111 ], [ 6.620298299000126, 45.08443267900013 ], [ 6.602728312000067, 45.103449606000098 ], [ 6.614613892000108, 45.114766745000068 ], [ 6.629385185000046, 45.123545113000048 ], [ 6.632700643000106, 45.125515442000093 ], [ 6.66737552900014, 45.139623109000027 ], [ 6.676263875000132, 45.140759990000035 ], [ 6.694350626000073, 45.140294902 ], [ 6.702205445000089, 45.141225078000062 ], [ 6.710887085000138, 45.144739075000118 ], [ 6.728870483000037, 45.154609273000077 ], [ 6.736415242000078, 45.157348125000041 ], [ 6.77145186300001, 45.1531623340001 ], [ 6.808142131000068, 45.139106344000069 ], [ 6.84410892700015, 45.130114645000035 ], [ 6.876665079000105, 45.141225078000062 ], [ 6.878628784000028, 45.147426250000038 ], [ 6.872841023000149, 45.152025452000075 ], [ 6.868190144000096, 45.157451477000066 ], [ 6.873461141000121, 45.165926412000076 ], [ 6.881315958000073, 45.168406881000053 ], [ 6.904673706000096, 45.168613587 ], [ 6.913768758000089, 45.170163880000118 ], [ 6.928444865000074, 45.179568990000078 ], [ 6.945808146000076, 45.201066386000022 ], [ 6.958727254000081, 45.209799703000087 ], [ 6.99448734500001, 45.221323548000029 ], [ 7.029730672000085, 45.228196513000071 ], [ 7.037688843000041, 45.225767721000025 ], [ 7.050194539000131, 45.215019023000096 ], [ 7.055465536000071, 45.213675436000031 ], [ 7.062183471000111, 45.218533021000056 ], [ 7.081200399000068, 45.243079325000039 ], [ 7.108382202000143, 45.259202373 ], [ 7.108382202000143, 45.274912008000072 ], [ 7.097633504000044, 45.294962464000022 ], [ 7.092569213000075, 45.323952942000105 ], [ 7.097736857000058, 45.329844056000113 ], [ 7.130086304000145, 45.357077535000101 ], [ 7.150756877000077, 45.383225810000013 ], [ 7.159645223000098, 45.39847035800004 ], [ 7.160678752000081, 45.410924378000047 ], [ 7.15292728600005, 45.415110169000073 ], [ 7.110139201000038, 45.428287659000048 ], [ 7.096806681000118, 45.435419007000078 ], [ 7.088745158000108, 45.446632793000035 ], [ 7.081820515000032, 45.459086813000013 ], [ 7.075368543000081, 45.466285856000056 ], [ 7.072001993000072, 45.470042217000085 ], [ 7.028490437000045, 45.493141581000074 ], [ 6.982808471000055, 45.511124980000048 ], [ 6.9752637120001, 45.525646058000106 ], [ 6.96978601100011, 45.566987203000039 ], [ 6.965858601000122, 45.574428609000066 ], [ 6.954903198000068, 45.586210836000063 ], [ 6.952939494000105, 45.594272360000062 ], [ 6.95562666800015, 45.602592265000013 ], [ 6.967098836000076, 45.620162252000071 ], [ 6.96947595200001, 45.625846659000032 ], [ 6.963378133000049, 45.640729472000075 ], [ 6.951079142000111, 45.646775615000124 ], [ 6.918626343000085, 45.652563375000099 ], [ 6.905293823000079, 45.659694723000129 ], [ 6.882556193000084, 45.675507711000122 ], [ 6.869223673000079, 45.679021708000064 ], [ 6.843075398000082, 45.682742412 ], [ 6.816100301000034, 45.696850077000121 ], [ 6.79594649200007, 45.718140768000112 ], [ 6.784681030000115, 45.759585266000059 ], [ 6.781993856000071, 45.777465312000018 ], [ 6.782717325000078, 45.795293681000075 ], [ 6.788091675000118, 45.81172678700004 ], [ 6.800804077000095, 45.826454570000053 ], [ 6.816203654000077, 45.832914124000084 ], [ 6.843355552194634, 45.838642859960729 ], [ 6.851996927951799, 45.836223274748718 ], [ 6.858564373527243, 45.833458034506428 ], [ 6.864440509042115, 45.826890588930986 ], [ 6.870662299587273, 45.828273209052128 ], [ 6.871699264678133, 45.832766724445854 ], [ 6.872736229768993, 45.83967982505159 ], [ 6.873461141000121, 45.844799704000124 ], [ 6.880385782000104, 45.845523173000018 ], [ 6.905087117000107, 45.845368144000062 ], [ 6.926377808000098, 45.84976064100006 ], [ 6.949012085000049, 45.857822164000069 ], [ 6.969165893000138, 45.869759420000022 ], [ 6.982808471000055, 45.885779114000044 ], [ 6.989112997000063, 45.899266663000034 ], [ 6.997174519000055, 45.911307272 ], [ 7.007716512000115, 45.920505677000094 ], [ 7.022082560000115, 45.925259909 ], [ 7.066937703000093, 45.890223288000058 ], [ 7.090192097000113, 45.880508118000122 ], [ 7.120887899000138, 45.876115621000039 ], [ 7.153547404000022, 45.87652903300004 ], [ 7.183726440000044, 45.880456442000096 ], [ 7.245428100000083, 45.898129782000112 ], [ 7.273540079000043, 45.910273743000019 ], [ 7.286665893000105, 45.913426005000062 ], [ 7.361803426000108, 45.907844951000058 ], [ 7.393842814000038, 45.915699768000096 ], [ 7.452960652000087, 45.945878805000078 ], [ 7.482726278000058, 45.954870504000027 ], [ 7.503706909000073, 45.956730855000032 ], [ 7.514662312000041, 45.966704407000051 ], [ 7.524377482000091, 45.978073223000038 ], [ 7.541120646000138, 45.984119365000069 ], [ 7.643026571000121, 45.966342672000039 ], [ 7.6587362060001, 45.960038147000049 ], [ 7.673722371000053, 45.950322978000102 ], [ 7.692532593000067, 45.931202698 ], [ 7.693979533000061, 45.928670553000117 ], [ 7.706278523, 45.925724997000103 ], [ 7.714650105000089, 45.92712026 ], [ 7.72219486500012, 45.929600728000068 ], [ 7.732013387000109, 45.930375875000081 ], [ 7.780072469000061, 45.918128561000046 ], [ 7.807564331000037, 45.918490296000058 ], [ 7.825444376000092, 45.914666239 ], [ 7.831232137000143, 45.914459534000045 ], [ 7.843737833000148, 45.919213766000055 ], [ 7.846114949000111, 45.922572733000052 ], [ 7.845288127000089, 45.927792053000061 ], [ 7.848388712000116, 45.938075663000077 ], [ 7.84962011600004, 45.939712062000112 ], [ 7.870201292731351, 45.940369630770249 ], [ 7.872917431422034, 45.959382601605029 ], [ 7.883781986184766, 45.973868674622011 ], [ 7.898204794000065, 45.981948954000089 ], [ 7.969104858000037, 45.993111064000018 ], [ 7.978716674000026, 45.99517812100008 ], [ 7.985848022000084, 45.999312236000023 ], [ 7.998353719000079, 46.010629375000079 ], [ 7.999077189000076, 46.01279978400008 ], [ 8.008792358000107, 46.027682597000094 ], [ 8.010652710000102, 46.029697978000073 ], [ 8.015923706000137, 46.058171692000101 ], [ 8.016027059000066, 46.069385478000058 ], [ 8.018197469000143, 46.080857646000069 ], [ 8.025328817000087, 46.091141256000057 ], [ 8.035354044000115, 46.096515605000022 ], [ 8.056024617000048, 46.09806589800003 ], [ 8.066876668000077, 46.100598043000033 ], [ 8.110594930000076, 46.12695302300007 ], [ 8.132299032000077, 46.159354147000087 ], [ 8.129508504000114, 46.196044413000052 ], [ 8.099949585000076, 46.235628561000013 ], [ 8.076591837000109, 46.249736226000053 ], [ 8.073077840000082, 46.253611959000082 ], [ 8.077315307000021, 46.262035218000094 ], [ 8.087340535000038, 46.271802063000038 ], [ 8.106874227000048, 46.285547995000073 ], [ 8.128474975000131, 46.292472636000056 ], [ 8.171883178000115, 46.299190573 ], [ 8.192553752000038, 46.309164124000077 ], [ 8.241749715000111, 46.354122620000012 ], [ 8.270068400000099, 46.364044495000101 ], [ 8.281540568000111, 46.370116475000046 ], [ 8.291462443000114, 46.378358866 ], [ 8.297456909000033, 46.387505596000082 ], [ 8.297043497000118, 46.397634176000039 ], [ 8.290428914000131, 46.401122335000068 ], [ 8.286604859000079, 46.405359803000024 ], [ 8.294976441000074, 46.41804636600007 ], [ 8.316267130000142, 46.433652649000024 ], [ 8.343448934000037, 46.443884583000099 ], [ 8.385906925000114, 46.450206018000088 ], [ 8.399156128000072, 46.45217865000005 ], [ 8.427888224000071, 46.448690491000022 ], [ 8.441634155000116, 46.434944560000062 ], [ 8.445768270000116, 46.412361959000023 ], [ 8.446285034000084, 46.38218292300003 ], [ 8.442874389000053, 46.353373312000102 ], [ 8.426647990000049, 46.30156768800002 ], [ 8.423237345000103, 46.275832825000052 ], [ 8.427164754000074, 46.251441549 ], [ 8.438120158000061, 46.235370178000053 ], [ 8.456516968000045, 46.224828187000085 ], [ 8.482665242000053, 46.217541809000082 ], [ 8.510260457000072, 46.207878317000066 ], [ 8.538682495000074, 46.187621155000059 ], [ 8.601831095000136, 46.12281890900006 ], [ 8.611546264000083, 46.119356588000116 ], [ 8.630873250000121, 46.114705709000063 ], [ 8.677485392000079, 46.095792135000025 ], [ 8.695055379000081, 46.095172018000042 ], [ 8.702186727000111, 46.097962545000101 ], [ 8.717689656000118, 46.107522685 ], [ 8.723890828000094, 46.109538066000042 ], [ 8.728983368000115, 46.108233103000074 ], [ 8.732159057000047, 46.107419332000077 ], [ 8.739497111000048, 46.09806589800003 ], [ 8.747145223000103, 46.094448548000045 ], [ 8.763164917000068, 46.092898255000037 ], [ 8.793860717000115, 46.093415019000062 ], [ 8.808950236000101, 46.089745993000079 ], [ 8.834375041000015, 46.066388245000027 ], [ 8.819595581000101, 46.042927145000064 ], [ 8.790966838000116, 46.01869089800006 ], [ 8.773396850000069, 45.990578919000129 ], [ 8.769572794000112, 45.985773010000017 ], [ 8.767919149000079, 45.983085836 ], [ 8.785075724000109, 45.982310690000091 ], [ 8.800371948000077, 45.978538310000047 ], [ 8.857732788000078, 45.957092591000034 ], [ 8.864450724000079, 45.953423564000033 ], [ 8.870961954000052, 45.947067363000102 ], [ 8.880780476000041, 45.931099345000078 ], [ 8.89814375800006, 45.909550273000022 ], [ 8.906515340000112, 45.896476135000071 ], [ 8.912096394000031, 45.88340199800011 ], [ 8.9137500410001, 45.866090393000022 ], [ 8.909719279000086, 45.853688050000031 ], [ 8.903724812000064, 45.841802470000104 ], [ 8.900004109000065, 45.826402893000122 ], [ 8.939588257000111, 45.834826152000019 ], [ 8.972351115, 45.824645895000046 ], [ 9.002426798000073, 45.820718486 ], [ 9.034362834000149, 45.848106995000123 ], [ 9.059270874000021, 45.881955058000116 ], [ 9.063094930000148, 45.898956604000048 ], [ 9.051726115000065, 45.915544739000055 ], [ 9.042321004000115, 45.919730530000081 ], [ 9.0205135490001, 45.922779440000014 ], [ 9.010798380000068, 45.926655172000054 ], [ 9.001703329000094, 45.936060283000117 ], [ 8.993435099000124, 45.954250387000073 ], [ 8.982686401000109, 45.961846822000027 ], [ 8.980515991000118, 45.96437896800002 ], [ 8.979792521000121, 45.966911113 ], [ 8.980515991000118, 45.96949493400011 ], [ 8.982686401000109, 45.971975403000087 ], [ 9.015552612000135, 45.993111064000018 ], [ 8.997775919000105, 46.027940979000093 ], [ 9.002116740000105, 46.039309795000079 ], [ 9.027748250000059, 46.053107402000123 ], [ 9.049659057000014, 46.057913310000018 ], [ 9.059167521000091, 46.061789043 ], [ 9.067125692000076, 46.071142477000123 ], [ 9.07032963100005, 46.083441467000071 ], [ 9.068159220000041, 46.105972392000083 ], [ 9.072086629000097, 46.118891500000089 ], [ 9.090586792000124, 46.138166809000026 ], [ 9.163243856000065, 46.172273255 ], [ 9.163788025000059, 46.172989267 ], [ 9.171098673000103, 46.182608541000022 ], [ 9.17574955200007, 46.194132385000032 ], [ 9.181330607000092, 46.204054260000035 ], [ 9.192182658000121, 46.209635315000057 ], [ 9.204171590000101, 46.213562724000028 ], [ 9.215747111000042, 46.221055807000042 ], [ 9.224842163000119, 46.231184387 ], [ 9.239724975000058, 46.266996155000029 ], [ 9.2689738360001, 46.309370830000049 ], [ 9.275175008000076, 46.331384990000046 ], [ 9.273831420000107, 46.344252421000121 ], [ 9.260395548000076, 46.379728292000053 ], [ 9.260292195000147, 46.394016826000055 ], [ 9.262876017000053, 46.406625875000074 ], [ 9.260912313000119, 46.416651103 ], [ 9.247579794000103, 46.423033142000023 ], [ 9.237967977000068, 46.43654653 ], [ 9.245822794000105, 46.461041158000072 ], [ 9.263186076000125, 46.485122376 ], [ 9.282306355000117, 46.497369691000031 ], [ 9.330985555000069, 46.501503805000041 ], [ 9.350829305000047, 46.497860616000068 ], [ 9.35155277500013, 46.485484111000105 ], [ 9.377080933000087, 46.468689270000041 ], [ 9.384625691000025, 46.466415508000026 ], [ 9.395477742000082, 46.469412740000038 ], [ 9.400335327000107, 46.47540720700006 ], [ 9.403849324000134, 46.482512716000102 ], [ 9.410670614000111, 46.488894756000022 ], [ 9.426793660000072, 46.497111308000072 ], [ 9.434648478000014, 46.498325704000095 ], [ 9.437852417000101, 46.492047018000093 ], [ 9.443846883000106, 46.39613555900003 ], [ 9.442399943000112, 46.380891012000077 ], [ 9.444363648000149, 46.375284119000057 ], [ 9.451598348000118, 46.370374858000034 ], [ 9.47371586100013, 46.36187408500011 ], [ 9.482604207000065, 46.356809794000029 ], [ 9.502551310000058, 46.320739645000046 ], [ 9.51526371300011, 46.308595683000036 ], [ 9.536451050000068, 46.298622132000034 ], [ 9.559705444000087, 46.292731018000026 ], [ 9.674323771000047, 46.291800842000086 ], [ 9.693133992000043, 46.297071839000111 ], [ 9.708430217000114, 46.311747946000096 ], [ 9.708843628000125, 46.319628601000048 ], [ 9.707293335000088, 46.330971579000035 ], [ 9.709257039000136, 46.342392070000116 ], [ 9.720109090000079, 46.35089284300004 ], [ 9.730857788000094, 46.350711975000067 ], [ 9.755249064000026, 46.340531718000122 ], [ 9.768064819000102, 46.338619690000101 ], [ 9.788838745000049, 46.343296408000057 ], [ 9.855397990000142, 46.366964213000088 ], [ 9.899012899000098, 46.372157695000013 ], [ 9.918443237000076, 46.371150004000029 ], [ 9.939010457000052, 46.367455140000047 ], [ 9.964021851000069, 46.356086325000049 ], [ 9.970636434000141, 46.339808249000029 ], [ 9.971049846000057, 46.320016175000049 ], [ 9.977561076000114, 46.298105367000076 ], [ 9.99223718200011, 46.284359436000059 ], [ 10.031717977000142, 46.260071513000057 ], [ 10.041846557000099, 46.243069967000039 ], [ 10.04267338000011, 46.220487366 ], [ 10.075746297000109, 46.220022278000059 ], [ 10.117914266000071, 46.231132711 ], [ 10.145819539000058, 46.243328349000095 ], [ 10.158945353000121, 46.262448629000104 ], [ 10.14612959800013, 46.280276998000048 ], [ 10.104891805000136, 46.309370830000049 ], [ 10.095796753000059, 46.320532939000074 ], [ 10.091765991000074, 46.328956198000057 ], [ 10.092386108000113, 46.338102926000047 ], [ 10.097450398000092, 46.351642151000036 ], [ 10.104995158000065, 46.361357321000085 ], [ 10.125975789000051, 46.37437978200002 ], [ 10.133210490000124, 46.381097717000031 ], [ 10.14075524900008, 46.402905172000075 ], [ 10.133417195000078, 46.414015605000074 ], [ 10.116157267000091, 46.418821514000072 ], [ 10.071405477000042, 46.42481598000002 ], [ 10.042053263000071, 46.432722474000073 ], [ 10.026343627000074, 46.446261699000033 ], [ 10.044016968000079, 46.466983948000077 ], [ 10.035335327000041, 46.471066386000089 ], [ 10.03047774300012, 46.47667327900011 ], [ 10.028100627000072, 46.483933818000068 ], [ 10.026860392000117, 46.493183900000091 ], [ 10.031201212000099, 46.503829245000091 ], [ 10.03140791900006, 46.525791728000044 ], [ 10.032751506000125, 46.532974752000101 ], [ 10.041329793000074, 46.541863098000121 ], [ 10.062930542000117, 46.55674591100005 ], [ 10.07119877100007, 46.564394023000048 ], [ 10.083497762000121, 46.597001851000087 ], [ 10.087838582000103, 46.604391582000105 ], [ 10.097450398000092, 46.608034770000089 ], [ 10.192121623000048, 46.626819154000103 ], [ 10.21785648600013, 46.626974182000041 ], [ 10.233772827000053, 46.617982484 ], [ 10.235736531000072, 46.606691183000024 ], [ 10.230258830000082, 46.586149801000047 ], [ 10.234703003000106, 46.575297750000104 ], [ 10.27594079500011, 46.565530905000045 ], [ 10.283795614000041, 46.560724996000047 ], [ 10.289066609000059, 46.555686544000068 ], [ 10.295371135000096, 46.551087341000127 ], [ 10.306636597000136, 46.547495829000056 ], [ 10.319452351000024, 46.546048889000062 ], [ 10.354282267000087, 46.548322653000085 ], [ 10.425905803000148, 46.535326030000036 ], [ 10.443992554000147, 46.537728984000083 ], [ 10.45183267900012, 46.54670157200006 ], [ 10.457945190000146, 46.553697001000032 ], [ 10.465903361000102, 46.578475851000078 ], [ 10.466626831000013, 46.60428822900009 ], [ 10.459082072000058, 46.623563538000028 ], [ 10.438204793000097, 46.635655823000022 ], [ 10.395623413000123, 46.638808085000065 ], [ 10.377536662000097, 46.653277486 ], [ 10.36916508000013, 46.672397766000088 ], [ 10.373919312000112, 46.681906230000081 ], [ 10.384771363000084, 46.689011739000094 ], [ 10.394383179000073, 46.700819804 ], [ 10.396553588000074, 46.715004984000061 ], [ 10.395623413000123, 46.726399639000064 ], [ 10.399654175000109, 46.735546367000055 ], [ 10.41660404400011, 46.74301361100008 ], [ 10.42869633, 46.755648499000088 ], [ 10.426215861000031, 46.769420268000047 ], [ 10.419084513000087, 46.783967183000087 ], [ 10.417224162000082, 46.798849997000033 ], [ 10.439031616000108, 46.816885071000044 ], [ 10.444922730000116, 46.823241272000061 ], [ 10.4485400800001, 46.83223297100001 ], [ 10.453811076000136, 46.864427389000056 ], [ 10.486263875000134, 46.846366475000067 ], [ 10.527708374000099, 46.843214213000081 ], [ 10.629407593000053, 46.862412008000021 ], [ 10.647080932000051, 46.863755596 ], [ 10.662480509000119, 46.860965068000027 ], [ 10.738961629000102, 46.829545797 ], [ 10.748676798000133, 46.819443055000036 ], [ 10.743819213000023, 46.812518413000063 ], [ 10.7215983480001, 46.800141907000082 ], [ 10.716947469000047, 46.79520680800006 ], [ 10.722941935000051, 46.786447652000064 ], [ 10.733690633000066, 46.786189271000111 ], [ 10.754774618000113, 46.790762634000046 ], [ 10.766350138000064, 46.788101299000019 ], [ 10.795082235000052, 46.776887513000062 ], [ 10.804900757000041, 46.776629130000103 ], [ 10.823917684000094, 46.780349833000017 ], [ 10.834149617000065, 46.780246480000088 ], [ 10.843141317000118, 46.777042542000018 ], [ 10.860194539000133, 46.766991476000086 ], [ 10.870426473000123, 46.764071757000082 ], [ 10.880348348000041, 46.764588522000039 ], [ 10.913731323000093, 46.772339986000034 ], [ 10.93088789900014, 46.773993633000075 ], [ 10.965717814000129, 46.771642354000065 ], [ 10.98266768400012, 46.767740784000082 ], [ 10.996930379000105, 46.769110210000051 ], [ 11.010883016000093, 46.779212952000094 ], [ 11.033310588000091, 46.805567932000073 ], [ 11.037444702000101, 46.808255107 ], [ 11.048503458000113, 46.811691590000024 ], [ 11.052844279000084, 46.81492136700011 ], [ 11.054601277000074, 46.819933980000073 ], [ 11.053464396000066, 46.830320943000103 ], [ 11.054291219000078, 46.834144999000031 ], [ 11.073101441000091, 46.864969992000013 ], [ 11.083643432000144, 46.900135804000072 ], [ 11.091911662000115, 46.912434795000095 ], [ 11.1566105550001, 46.956514791000089 ], [ 11.174490601000059, 46.963852845000062 ], [ 11.243737020000054, 46.979252422000073 ], [ 11.313810262000089, 46.987262268000038 ], [ 11.349467001000079, 46.981939596000089 ], [ 11.380576212000051, 46.971552633000059 ], [ 11.411168661000147, 46.970493266000076 ], [ 11.445171753000096, 46.9929983520001 ], [ 11.445275106000111, 46.993101705000029 ], [ 11.452923217000091, 47.00087900900003 ], [ 11.461811564000101, 47.005504049000095 ], [ 11.471836792000119, 47.007080181000035 ], [ 11.48940677900012, 47.004212138000057 ], [ 11.495918009000093, 47.001602478000038 ], [ 11.501705770000058, 46.997855937000011 ], [ 11.506976766000093, 46.9929983520001 ], [ 11.515348348000146, 46.989484355000045 ], [ 11.524443400000024, 46.988347473000047 ], [ 11.533848511000087, 46.989536032000061 ], [ 11.543253621000133, 46.9929983520001 ], [ 11.543356974000062, 46.9929983520001 ], [ 11.543563680000119, 46.993101705000029 ], [ 11.543667033000048, 46.993101705000029 ], [ 11.572709188000147, 46.998915304000022 ], [ 11.596480347000096, 47.000439758000098 ], [ 11.647950073000089, 46.99325673500006 ], [ 11.648466838000047, 46.99325673500006 ], [ 11.649707072000069, 46.9929983520001 ], [ 11.65725183100011, 46.992533264000073 ], [ 11.664796590000066, 46.99325673500006 ], [ 11.683813517000118, 46.991913147 ], [ 11.716162964000119, 46.975480042000029 ], [ 11.734869832000101, 46.970622457000033 ], [ 11.746445353000041, 46.972456971000028 ], [ 11.766082397000076, 46.983438213000099 ], [ 11.777141154000077, 46.988295797000021 ], [ 11.822513061000109, 46.99325673500006 ], [ 11.85703291900009, 47.012015279000067 ], [ 11.899510946000134, 47.027724915000036 ], [ 11.943642618000126, 47.038163555000054 ], [ 12.014956096000105, 47.040488994 ], [ 12.116241903000116, 47.076559143000097 ], [ 12.133146314000101, 47.078831606000094 ], [ 12.180630737000115, 47.085214945000061 ], [ 12.20419519100011, 47.079685567000055 ], [ 12.203896989000043, 47.067011988 ], [ 12.203575073000138, 47.053330588000094 ], [ 12.182284383000081, 47.033616028000026 ], [ 12.121719604000106, 47.010516663000047 ], [ 12.111177612000063, 46.9929983520001 ], [ 12.117792196000039, 46.983076477000097 ], [ 12.122133015000117, 46.971655986000101 ], [ 12.128230835000096, 46.948582459000122 ], [ 12.134742065000069, 46.937446188000095 ], [ 12.141666708000031, 46.927989400000044 ], [ 12.141563355000102, 46.918842672000054 ], [ 12.126887247000127, 46.908869120000034 ], [ 12.137429240000074, 46.905923564000048 ], [ 12.16099369300008, 46.90302968400006 ], [ 12.172155802000105, 46.899179789000087 ], [ 12.183524617000103, 46.891221619000035 ], [ 12.189002319000082, 46.884942932000044 ], [ 12.195100138000043, 46.880085348000122 ], [ 12.208742716000074, 46.876623027000065 ], [ 12.250807332000079, 46.875615337000099 ], [ 12.266620320000072, 46.868148092000084 ], [ 12.275818726000097, 46.846288961000127 ], [ 12.276128784000065, 46.833989970000076 ], [ 12.27333825700012, 46.826755270000021 ], [ 12.269617554000092, 46.819830628000048 ], [ 12.266930380000076, 46.808255107 ], [ 12.266723673000115, 46.795335999000073 ], [ 12.269100789000049, 46.788566387000046 ], [ 12.274785197000114, 46.784638977000085 ], [ 12.284397013000103, 46.779988099000022 ], [ 12.305274292000092, 46.774458720000027 ], [ 12.326048218000039, 46.772495016000093 ], [ 12.342688029000044, 46.765131124000092 ], [ 12.35147302300004, 46.743246155000051 ], [ 12.370386596000088, 46.71115509000002 ], [ 12.405009806000095, 46.690122783 ], [ 12.445627482000106, 46.678702292000096 ], [ 12.469632190000141, 46.675798865000033 ], [ 12.499887736000062, 46.672139385000023 ], [ 12.530790242000052, 46.657669984000094 ], [ 12.547326701000145, 46.652192281000097 ], [ 12.562002807000056, 46.651210429000045 ], [ 12.620190471000058, 46.656481425000052 ], [ 12.669593139000085, 46.653019105000013 ], [ 12.671367650000093, 46.65246576300008 ], [ 12.679204956000092, 46.650021871000021 ], [ 12.697395061000122, 46.640539246000046 ], [ 12.706593465000111, 46.637748719000072 ], [ 12.715998576000089, 46.637955424000026 ], [ 12.73201827000014, 46.642270407000083 ], [ 12.739873088000081, 46.642993876 ], [ 12.74849950400008, 46.640996041000093 ], [ 12.773566122000119, 46.63519073500008 ], [ 12.830410197000077, 46.609636740000028 ], [ 13.064504435000089, 46.59803538000007 ], [ 13.14646325700005, 46.584961243000024 ], [ 13.210025269000113, 46.5580119830001 ], [ 13.231109253000056, 46.552172547000012 ], [ 13.271416870000081, 46.550777283000045 ], [ 13.373322794000075, 46.565789286000026 ], [ 13.417041056000073, 46.560492452000076 ], [ 13.478019246000116, 46.563567200000122 ], [ 13.484943889000107, 46.561732686000099 ], [ 13.49910323000006, 46.550622254000089 ], [ 13.506751343000133, 46.546927389000089 ], [ 13.549229370000091, 46.545842184 ], [ 13.670255574000066, 46.51871205700003 ], [ 13.685345093000052, 46.517626851000031 ], [ 13.700951375000102, 46.519745586000013 ], [ 13.701054728000116, 46.511890768000072 ], [ 13.699194376000037, 46.504836935000057 ], [ 13.695473673, 46.498635762000063 ], [ 13.689892619000091, 46.493338928000028 ], [ 13.688445678000107, 46.46775909500009 ], [ 13.685852877000059, 46.464047231000094 ], [ 13.67749027500011, 46.452075297000121 ], [ 13.658783407000044, 46.445124817000035 ], [ 13.634082072000126, 46.445719097000094 ], [ 13.600182332000117, 46.442644349000048 ], [ 13.575687703000057, 46.426676331000024 ], [ 13.554397013000084, 46.405954081000075 ], [ 13.530005737000067, 46.388332418000104 ], [ 13.483703654000067, 46.371150004000029 ], [ 13.45972579000005, 46.359031881000035 ], [ 13.44732344500008, 46.354846090000095 ], [ 13.434094279000107, 46.353864238000043 ], [ 13.423242229000039, 46.344846700000076 ], [ 13.409806355000086, 46.323607687000035 ], [ 13.395637648000076, 46.306727928000058 ], [ 13.391306193000077, 46.30156768800002 ], [ 13.365261271000094, 46.290302226000065 ], [ 13.373012736000106, 46.280276998000048 ], [ 13.37859379000011, 46.26839141900011 ], [ 13.384691610000061, 46.243328349000095 ], [ 13.384794963000104, 46.24322499600008 ], [ 13.384898316000118, 46.243121644000055 ], [ 13.39812748200012, 46.230512594000018 ], [ 13.40164148000008, 46.216663310000072 ], [ 13.41011641500009, 46.20798167 ], [ 13.437401570000105, 46.210927226000095 ], [ 13.422828816000049, 46.228600566000111 ], [ 13.438331746000131, 46.224879863000083 ], [ 13.468304077000084, 46.22343292300009 ], [ 13.482256713000083, 46.217903545000084 ], [ 13.510161988000078, 46.213976136000028 ], [ 13.528972208000084, 46.204829407000048 ], [ 13.559047892000137, 46.184107158000117 ], [ 13.584472697000137, 46.181316631000058 ], [ 13.613928264000066, 46.183538717000047 ], [ 13.627366324, 46.181733163000061 ], [ 13.637389363000125, 46.18038645500009 ], [ 13.64107145100013, 46.171405145000037 ], [ 13.645037475, 46.16173126300005 ], [ 13.616408732000139, 46.125040995000077 ], [ 13.522585297000091, 46.07529802300003 ], [ 13.505097697000082, 46.066026510000128 ], [ 13.482256713000083, 46.044839173000085 ], [ 13.490318237000082, 46.038948059000077 ], [ 13.492798706000144, 46.032488505000018 ], [ 13.490008179000085, 46.025563863000045 ], [ 13.482256713000083, 46.0184325150001 ], [ 13.47708907000009, 46.016055400000042 ], [ 13.461792846000037, 46.006391907000122 ], [ 13.474815307000142, 45.995746562000036 ], [ 13.47946618600011, 45.993111064000018 ], [ 13.480396362000079, 45.992284241000092 ], [ 13.481223186000108, 45.991354065000039 ], [ 13.481843302000073, 45.990372213000072 ], [ 13.482256713000083, 45.989235332000064 ], [ 13.509438517000149, 45.967427877000048 ], [ 13.539410848000102, 45.969029847000073 ], [ 13.571656942000061, 45.979830221000029 ], [ 13.600734872000089, 45.984574053000031 ], [ 13.605866740000067, 45.985411276000022 ], [ 13.622816610000086, 45.966394349000055 ], [ 13.615325176000084, 45.945912448000016 ], [ 13.608243856000115, 45.926551819000039 ], [ 13.599306242000097, 45.912327499000028 ], [ 13.569279826000127, 45.864540101000088 ], [ 13.56597253400011, 45.830330303 ], [ 13.574172202000085, 45.819028057000097 ], [ 13.581268758000078, 45.809246318000064 ], [ 13.609174032000055, 45.798600973000063 ], [ 13.643590535000016, 45.795655416000059 ], [ 13.660333699000148, 45.792038066000075 ], [ 13.699908416000142, 45.770523736000072 ], [ 13.70947798600011, 45.765321351000026 ], [ 13.778724406000038, 45.743410543000081 ], [ 13.858409465000079, 45.649359436000012 ], [ 13.869158163000094, 45.641142884 ], [ 13.884144327000087, 45.635148417000053 ], [ 13.893136027000111, 45.634683329000026 ], [ 13.893640530000113, 45.633758406000069 ], [ 13.894686320000034, 45.631841125000065 ], [ 13.887038208000149, 45.618766988000104 ], [ 13.867925706000079, 45.602169289000116 ], [ 13.84776411900009, 45.584660543000055 ], [ 13.800531860000149, 45.581249899000014 ], [ 13.76105106600005, 45.596236064 ], [ 13.711761915000068, 45.59320709800005 ], [ 13.718760613000086, 45.600653387000079 ], [ 13.723608671551661, 45.60595162254787 ], [ 13.719289302859465, 45.605872154576673 ], [ 13.712500000000318, 45.598333333333642 ], [ 13.63000000000045, 45.63000000000028 ], [ 13.387006679914464, 45.564946671152086 ], [ 13.312500000474699, 45.545000000449761 ], [ 13.211666666548979, 45.453333333472358 ], [ 13.21111111018962, 45.453611109964868 ], [ 13.18527778044529, 45.428611110014799 ], [ 13.098611110414538, 45.335277780045658 ], [ 13.061111110489492, 45.280277780695201 ], [ 13.016944440733482, 45.205277779945561 ], [ 13.002777780270492, 45.184444440658467 ], [ 13.072777780670151, 44.974444440358752 ], [ 13.101944440383704, 44.770277780095626 ], [ 13.109444440008986, 44.736944439934121 ], [ 13.129444440508621, 44.502777780270435 ], [ 13.178611110614327, 44.476111109939836 ], [ 13.192777780070571, 44.466944439934025 ], [ 13.465277780245515, 44.296111109939943 ], [ 13.583634248271547, 44.234851230916938 ], [ 13.631666666983733, 44.208333332917505 ], [ 13.666944440333737, 44.179444440508576 ], [ 13.725278428446096, 44.151114777974605 ], [ 14.015000000150337, 44.008333333317296 ], [ 14.080277780095571, 43.960277780095566 ], [ 14.170848772384252, 43.900540118681221 ], [ 14.354444440758357, 43.716944440533553 ], [ 14.391944440683574, 43.671111110289701 ], [ 14.408333333117298, 43.640000000300347 ], [ 14.416405210891153, 43.631503286830068 ], [ 14.437777779920737, 43.599444440408661 ], [ 14.501944440283808, 43.53194444018385 ], [ 14.53027778009556, 43.498611109914862 ], [ 14.537441126688663, 43.488625838604612 ], [ 14.581666666883791, 43.420000000200162 ], [ 14.722471068990806, 43.265242008362293 ], [ 14.76694443993398, 43.214444440458749 ], [ 14.797777779920636, 43.174444440358684 ], [ 14.859867989745593, 43.113267323912417 ], [ 14.908333333017367, 43.063333333766764 ], [ 14.963611110464342, 43.014444439958993 ], [ 15.010717265492618, 42.987209181034395 ], [ 15.15777777992065, 42.796944440034054 ], [ 15.362777779870612, 42.612777780270392 ], [ 15.746111110339541, 42.492777779970652 ], [ 15.992222220079498, 42.436388890135277 ], [ 16.227222220329281, 42.193333330468874 ], [ 16.575000000249929, 42.281388890085395 ], [ 16.61777778042034, 42.266388889935456 ], [ 16.943611110464531, 42.117222220029475 ], [ 17.215000000049997, 41.991388890485041 ], [ 17.311666669880879, 41.912222220079514 ], [ 17.617500000324867, 41.834722220054573 ], [ 17.997499999925139, 41.638888890110252 ], [ 18.018298590307722, 41.629702200296379 ], [ 18.216666666633728, 41.499999999900353 ], [ 18.242160045450248, 41.485035267564001 ], [ 18.321493067051847, 41.441751384918803 ], [ 18.346669569745302, 41.41298591906525 ], [ 18.448180247121172, 41.296845899818891 ], [ 18.46194444478067, 41.277499999625604 ], [ 18.542777777472793, 41.193611111463895 ], [ 18.576944444730827, 41.133611110864535 ], [ 18.595000000350183, 41.108055555619899 ], [ 18.658611110814547, 40.917499999625704 ], [ 18.659444444206201, 40.885000000050468 ], [ 18.671111110789582, 40.847222222028165 ], [ 18.711111110889476, 40.733055555470003 ], [ 18.739722222503076, 40.669444444106205 ], [ 18.745277778147397, 40.646111110939273 ], [ 18.759722222103335, 40.59388888896143 ], [ 18.795833333342216, 40.512222221978334 ], [ 18.851388888886561, 40.388055555619644 ], [ 18.859722221903439, 40.358333333416908 ], [ 18.879999999600784, 40.313888889161376 ], [ 18.951388888686665, 40.203611111463886 ], [ 18.977222222028502, 40.131944444281146 ], [ 18.995238279423404, 40.083579770707672 ], [ 18.95758056000011, 39.960683330000052 ], [ 18.934247220000032, 39.872347220000108 ], [ 18.914247220000107, 39.81567777999993 ], [ 18.925919440000087, 39.287333330000138 ], [ 18.899255560000086, 39.03233056 ], [ 18.730922220000025, 38.49898332999993 ], [ 18.475925000000132, 37.865636109999969 ], [ 18.282591669999931, 37.353961110000057 ], [ 18.317594440000107, 36.990619440000103 ], [ 18.31926389, 36.905619440000123 ], [ 18.309263890000068, 36.74895 ], [ 18.299266670000122, 36.440611109999963 ], [ 18.294266670000127, 36.400608330000011 ], [ 18.260936109999989, 36.182272220000016 ], [ 18.260936109999989, 36.148938889999954 ], [ 18.344425, 35.568930560000126 ], [ 18.304517058515898, 35.425145239061578 ], [ 18.206440508023547, 35.374439586118342 ], [ 17.937436214909837, 35.24761992601924 ], [ 17.763374613747771, 35.17260372937892 ], [ 17.541841667059771, 35.08044400388809 ], [ 17.4972593063722, 35.064406149224737 ], [ 17.081205915820931, 35.254897717555934 ], [ 17.013781307561658, 35.28558298686562 ], [ 16.96932604086453, 35.30567133136725 ], [ 16.176482993895547, 35.661857087135161 ], [ 15.576346941158761, 35.935695963798025 ], [ 15.509295663964053, 35.965228412861165 ], [ 15.051597237922692, 36.160362240225538 ], [ 14.984461670869905, 36.189416992800432 ], [ 14.929995370590348, 36.213594638282188 ], [ 14.872927775896585, 36.237460264879644 ], [ 14.748984627039306, 36.289659472307051 ], [ 14.669371074515823, 36.323326672288374 ], [ 14.609399514976076, 36.348702901817774 ], [ 14.524491015048682, 36.381759985535268 ], [ 14.470382559507868, 36.401982984627296 ], [ 14.451592675961535, 36.4087217099393 ], [ 14.413925522645116, 36.422043360213195 ], [ 14.386636320010609, 36.430792633273768 ], [ 14.32388555137743, 36.444841264013348 ], [ 14.202216087403031, 36.473963365916859 ], [ 14.15270567392804, 36.486317904148223 ], [ 14.076985776672814, 36.49761418404762 ], [ 14.005150518981736, 36.505814453374683 ], [ 13.930938052749354, 36.510936832569087 ], [ 13.873372529519031, 36.512308641330947 ], [ 13.834356443495551, 36.512399628440392 ], [ 13.774872598891591, 36.511300276486907 ], [ 13.693010770031435, 36.506537328435286 ], [ 13.608589981442947, 36.498474143667067 ], [ 13.521605316532487, 36.487107037659825 ], [ 13.455468121956642, 36.476269238435009 ], [ 13.416968867319895, 36.467544122963318 ], [ 13.447239916089757, 36.337132199191899 ], [ 13.472819941887394, 36.228212632507223 ], [ 13.520814722521777, 36.020919702182823 ], [ 13.531627865933729, 35.965719498456451 ], [ 13.552927980342361, 35.862001007041101 ], [ 13.579012720061314, 35.73478059554833 ], [ 13.58021319628233, 35.728937996991192 ], [ 13.601451407656612, 35.626487349112324 ], [ 13.60741648758119, 35.589690549779277 ], [ 13.612895898527313, 35.547048792967644 ], [ 13.61703387171633, 35.503531189113517 ], [ 13.618876977391153, 35.476424211608389 ], [ 13.617897523052704, 35.43722833941672 ], [ 13.616064348591237, 35.401549275978596 ], [ 13.608233703323208, 35.283512203425801 ], [ 13.609999999700619, 35.24999999980048 ], [ 13.191666666783817, 35.659999999700574 ], [ 13.095833333042151, 35.725833333141964 ], [ 13.069722222502946, 35.700555555994299 ], [ 13.049722222003311, 35.68583333304241 ], [ 13.02833333371666, 35.672499999675608 ], [ 13.009166666609019, 35.662777777972508 ], [ 12.981111111189364, 35.651388888586496 ], [ 12.955833333142095, 35.643888888961555 ], [ 12.925277777547933, 35.637499999925296 ], [ 12.8986111108145, 35.634444444455823 ], [ 12.848611110914419, 35.633333332967311 ], [ 12.863333332967613, 35.610277777897579 ], [ 12.876388889136592, 35.586944444730818 ], [ 12.885000000250329, 35.566111110839358 ], [ 12.889444444405967, 35.551666666883591 ], [ 12.893888888561776, 35.529999999600534 ], [ 12.895555555345027, 35.511666666783697 ], [ 12.895555555345027, 35.496944444730843 ], [ 12.891944444580872, 35.46416666705835 ], [ 12.888333332917455, 35.449722222203206 ], [ 12.879444444606008, 35.425000000350053 ], [ 12.872777777473004, 35.411388888886506 ], [ 12.856388888636729, 35.385277777447982 ], [ 12.849166667108534, 35.37583333294225 ], [ 12.836111110939441, 35.360833333691573 ], [ 12.812499999675936, 35.338888889211319 ], [ 12.795833333641667, 35.326388889236114 ], [ 12.766944444830528, 35.308888888911554 ], [ 12.743611110764562, 35.29805555571977 ], [ 12.715000000050338, 35.287499999725696 ], [ 12.70666666703346, 35.284722222352968 ], [ 12.667500000325163, 35.276111111239231 ], [ 12.645277777747708, 35.273333332967297 ], [ 12.613888888761551, 35.271944444280905 ], [ 12.609444444605742, 35.271944444280905 ], [ 12.586944444830806, 35.273055555769758 ], [ 12.564722222253124, 35.275555555944436 ], [ 12.525555555544884, 35.283611110864456 ], [ 12.486388888836586, 35.296666667033435 ], [ 12.460277777397835, 35.301388889286272 ], [ 12.426388889136547, 35.311388889086402 ], [ 12.39083333319212, 35.326944444530682 ], [ 12.372500000375055, 35.337777777722465 ], [ 12.352222221778732, 35.35222222257795 ], [ 12.32111111088966, 35.349722222402931 ], [ 12.285277777747524, 35.351111111089438 ], [ 12.249999999900808, 35.356666666733759 ], [ 12.22861111071461, 35.36222222237808 ], [ 12.195833333042287, 35.374444444256085 ], [ 12.173055555170095, 35.386111110839295 ], [ 12.14861111141397, 35.40222222247786 ], [ 12.126666666933602, 35.420833333391897 ], [ 12.103333333766784, 35.447777778222417 ], [ 12.087222222128389, 35.47416666685848 ], [ 12.083888888561887, 35.480833333092107 ], [ 12.075000000250441, 35.505555555844637 ], [ 12.069999999900688, 35.530833332992358 ], [ 12.068888889311381, 35.545555555944532 ], [ 12.069722221803659, 35.567500000425127 ], [ 12.071944444780627, 35.582222222477753 ], [ 12.078888889111511, 35.607222222427993 ], [ 12.091666666284027, 35.634444444455823 ], [ 12.097777778122463, 35.644444444256123 ], [ 12.10666666643391, 35.657222222328187 ], [ 12.119444444505802, 35.672222222477899 ], [ 12.13694444483076, 35.688888888511713 ], [ 12.156666666334161, 35.703888888661425 ], [ 12.170833333092446, 35.712777777872759 ], [ 12.193611110964298, 35.724722222552828 ], [ 12.217777777522883, 35.734444444256098 ], [ 12.247499999725562, 35.742777778172183 ], [ 12.26500000005052, 35.746388888936224 ], [ 12.286944444530945, 35.749166666308781 ], [ 12.322222222377945, 35.750277777797635 ], [ 12.357777777423223, 35.747222222328162 ], [ 12.39694444413152, 35.738611111214084 ], [ 12.421666666883482, 35.730000000100119 ], [ 12.446944444031203, 35.734444444256098 ], [ 12.482499999975516, 35.739166666508652 ], [ 12.513888888961446, 35.741666666683841 ], [ 12.518888889311199, 35.742222221978409 ], [ 12.557499999825382, 35.74388888876166 ], [ 12.588888888811539, 35.74388888876166 ], [ 12.620277777797867, 35.741111111389102 ], [ 12.608888889311174, 35.760277777597764 ], [ 12.606666666333979, 35.763611111164266 ], [ 12.590277777497761, 35.793611111464031 ], [ 12.579444444306148, 35.825277777647727 ], [ 12.575833333542164, 35.843333333267196 ], [ 12.573888888661827, 35.865277777747622 ], [ 12.575277777347878, 35.89444444465579 ], [ 12.580277777697802, 35.919722221803511 ], [ 12.58861111071451, 35.944444444555984 ], [ 12.60444444425616, 35.974722222053117 ], [ 12.615277777448114, 35.990555555594653 ], [ 12.627777777422807, 36.005833332942359 ], [ 12.641666666983383, 36.019999999700474 ], [ 12.656944444331089, 36.033333333067105 ], [ 12.660277777897591, 36.036111111339039 ], [ 12.676944444830951, 36.048055555120129 ], [ 12.694999999550703, 36.059166666409112 ], [ 12.634999999850379, 36.145000000349967 ], [ 12.540000000400028, 36.253333333167291 ], [ 12.503333332967372, 36.36166666688365 ], [ 12.489999999600741, 36.383333333266819 ], [ 12.353333333267415, 36.583333333766802 ], [ 12.295833333741598, 36.662777777772646 ], [ 12.291388888686583, 36.646666667033458 ], [ 12.282500000375308, 36.634166667058253 ], [ 12.264722221953662, 36.613333333167191 ], [ 12.241388888786673, 36.591388888686765 ], [ 12.218333333716771, 36.573888889261184 ], [ 12.197222222627829, 36.560555555894723 ], [ 12.163055555369908, 36.543333333666681 ], [ 12.14694444463089, 36.536666666533677 ], [ 12.126388888836686, 36.529444444106105 ], [ 12.100833333591765, 36.522499999775391 ], [ 12.074722222153241, 36.517222222228327 ], [ 12.043611111264113, 36.513333333367257 ], [ 12.021111111488949, 36.512222221878403 ], [ 12.003333333067303, 36.512222221878403 ], [ 11.998888888911495, 36.512222221878403 ], [ 11.963055555769699, 36.515000000150337 ], [ 11.954166666558876, 36.516111110739473 ], [ 11.940833333192245, 36.518333333716839 ], [ 11.902222221778516, 36.527222222028456 ], [ 11.877222221828504, 36.535555555944541 ], [ 11.849444444505764, 36.547222222527751 ], [ 11.826666666633741, 36.558888889111472 ], [ 11.805277777448225, 36.572222222477933 ], [ 11.785277777847455, 36.586944444530957 ], [ 11.766944444131241, 36.602777778072152 ], [ 11.753055555469814, 36.616944444830722 ], [ 11.738055555320102, 36.634999999550871 ], [ 11.725000000050386, 36.653888888561823 ], [ 11.713888888761517, 36.673888889061288 ], [ 11.694444444455996, 36.693611111463895 ], [ 11.689444444106243, 36.699722222403125 ], [ 11.672499999975457, 36.725277777647534 ], [ 11.663055555469839, 36.745555555345049 ], [ 11.656111111139523, 36.766388889235998 ], [ 11.651944444181026, 36.79138888918618 ], [ 11.652222222278454, 36.813055555569861 ], [ 11.655833333042267, 36.834444444755547 ], [ 11.660555555295332, 36.851944444181129 ], [ 11.668333333017472, 36.872777778072361 ], [ 11.684166666558667, 36.902777777472636 ], [ 11.697222221828383, 36.921666666483759 ], [ 11.7150000002502, 36.942500000374821 ], [ 11.729166667008656, 36.956388889036418 ], [ 11.75111111148891, 36.974444444655717 ], [ 11.77888888881165, 36.992777777472782 ], [ 11.805277777448225, 37.006666667033357 ], [ 11.83305555566983, 37.018333333616908 ], [ 11.853888888661913, 37.025277777947394 ], [ 11.87944444480587, 37.031944444181079 ], [ 11.901111111189209, 37.036111111139178 ], [ 11.905555555345018, 37.036666666433746 ], [ 11.932222222078167, 37.040000000000248 ], [ 11.973888888961653, 37.041111111489101 ], [ 11.991666666483923, 37.040000000000248 ], [ 12.02277777737288, 37.036666666433746 ], [ 12.02277777737288, 37.050277777897293 ], [ 12.014999999650513, 37.063333333167179 ], [ 11.946666666933481, 37.139999999800523 ], [ 11.878333333317187, 37.236666666933331 ], [ 11.803333333466924, 37.343333332967404 ], [ 11.758333333017447, 37.373333333266999 ], [ 11.700000000100317, 37.408333333017538 ], [ 11.316666666933486, 37.68666666693332 ], [ 11.171666666683905, 37.790000000300154 ], [ 10.878333333517048, 38.058333333516941 ], [ 10.694999999950426, 38.409999999600757 ], [ 9.903333333666751, 38.241666667083393 ], [ 9.673333333766948, 38.22500000015026 ], [ 9.563333333267337, 38.250000000100442 ], [ 8.813333332967318, 38.218333333017256 ], [ 8.541666667083348, 38.175000000250179 ], [ 8.371666666883698, 38.129999999800532 ], [ 8.159999999800732, 38.081666666683532 ], [ 7.816666666711455, 38.010000000266757 ], [ 7.812045318736921, 38.009980300750442 ], [ 7.476029583898708, 38.13012471238585 ], [ 7.44248390211078, 38.142423580783884 ], [ 7.37549760632993, 38.168238433057638 ], [ 7.308651416829775, 38.195674627182598 ], [ 7.060117028978084, 38.301513148912989 ], [ 6.977569564184535, 38.335076510472902 ], [ 6.892501627048773, 38.367619011108786 ], [ 6.821986848414838, 38.393087515576667 ], [ 6.739812639142485, 38.440291435101813 ], [ 6.668799065924588, 38.478962170667728 ], [ 6.478574996439193, 38.578875851739497 ], [ 6.431816185568891, 38.603780033422083 ], [ 6.066551114542563, 38.800874592388766 ], [ 6.096666666933402, 38.91666666663366 ], [ 6.216666666333822, 39.34666666703356 ], [ 6.300000000100283, 39.625000000050363 ], [ 6.300000000100283, 40.02833333371666 ], [ 6.198333333516928, 40.358333333416908 ], [ 6.168333333217163, 40.454999999650681 ], [ 6.129999999900519, 40.595000000450113 ], [ 5.959999999700699, 41.108333333716644 ], [ 5.943333333666942, 41.155000000050336 ], [ 5.889722222116461, 41.24333333147581 ], [ 5.90562909573174, 41.252313761112134 ], [ 5.911589427033164, 41.255678742639191 ], [ 6.204110593387782, 41.42082532111084 ], [ 6.369444444375517, 41.514166668461428 ], [ 6.930277777987726, 41.815833331739043 ], [ 7.1357999243113, 41.772276479036975 ], [ 7.689166666737776, 41.654999999975303 ], [ 7.986944444287985, 41.583055557811178 ], [ 8.139542767365413, 41.537169347676127 ], [ 8.304722222088117, 41.487499999962779 ], [ 8.556666666950093, 41.336111110425918 ], [ 8.65999999970029, 41.264722219754788 ], [ 8.774999999825411, 41.250000000200203 ], [ 8.812777777725501, 41.257777778849629 ], [ 9.134858924126092, 41.318029169562351 ], [ 9.270000000050402, 41.291944442214458 ] ] ] } } +] +}